# Windsurf and other MCP agents

Source: https://pushary.com/docs/agents/guides/windsurf-other
Last updated: 2026-10-24

> Connect Windsurf or any MCP client to Pushary with one config block, so your agent can send push notifications and ask you questions on your phone.

Windsurf and other MCP clients connect to Pushary with one config block: the server URL and your API key. MCP (Model Context Protocol) is the standard way AI apps call outside tools. Your agent then gets Pushary's notification and question tools, so it can tell you when a task finishes and ask you questions you answer on your phone.

```json
{
  "mcpServers": {
    "pushary": {
      "url": "https://pushary.com/api/mcp/mcp",
      "headers": {
        "Authorization": "Bearer pk_xxx.xxx"
      }
    }
  }
}
```

The agent chooses when to ask. Pushary cannot hold an action in these clients until you approve it. For enforced approvals, use an agent with hooks, such as Claude Code or Codex. [Supported agents](/docs/agents/supported-agents) shows which ones Pushary can enforce.

## Connect over MCP [#connect-over-mcp]

<Steps>
  <Step>
    ### Get an API key [#get-an-api-key]

    Create one in [Settings > API keys](https://pushary.com/dashboard/agent/settings). It looks like `pk_` followed by 24 hex characters, a dot, then a 48 hex character secret. Pushary shows it once, so copy it right away. See [Get your API key](/docs/agents/api-key).
  </Step>

  <Step>
    ### Add the config block [#add-the-config-block]

    Paste the block above into your client's MCP configuration file. Each client keeps it in a different place. Replace `pk_xxx.xxx` with your key.
  </Step>

  <Step>
    ### Check the connection [#check-the-connection]

    Open your client's MCP settings. Pushary shows as connected, with its tools listed.
  </Step>

  <Step>
    ### Send a test notification [#send-a-test-notification]

    Ask your agent: "Use Pushary to send me a test notification." Your phone shows it.
  </Step>
</Steps>

Prefer the terminal? `npx pushary@latest setup --agents custom` signs you in, saves a key, and prints the server URL and header to use.

## Clients that only support stdio [#clients-that-only-support-stdio]

Some clients cannot connect to an HTTP MCP server and only start local commands (stdio). For those, use the `mcp-remote` bridge, which runs locally and forwards to Pushary:

```json
{
  "mcpServers": {
    "pushary": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://pushary.com/api/mcp/mcp",
        "--header",
        "Authorization:Bearer pk_xxx.xxx"
      ]
    }
  }
}
```

## Teach your agent when to ask [#teach-your-agent-when-to-ask]

The tools alone do not tell your agent when to use them. Install the Pushary skill, a short instruction file, so your agent sends notifications and asks questions at the right moments:

```bash
npx skills add Pushary/pushary-skill
```

## Tools your agent gets [#tools-your-agent-gets]

The main tools are `send_notification`, `ask_user`, `wait_for_answer` and `cancel_question`. The full list depends on your key. See the [tools reference](/docs/agents/reference/tools).

A question blocks for up to about 55 seconds per call. While pending, the agent keeps checking with `wait_for_answer` and the same question id. Ordinary MCP questions without a host deadline, asked with any key except a connector's, stay open until answered or cancelled. This preserves the question; it does not restart a closed agent.

## Tools that are not MCP clients [#tools-that-are-not-mcp-clients]

n8n, Zapier, Make and plain scripts can use the REST endpoint instead, at `https://pushary.com/api/v1/server`. See [Connect any agent](/docs/agents/connect-any-agent).

## Next steps [#next-steps]

<Cards>
  <Card title="Set up your phone" description="Install the Pushary app and turn on notifications so questions reach you." href="/docs/agents/receiving-notifications" />

  <Card title="Connect any agent over REST" description="Ask a human and wait from n8n, Zapier, Make or your own code." href="/docs/agents/connect-any-agent" />
</Cards>