Connect your AI assistant to Cendor's live docs.
You don't read docs — you tell Copilot, Claude Code, or Cursor "add cost budgeting to my OpenAI calls". The Cendor MCP server hands your assistant the correct call-shape instead of a guess. It's read-only and pull-based: your assistant asks, the server answers, your assistant writes the code. Your codebase never leaves your machine.
MCP tools are called by agent modes (Claude Code, Cursor's agent, Copilot agent, Windsurf Cascade). Inline autocomplete does not call MCP. For that path, Cendor ships types and inline @examples inside every package, so your editor teaches the right shape as you type — see For AI assistants. Use both: MCP for agents, the shipped types everywhere.
What your assistant can ask.
Every answer is built from the docs source of truth and stamped with the current published package versions — so the server never teaches a shape newer than what's on PyPI / npm.
| Tool | What it returns |
|---|---|
| search_docs(query) | Full-text search over the docs → matching sections with their cendor.ai URLs. |
| get_page(slug) | A full docs page as markdown — "tokenguard", "getting-started", "sdk/agents". |
| get_api(symbol, lang?) | The anti-hallucination tool: the current correct call-shape + the common wrong one. |
| example(task, lang?) | A runnable, CI-typechecked snippet for a task ("budget a loop", "gate input"). |
| list_recipes() | The cookbook index — copy-paste recipes that run offline. |
One connection. Then it just works.
Two ways in: the remote endpoint (zero-install, always current) or a local server (fully offline, docs bundled — nothing leaves your machine). Pick your assistant.
Prefer one command? npx @cendor/init --mcp (or uvx cendor-init --mcp) writes the connect config below into your repo for you — see For AI assistants.
Claude Code
claude mcp add --transport http cendor https://mcp.cendor.aiclaude mcp add cendor -- npx -y @cendor/mcpCursor
// .cursor/mcp.json
{
"mcpServers": {
"cendor": { "url": "https://mcp.cendor.ai" }
}
}GitHub Copilot (agent mode)
// .vscode/mcp.json (GitHub Copilot agent mode)
{
"servers": {
"cendor": { "type": "http", "url": "https://mcp.cendor.ai" }
}
}Windsurf
// ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"cendor": { "serverUrl": "https://mcp.cendor.ai" }
}
}Local / offline — any MCP client
Swap the remote URL for a stdio command. Node via npx, Python via uvx — the docs are bundled, so it runs with no network.
{
"mcpServers": {
"cendor": { "command": "npx", "args": ["-y", "@cendor/mcp"] }
}
}{
"mcpServers": {
"cendor": { "command": "uvx", "args": ["cendor-mcp"] }
}
}Built from the docs, never a copy.
The server's content is built from the same library-repo docs this site is built from. Fix a doc, rebuild — the site and the MCP answers move together. No forked copy to drift.
Your assistant calls a tool; the server responds. It never pushes into your editor and makes no server→client calls (no sampling / elicitation). Only the query arguments your assistant sends reach us.
Cendor is local-first. This MCP server is optional developer tooling for wiring an assistant up — no Cendor library requires it, or any server, at runtime.
Open source (Apache-2.0): github.com/cendorhq/cendor-mcp. Prefer the copy/paste route? The whole trap sheet + rules files for your repo live on For AI assistants, and every docs page concatenated is at /llms-full.txt.