Connect Cursor and other clients
Connect Cursor, VS Code, Windsurf or any MCP client to SerpPal with a JSON config: the address, the Authorization header, and a bridge for other clients.
Most MCP clients are set up with a small JSON file that lists servers. SerpPal is a remote server over HTTP (Streamable HTTP) that needs one header: Authorization: Bearer <your key>.
You need:
- the server address: your SerpPal address followed by
/mcp, for examplehttps://serppal.com/mcp. Copy it from Account, API keys and MCP; - an API key (see API keys).
Cursor
- On your SerpPal Account page, open the Cursor tab under Connect an AI assistant and click Copy.
- In Cursor, open the MCP settings file:
- for all your projects:
~/.cursor/mcp.jsonin your home folder; - for one project only:
.cursor/mcp.jsonin that project's folder.
You can also open it from Cursor's settings, in the MCP section, with the button to add a new server.
- for all your projects:
- Paste the setup text. If the file already has servers, add the
serppalentry inside the existingmcpServers:
{
"mcpServers": {
"serppal": {
"url": "https://serppal.com/mcp",
"headers": {
"Authorization": "Bearer sp_live_YOUR_KEY"
}
}
}
}- Save the file. In Cursor's MCP settings,
serppalshould turn green and list its tools. If not, turn it off and on again. - In Cursor's chat (Agent mode), ask: "List my SerpPal projects."
A project's .cursor/mcp.json is often committed to Git. Put your key in ~/.cursor/mcp.json instead, so it stays on your computer.
Other clients
The same three things go into every client: a name (serppal), the address, and the Authorization header. Only the file and the key names differ.
VS Code (.vscode/mcp.json in a project, or your user MCP settings):
{
"servers": {
"serppal": {
"type": "http",
"url": "https://serppal.com/mcp",
"headers": { "Authorization": "Bearer sp_live_YOUR_KEY" }
}
}
}Windsurf (~/.codeium/windsurf/mcp_config.json):
{
"mcpServers": {
"serppal": {
"serverUrl": "https://serppal.com/mcp",
"headers": { "Authorization": "Bearer sp_live_YOUR_KEY" }
}
}
}Any other client: look in its documentation for "remote MCP server", "HTTP server" or "Streamable HTTP", and for how to add a header. Use:
| Setting | Value |
|---|---|
| Transport | HTTP (Streamable HTTP). Not SSE. |
| URL | https://serppal.com/mcp |
| Header name | Authorization |
| Header value | Bearer sp_live_YOUR_KEY (with the word Bearer and a space) |
| Sign-in (OAuth) | None |
Clients that can't send headers
Some clients can only run local servers (a command on your computer) and have no way to add a header. For those, use the free mcp-remote bridge. It runs on your computer, needs Node.js, and passes your key to SerpPal:
{
"mcpServers": {
"serppal": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://serppal.com/mcp", "--header", "Authorization:${SERPPAL_AUTH}"],
"env": { "SERPPAL_AUTH": "Bearer sp_live_YOUR_KEY" }
}
}
}Putting the value in env avoids a known problem on Windows, where spaces inside args get split.
Good to know
- SerpPal answers with JSON only and doesn't keep a session or an event stream open. Clients that insist on the older SSE transport (an address ending in
/sse) won't connect; choose HTTP. - Requests from web pages on other sites are refused, so browser-based tools that call MCP servers straight from a web page can't connect. Desktop apps, editors and command-line tools work.
- Each key allows about 120 tool calls a minute. See Security and limits.
Troubleshooting
The server stays red or shows an error. Check that the URL ends in /mcp, that the JSON is valid (no missing commas or brackets), and that the header value starts with Bearer .
"Missing API key..." or "Invalid or revoked API key..." The header is missing, or the key is wrong or revoked. Make a new key and paste it again.
"Method not allowed: this server answers POST requests with JSON (no SSE stream)." The client is using the SSE transport. Set it to HTTP (Streamable HTTP).
"Forbidden origin" The request came from a web page on another site. Use a desktop or command-line client.
The tools appear, but the assistant never uses them. Mention SerpPal in your request, for example "Using SerpPal, list my articles", and make sure the client is in a mode that can call tools (in Cursor, Agent mode).