{"$schema":"https://static.modelcontextprotocol.io/schemas/mcp-server-card/v1.json","version":"1.0","protocolVersion":"2025-11-25","serverInfo":{"name":"Docs MCP server","title":"Docs MCP server","version":"2026-10-29"},"description":"The Pave API enables customers to programmatically access compensation data and integrate Pave with their existing tech stack. Connect your compensation planning data with analytics tools, HRIS systems, and business intelligence platforms to build a more unified compensation workflow.","documentationUrl":"https://developers.pave.com/","transport":{"type":"streamable-http","endpoint":"/mcp"},"capabilities":{"logging":{},"tools":{"listChanged":true}},"instructions":"This server exposes documentation tools (API discovery, endpoint details, security schemes, full-text search) through `describe-tools` and `execute`:\n- `describe-tools` returns the exact TypeScript signatures of the sandbox tools.\n- `execute` runs JavaScript that calls those tools on the global `tools` object.\nWorkflow: analyze the request, call `describe-tools` once with only the tool names it needs, then batch everything into a single `execute` script. Minimize round-trips and never guess tool signatures.\n\nAvailable tools (exact signatures come from `describe-tools`):\n- listApis — Lists the APIs documented in this project\n- getEndpoints — Get all endpoints for a specific API\n- getEndpointInfo — Get comprehensive information about specific endpoint inclu…\n- getSecuritySchemes — Get the security schemes for a specific API\n- getFullApiDescription — Get the complete OpenAPI description\n- search — Search across the documentation to fetch relevant content f…","tools":[{"name":"execute","title":"Execute code","description":"Run JavaScript in a sandbox against the documentation tools on the global `tools` object.\nThe only extra global is `tools` - there is no `fetch`, `console`, `setTimeout`, `require`, or Node.js API; all I/O goes through `tools`.\n\nWorkflow - minimize round-trips; one `describe-tools` call plus one `execute` call covers most requests:\n1. Analyze the request and decide which sandbox tools it needs.\n2. Call `describe-tools` with those names to get their exact TypeScript signatures - inputs, result shapes, and a worked example. NEVER call `execute` with guessed method names, parameter names, enum values, or result field names: read fields off the declared return types, not from assumptions.\n3. Batch everything into a SINGLE script: chain tool calls, pass one call's output into the next, process results in plain JavaScript, and `return` only what the request needs.\n\nAvailable tools (exact signatures come from `describe-tools`):\n- listApis — Lists the APIs documented in this project\n- getEndpoints — Get all endpoints for a specific API\n- getEndpointInfo — Get comprehensive information about specific endpoint inclu…\n- getSecuritySchemes — Get the security schemes for a specific API\n- getFullApiDescription — Get the complete OpenAPI description\n- search — Search across the documentation to fetch relevant content f…","inputSchema":{"type":"object","required":["code","description"],"additionalProperties":false,"properties":{"code":{"type":"string","description":"JavaScript to run in the sandbox. Return a value to receive it as the result.","minLength":1},"description":{"type":"string","description":"A short, human-readable summary of what this code does.","minLength":1},"sessionHandle":{"type":"string","description":"Handle returned by createAnonymousSession. Required when an API needs credentials. This parameter is only offered when createAnonymousSession is available, so pass it whenever you have called that tool.","minLength":1}}},"annotations":{"readOnlyHint":true,"openWorldHint":false,"title":"Execute code"}},{"name":"describe-tools","title":"Describe tools","description":"Get the exact TypeScript signatures of the sandbox tools available to `execute`.\nAnalyze the user request first, then pass `tools` with only the tool names the request needs (every name is listed in this input schema / description); omit `tools` only when you cannot tell which tools apply.\nAlways call this before your first `execute` and never guess signatures. Request every tool the task may need in ONE call instead of calling this repeatedly.","inputSchema":{"type":"object","required":[],"additionalProperties":false,"properties":{"tools":{"type":"array","description":"Tool names to describe: listApis, getEndpoints, getEndpointInfo, getSecuritySchemes, getFullApiDescription, search. Omit to describe everything.","items":{"type":"string","enum":["listApis","getEndpoints","getEndpointInfo","getSecuritySchemes","getFullApiDescription","search"]},"nullable":true}}},"annotations":{"title":"Describe tools"}}]}