{"_id":"@codasignal/routo-mcp","name":"@codasignal/routo-mcp","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.2":{"name":"@codasignal/routo-mcp","version":"0.1.2","description":"MCP stdio server exposing the Routo link management API as AI agent tools","keywords":["ai-agents","deep-links","link-management","mcp","model-context-protocol","routo"],"homepage":"https://routo.io","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/CodaSignal/routo.io.git","directory":"packages/mcp"},"bin":{"routo-mcp":"dist/index.mjs"},"type":"module","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest run","test:watch":"vitest","check-types":"tsc --noEmit"},"dependencies":{"@codasignal/routo":"^1.0.0","@modelcontextprotocol/server":"^2.0.0"},"devDependencies":{"@codasignal/routo-api":"workspace:*","@modelcontextprotocol/client":"^2.0.0","tsup":"^8.0.0","typescript":"^5.9.2","vitest":"^3.1.1"},"engines":{"node":">=20"},"gitHead":"7d9b5fbafbddd04a9863beac622016bd6c9fb66a","_id":"@codasignal/routo-mcp@0.1.2","bugs":{"url":"https://github.com/CodaSignal/routo.io/issues"},"_nodeVersion":"22.23.2","_npmVersion":"12.0.2","dist":{"integrity":"sha512-Y2+EYQ6xls9EFVV2gjgmEYdyDoP7UtRHIGCfn6r3iprjNBtBGmlUk44fZcMASdPQ1Fo5SVTpUG0JbSl30pbJQQ==","shasum":"d7ebbd05ca36d4246876ece59adf896da3429e1d","tarball":"https://registry.npmjs.org/@codasignal/routo-mcp/-/routo-mcp-0.1.2.tgz","fileCount":3,"unpackedSize":1073490,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD2LT8nAnLjSYBeJLUS4j9UGjgABMXmYUjBiPeWgyGJYwIgIUqaRo86/H1DuD55ziLPirBheryIo9BQqJ3KxvczjnQ="}]},"_npmUser":{"name":"falconiererb","email":"hello@codasignal.com"},"directories":{},"maintainers":[{"name":"falconiererb","email":"hello@codasignal.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/routo-mcp_0.1.2_1787038192180_0.7660783240877935"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-18T07:29:52.033Z","0.1.2":"2026-08-18T07:29:52.325Z","modified":"2026-08-18T07:29:52.511Z"},"maintainers":[{"name":"falconiererb","email":"hello@codasignal.com"}],"description":"MCP stdio server exposing the Routo link management API as AI agent tools","homepage":"https://routo.io","keywords":["ai-agents","deep-links","link-management","mcp","model-context-protocol","routo"],"repository":{"type":"git","url":"git+https://github.com/CodaSignal/routo.io.git","directory":"packages/mcp"},"bugs":{"url":"https://github.com/CodaSignal/routo.io/issues"},"license":"Apache-2.0","readme":"# @codasignal/routo-mcp\n\nMCP server exposing the [Routo](https://routo.io) link management API as tools for AI agents (Claude Code, Claude Desktop, Cursor, ...).\n\n## Quickstart\n\nAdd this to your client's MCP config (`.mcp.json`, `claude_desktop_config.json`, Cursor's `mcp.json` — same shape everywhere):\n\n```json\n{ \"mcpServers\": { \"routo\": {\n  \"command\": \"npx\", \"args\": [\"-y\", \"@codasignal/routo-mcp\"],\n  \"env\": { \"ROUTO_API_KEY\": \"rk_...\" }\n}}}\n```\n\nCreate an API key at [routo.io](https://routo.io). No install step — `npx` fetches the server on first launch.\n\n## Env\n\n| Variable            | Required | Default                | Notes                                                                 |\n| ------------------- | -------- | ----------------------- | ---------------------------------------------------------------------- |\n| `ROUTO_API_KEY`     | yes      | —                       | Missing/empty → the server prints an error to stderr and exits 1.      |\n| `ROUTO_BASE_URL`    | no       | `https://api.routo.io`  | Point at a self-hosted or local API.                                   |\n| `ROUTO_PROJECT_ID`  | no       | —                       | Default `projectId` injected when omitted, for tools that take it via query or body. `project-apps-get` takes it in the URL path and always requires it explicitly. |\n\n## Tools\n\nTools mirror the public REST routes documented at [routo.io/docs](https://routo.io/docs) 1:1 — same source, generated together, so there's never a tool that the docs don't also describe (or vice versa). Tool names are the route ids verbatim, e.g. `links-create`, `links-list-links`, `analytics-list-breakdown`.\n\nWhich tools a given key can call is gated by that API key's scopes — a key without `links:write` won't be able to call `links-create` even though the tool is registered.\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md","_rev":"1-c404b8ab6a3dde202242566bb92e7912"}