Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 35 additions & 22 deletions docs/mcp/connect-mcp-client.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -94,30 +94,44 @@ To complete the integration, you'll need to connect an MCP-compatible client to
<Tab>
### Connecting Claude Desktop to your MCP server

1. Navigate to **Settings**. To find this, use the app menu to select **Settings** or press `Cmd/Ctrl + ,`.
1. In the settings sidebar, select **Developer**, then **Edit config**. Open the revealed file in your editor of choice.
1. Add the following configuration to the JSON file:
```json
{
"mcpServers": {
"clerk-mcp-server": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:3000/mcp", "--allow-http"]
Claude Desktop offers two ways to connect to MCP servers:

- Using the **Search and Tools** menu in the main UI.
- Using the **Developer Settings**.

<Tabs items={["Using the Search and Tools menu", "Using the Developer Settings"]}>
<Tab>
1. In the main chat UI, navigate to the **Search and Tools** menu (icon with two horizontal lines and dots), then select **Manage Connectors**.
1. Scroll to the bottom and select **Add Custom Connector**.
1. Add your MCP server name and URL, then select **Add**.
1. Once added, your server will appear in the connectors list. Select the **Connect** option to establish the connection.
1. Once connected, you can open a new chat and prompt it to fetch your Clerk user data (e.g., "What is my Clerk user data?").
</Tab>

<Tab>
1. Navigate to **Settings**. To find this, use the app menu to select **Settings** or press `Cmd/Ctrl + ,`.
1. In the settings sidebar, select **Developer**, then **Edit config**. Open the revealed file in your editor of choice.
1. Add the following configuration to the JSON file:
```json
{
"mcpServers": {
"clerk-mcp-server": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:3000/mcp", "--allow-http"]
}
}
}
}
}
```
> [!IMPORTANT]
>
> - Replace `http://localhost:3000/mcp` with your production URL and remove `--allow-http` if you've deployed your MCP server.
> - [mcp-remote](https://github.com/geelen/mcp-remote) is required since Claude Desktop does not support remote MCP servers with authentication natively.
1. Restart Claude Desktop. It should now prompt you to authenticate with your Clerk account.
1. Once authenticated, you can open a new chat and prompt it to fetch your Clerk user data (e.g., "What is my Clerk user data?").
```
> [!IMPORTANT]
>
> - Replace `http://localhost:3000/mcp` with your production URL and remove `--allow-http` if you've deployed your MCP server.
> - [mcp-remote](https://github.com/geelen/mcp-remote) is required since this connection mode does not support remote MCP servers with authentication natively.
1. Restart Claude Desktop. It should now prompt you to authenticate with your Clerk account.
1. Once authenticated, you can open a new chat and prompt it to fetch your Clerk user data (e.g., "What is my Clerk user data?").
</Tab>
</Tabs>

You've now successfully connected **Claude Desktop** to your MCP server and authenticated it using Clerk.

> [!WARNING]
> Claude Desktop has a second way to connect to MCP servers under an "Integrations" menu, however, this is not currently supported due to an incompatible implementation of an older version of the MCP spec.
</Tab>

<Tab>
Expand Down Expand Up @@ -174,7 +188,6 @@ The exact response will vary based on your specific Clerk user profile and the p
The MCP protocol and spec are still in development, and as a result, implementation across clients can vary. While we are working to support all clients, there are some clients that are not currently supported:

- **Cline**: While it does have MCP support, their implementation is not compatible with the latest MCP spec.
- **Claude Desktop via "Integrations" menu / Claude Web**: This is not currently supported due to an incompatible implementation of an older version of the MCP spec. We hope this will be resolved in the future.

## Troubleshooting

Expand Down