MCP quickstart

Silky ships a Model Context Protocol server at https://app.silky.so/api/mcp. Connect Claude Desktop, Claude Code, or any MCP-aware client and drive Silky with natural language tool calls.

Install (Claude Desktop)

Add this block to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent path on Windows/Linux:

{
  "mcpServers": {
    "silky": {
      "url": "https://app.silky.so/api/mcp"
    }
  }
}

Restart Claude Desktop. On first use of a Silky tool, Claude will prompt for OAuth. Sign in with the account you already use on Silky.

Install (Claude Code)

From the project where your agent runs:

claude mcp add silky --url https://app.silky.so/api/mcp

Confirm it connected:

claude mcp list

You should see silky in the list. The first tool call will open an OAuth browser tab once, then subsequent calls reuse the token.

Install (generic MCP client)

The server advertises its OAuth metadata at /.well-known/oauth-protected-resource. Point your MCP client at https://app.silky.so/api/mcp; it will follow the OAuth discovery flow automatically if it supports MCP 2025-06-18 or later.

First tool call

Once connected, a test prompt:

List my 5 most recent jobs.

Claude will call jobs_list and return a table. No manual curl needed.

Or ask for an action:

Create a job for a Senior Backend Engineer, remote, GBP 110-140k base. Post it to the careers page.

Claude will chain jobs_create_from_description -> job_ads_create -> return the public careers URL.

What the tools can do

27+ MCP tools cover every recruiter action in the product: create jobs, ingest candidates, move applications through stages, schedule interviews, submit scorecards, request references, send offers, fire webhooks, and more.

Full list in the /docs OpenAPI reference - every REST route has a matching MCP tool with the same name pattern. If you can hit the REST route, you can call it from Claude.

Tool call example (raw)

If you are building your own MCP client and want to see a raw call/response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "jobs_list",
    "arguments": { "limit": 5 }
  }
}

The response shape follows the MCP spec. Errors carry the same error.code / error.message / meta.request_id envelope as the HTTP API.

Troubleshooting

  • OAuth loops. Clear the cached token for app.silky.so in your MCP client and reconnect. If you are on a dev build, set the resource to http://localhost:3001.
  • "Permission denied" on write tools. The OAuth scope is tied to your company member role. Admin users get full write; member-role users get read + limited write.
  • Rate limit 429. Every tool call consumes one API-key request. See error handling for retry rules.

Hand this to Claude

Paste this into a Claude session with Silky MCP connected:

I have Silky connected via MCP. Create a job for a Senior Backend
Engineer in London, GBP 120k base, remote OK, and post it to our
careers page. Return the public URL when done.