Skip to main content
Start in SendPilot → Integrations → MCP. First-time setup shows all supported clients before asking for configuration. Select one to open its instructions; the other clients remain visible for switching. Returning visits open connection records, with Connections, API Keys, and the client list readily available. Only the selected client is remembered per account/workspace, not credentials. If workspace access needs activation, the subscription screen appears first. Follow Continue to Checkout, or use Manage Subscription for an existing subscription. Previous connections are hidden under Manage existing access until requested.

Compatibility

Desktop app versions and organization policies affect which settings are available. The web and desktop connection paths are different; a desktop configuration file is not read by a cloud connector. Developer-tool examples are in the client configuration guide. You do not need Claude Code to use Claude Desktop.

Claude Desktop

1. Install the prerequisite

Install Claude Desktop and Node.js 22 or newer. Claude Desktop will start the local bridge for you. You do not need to keep a terminal open.

2. Create or reuse a key in SendPilot

Select Claude Desktop in the MCP tab. Click Create API Key, give it a name, and choose Use Key for Setup. If you already saved a full API key, choose Use Saved Key instead.

3. Open Claude’s configuration

In the desktop application’s settings, open Developer → Edit Config. The file is:
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Add the sendpilot entry to mcpServers. Keep any existing server entries. The dashboard’s Copy Configuration button includes your key; this example uses a placeholder:
mcp-remote expands the environment placeholder and supplies the header. The key is not placed in the server URL. This is a third-party local bridge, not an OAuth login or SendPilot’s documentation-search server. Its first start downloads the package and may take longer.

4. Restart and verify

Save the file, fully quit Claude Desktop, and reopen it. Enable SendPilot from the chat’s connectors/tools menu. Ask:
Show my SendPilot workspace and campaigns. Don’t change anything.
Confirm the returned workspace name. If the server is missing, check the configuration’s JSON syntax and the Node.js installation. Organization administrators may restrict local MCP servers.

ChatGPT Desktop

These instructions apply to desktop versions with Settings → MCP servers and local Codex-host configuration. If that setting is absent, do not assume the web connector path can substitute for it.
  1. Select ChatGPT Desktop in SendPilot’s MCP setup panel and create or enter a key.
  2. Open ~/.codex/config.toml used by the desktop app. Add the following server while preserving existing configuration:
  1. In Settings → MCP servers, restart the connection.
  2. Type /mcp in the composer to check connected servers, then try the workspace-verification prompt above.
The dashboard can copy this configuration with your key already included. Keep the file private. If you also use Codex CLI or its IDE extension on the same host, they share this configuration. See OpenAI’s MCP configuration documentation for supported app versions and settings.

OAuth connections

OAuth is offered only when the deployment has its Clerk clients configured. If the MCP panel says OAuth is unavailable, use a supported API-key client rather than putting an API key in an OAuth field. See the dedicated OAuth guide for consent, refresh, permissions, status and troubleshooting.

1. Review the SendPilot workspace

In Integrations → MCP, select Claude (web & mobile) or ChatGPT (web). Check the workspace name and choose access:
  • Read and Write is preselected for new connections and includes the permitted campaign, lead, outreach and credit-spending tools shown in the panel. Individual outreach/spend approvals and plan limits still apply.
  • Read Only can be selected before creating the connection.
Click Create Connection only after reviewing the access. SendPilot stores a connection bound to you, that workspace, that assistant’s registered OAuth client, and those permissions. Creation alone does not mark it connected.

2. Configure the assistant

Copy the connection’s Server URL and public Client ID from SendPilot. New URLs look like https://mcp.sendpilot.ai/connections/<connection-id> and are not API keys. Development connections use https://mcp-dev.sendpilot.ai/connections/<connection-id>. Older URLs containing /mcp/connections/<connection-id> still work without redirects. Keep the URL supplied for that connection: existing OAuth token audiences are not rewritten. Existing API-key configurations using https://mcp.sendpilot.ai/mcp and /mcp/<toolset> also keep working.
  • Claude: open Settings → Connectors → Add custom connector. Enter the URL, then choose Sign in now → Use your own OAuth client where shown. Paste the public OAuth Client ID and leave the client secret blank.
  • ChatGPT: enable developer mode where available and create a custom MCP app. Choose OAuth, enter the URL and public Client ID, and leave the client secret blank for the public client. Availability and settings labels depend on your plan and organization policy.
Start the connection and sign in using the same SendPilot user who created it. Review the SendPilot-branded consent page, which uses Clerk’s native Allow/Deny controls. Desktop uses two columns; mobile puts approval first and collapses workspace details underneath. The client exchanges and refreshes tokens through Clerk. SendPilot checks the exact resource URL and registered client.

3. Verify or disconnect

Ask the assistant to show your workspace and campaigns without changing anything. Confirm the workspace name. Check Recorded Use and Refresh Connection Records report historical authenticated use, not continuous health. Resume Setup preserves the saved URL and permissions. Use Disconnect to revoke this connection. Future authorizations for its URL are denied, including refreshed tokens. This does not disconnect your LinkedIn sender or sign you out of Clerk, and it cannot recall an already-started provider action. To reconnect, create a new connection.

Separate workspaces

Create a separate connection for each workspace. Do not reuse a connection URL to switch workspaces: its workspace, creator, client and approved permission set are fixed. Removing workspace membership or reducing permissions also restricts access. For development, the dashboard creating the connection and the deployed MCP service must use the same database. Cloud clients cannot reach a localhost URL.

Web and mobile connections

Claude web, mobile, and remote connectors

Claude’s Settings → Connectors → Add custom connector flow connects from Anthropic’s cloud. Its documented authenticated setup uses OAuth; its advanced Client ID and Client Secret fields are OAuth application credentials, not fields for a SendPilot API key. Use the workspace-bound OAuth flow above when enabled. The generic API-key endpoint cannot be connected through these OAuth fields. Where OAuth is unavailable, use the Claude Desktop local bridge or another supported API-key client. Local Claude Desktop tools are local to that desktop app. They do not automatically become available in Claude web, mobile, or cloud-connected Cowork. See Claude’s custom connector documentation.

ChatGPT on the web

ChatGPT’s developer-mode custom MCP apps support OAuth, no authentication, and mixed OAuth/no-auth modes. They do not provide the arbitrary API-key-header configuration used by the local desktop/Codex host. SendPilot requires authentication, so choosing No authentication will not work. Use the workspace-bound OAuth flow above when enabled. Do not put an API key in the URL or the OAuth Client Secret field. See OpenAI’s developer-mode authentication options. Availability also depends on plan and organization settings. If OAuth is disabled for your deployment, a different API key will not bypass that limitation.

Next steps