Docs

MCP server

Connect a client

Add the Sigil MCP server to Claude Code, Claude Desktop, Cursor, VS Code or any other MCP client with one URL and your API key.

Every client needs the same two things: the server's URL, https://api.signwithsigil.com/mcp, and an Authorization header with your API key. Create a key for the client first, on the dashboard's API page.

Claude Code

Add it with one command:

Terminal
claude mcp add --transport http sigil https://api.signwithsigil.com/mcp \
  --header "Authorization: Bearer $SIGIL_API_KEY"

To share the setup with a project without committing the key, put it in the project's .mcp.json and let each person supply SIGIL_API_KEY from their environment:

.mcp.json
{
  "mcpServers": {
    "sigil": {
      "type": "http",
      "url": "https://api.signwithsigil.com/mcp",
      "headers": { "Authorization": "Bearer ${SIGIL_API_KEY}" }
    }
  }
}

Run /mcp inside Claude Code to check that sigil is connected and see its tools.

Claude Desktop

Claude Desktop's configuration file starts local servers, so it reaches a remote server with custom headers through the mcp-remote bridge (it needs Node.js). Open Settings → Developer → Edit Config and add:

claude_desktop_config.json
{
  "mcpServers": {
    "sigil": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://api.signwithsigil.com/mcp", "--header", "Authorization:${SIGIL_AUTH}"],
      "env": { "SIGIL_AUTH": "Bearer sgk_…" }
    }
  }
}

Restart Claude Desktop. The header is passed through an environment variable, without a space after the colon, because some clients split arguments on spaces.

Cursor

Add it to ~/.cursor/mcp.json (every project) or .cursor/mcp.json (one project):

mcp.json
{
  "mcpServers": {
    "sigil": {
      "url": "https://api.signwithsigil.com/mcp",
      "headers": { "Authorization": "Bearer sgk_…" }
    }
  }
}

VS Code

Add it to .vscode/mcp.json. With an input, VS Code asks for the key once and stores it securely, so it is never written in the file:

.vscode/mcp.json
{
  "inputs": [
    { "type": "promptString", "id": "sigil-key", "description": "Sigil API key", "password": true }
  ],
  "servers": {
    "sigil": {
      "type": "http",
      "url": "https://api.signwithsigil.com/mcp",
      "headers": { "Authorization": "Bearer ${input:sigil-key}" }
    }
  }
}

Other clients

Any client that supports remote MCP servers over Streamable HTTP with custom headers works: give it the URL and the Authorization: Bearer sgk_… header. A client that can only start local (stdio) servers can use the same mcp-remote bridge shown for Claude Desktop.

Test the connection

The MCP Inspector lets you call each tool by hand:

Terminal
npx @modelcontextprotocol/inspector

Choose the Streamable HTTP transport, enter https://api.signwithsigil.com/mcp, add the Authorization header with Bearer sgk_…, and connect. List Tools shows all ten.

Or check the key and plan with a plain request. A working setup answers the initialize call with the server's name, sigil:

Terminal
curl https://api.signwithsigil.com/mcp \
  -H "Authorization: Bearer $SIGIL_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'

Troubleshooting

Symptom Fix
401 / "Missing, unknown or revoked API key" The header is missing or the key is wrong. Check for a missing Bearer prefix, or a key that was revoked.
403 / "API and MCP access is part of the Pro and Business plans" Upgrade the account on the Billing page.
The server connects but has no tools Restart the client; most only read their MCP settings at start-up.
Claude Desktop shows the server as failed Check that Node.js is installed (npx --version), then look at the MCP log in Settings → Developer.