# Zapier

> Expose 8,000+ Zapier integrations as tools your AI agent can call.

[Canonical HTML page](https://top-mcps.com/mcp/zapier) · [server.json](https://top-mcps.com/mcp/zapier.json) · [methodology](https://top-mcps.com/about/methodology)

## Install

### Claude Desktop — `claude_desktop_config.json`

Paste under mcpServers. Fully quit and reopen Claude after editing.

```json
{
  "mcpServers": {
    "zapier": {
      "command": "npx",
      "args": [
        "-y",
        "@zapier/mcp"
      ],
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### Claude Code — `CLI or .mcp.json`

Run from your repo. Commit .mcp.json to share with your team.

```shell
# export ZAPIER_API_KEY=your_zapier_key
claude mcp add zapier -- npx -y @zapier/mcp
```

### Cursor — `.cursor/mcp.json`

Global path: ~/.cursor/mcp.json. Reload window after editing.

```json
{
  "mcpServers": {
    "zapier": {
      "command": "npx",
      "args": [
        "-y",
        "@zapier/mcp"
      ],
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### VS Code — `.vscode/mcp.json`

VS Code uses the "servers" key (not "mcpServers").

```jsonc
{
  "servers": {
    "zapier": {
      "command": "npx",
      "args": [
        "-y",
        "@zapier/mcp"
      ],
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### Windsurf — `~/.codeium/windsurf/mcp_config.json`

Open via Cascade → hammer icon → Configure.

```json
{
  "mcpServers": {
    "zapier": {
      "command": "npx",
      "args": [
        "-y",
        "@zapier/mcp"
      ],
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### Cline — `cline_mcp_settings.json`

Open via the Cline sidebar → MCP Servers → Edit.

```json
{
  "mcpServers": {
    "zapier": {
      "command": "npx",
      "args": [
        "-y",
        "@zapier/mcp"
      ],
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### Continue — `~/.continue/config.json`

Continue uses modelContextProtocolServers with a transport block.

```json
{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "npx",
          "args": [
            "-y",
            "@zapier/mcp"
          ],
          "env": {
            "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
          }
        }
      }
    ]
  }
}
```

### Codex CLI — `~/.codex/config.toml`

Codex uses TOML. Each server is a [mcp_servers.<name>] subtable.

```shell
# ~/.codex/config.toml
[mcp_servers.zapier]
command = "npx"
args = [
  "-y",
  "@zapier/mcp",
]
env = { ZAPIER_API_KEY = "${ZAPIER_API_KEY}" }
```

### Zed — `~/.config/zed/settings.json`

Zed calls them "context_servers". Settings live-reload on save.

```jsonc
{
  "context_servers": {
    "zapier": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@zapier/mcp"
        ]
      },
      "env": {
        "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
      }
    }
  }
}
```

### ChatGPT — `ChatGPT → Settings → Connectors → Developer mode`

Enable Developer mode (paid plans) and enter these values in the UI.

```json
{
  "name": "Zapier",
  "transport": "stdio",
  "command": "npx",
  "args": [
    "-y",
    "@zapier/mcp"
  ],
  "env": {
    "ZAPIER_API_KEY": "${ZAPIER_API_KEY}"
  }
}
```

## At a glance

- **Maintainer:** Zapier
- **Transport:** stdio, Streamable HTTP
- **Auth model:** API key
- **Required secrets:** ZAPIER_API_KEY
- **Supported clients:** Claude, Cursor, Any MCP-compatible client
- **License:** MIT
- **Language:** TypeScript
- **Latest version:** latest
- **Last verified:** 2026-04-19
- **Score:** 64/100 (rubric 2026-04 — see https://top-mcps.com/about/methodology)
- **Source:** https://github.com/zapier/mcp

## Security & scope

- **Access scope:** network
- **Sandbox:** Calls Zapier actions defined in the authenticated user's Zapier account. The surface area equals whichever Zaps and actions the user has enabled.
- **Gotchas:**
  - Every enabled Zap action is reachable — disable anything destructive you do not want the agent to trigger.
  - Billing and rate limits come from the user's Zapier plan, not from the MCP.

## Quick answer

**What it does.** Proxies Zapier's Actions API. The MCP publishes a set of tools (one per Zap Action you expose) that hit any Zapier-integrated service.

**Best for:**
- Long-tail app integrations
- Prototyping new workflows
- Cross-app automations
- CRM operations via Salesforce/HubSpot
- Ad-hoc triggers and actions

**Not for:**
- Latency-sensitive automation
- High-volume data sync

## Recipes

### Verify a single Zap end-to-end

```
Trigger my Zap named "Save email to Airtable" with a test input: subject "MCP smoke test", body "Testing the Zapier MCP at 2026-04-19". Confirm the Zap completed successfully and show me the Airtable record id that was created.
```

_Tested with: Claude Desktop, Cursor_

## Description

Zapier MCP turns the entire Zapier integration library into a tool surface. Any app Zapier speaks to — Salesforce, HubSpot, Airtable, Gmail, Trello — becomes callable from AI agents without building individual MCPs for each.

## Why it matters

Zapier is the fastest path to "my agent now works with $tool" for 8,000+ apps. No bespoke integration, no OAuth dance per service — one token, many tools.

## Key features

- 8,000+ app integrations
- Per-Zap tool exposure
- Usage-based pricing on Zapier side
- Official maintenance
- Single auth surface

## FAQ

### Does each Zap cost a task?

Yes. Every MCP tool call that triggers a Zap consumes a task on your Zapier plan. The free tier gives you 100 tasks/month; agent-scale use often needs a Starter or Pro plan.

### How do I control which actions the agent can take?

In your Zapier dashboard you explicitly publish the Actions an MCP token can invoke. Tokens see only the Actions you allow — this is the primary guardrail for agent use.

### Is there a latency cost vs using a dedicated MCP?

Yes. Zapier adds 100–500 ms per call because requests go through Zapier's platform. Fine for interactive chat, noticeable for high-frequency loops. Use dedicated MCPs where available (Slack, GitHub, Stripe all have them).

### Can it handle OAuth to each destination app?

Zapier handles OAuth on your behalf when you install the destination integration in Zapier. The MCP never sees the destination app's OAuth tokens — just the Zapier key, which proxies.

## Changelog

- **2026-04-19** — Refreshed install snippets and fact sheet; verified for 2026.
- **2025-03-01** — Initial directory listing.
