{
  "markdown": "<div align=\"center\">\n\n# doc2mcp\n\n### Documentation infrastructure for AI agents\n\n**Paste any docs URL → get a hosted, Cursor-ready MCP server in under 60 seconds.**\n\n[**Live**](https://doc2mcp.site) · [Docs](https://doc2mcp.site/docs) · [SDK](https://github.com/doc2mcp/doc2mcp-sdk) · [Marketplace](https://doc2mcp.site/marketplace) · [Open Source](https://doc2mcp.site/open-source)\n\n[![MCP Registry](https://img.shields.io/badge/MCP_Registry-io.github.doc2mcp-2563eb)](https://registry.modelcontextprotocol.io/?search=doc2mcp)\n[![npm CLI](https://img.shields.io/npm/v/doc2mcp?color=8b5cf6&logo=npm&label=doc2mcp)](https://www.npmjs.com/package/doc2mcp)\n[![npm SDK](https://img.shields.io/npm/v/doc2mcp-sdk?color=0ea5e9&logo=npm&label=doc2mcp-sdk)](https://www.npmjs.com/package/doc2mcp-sdk)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](./LICENSE)\n[![GitHub stars](https://img.shields.io/github/stars/doc2mcp/doc2mcp?style=social)](https://github.com/doc2mcp/doc2mcp/stargazers)\n\n⭐ **Star this repo** — it helps developers discover doc2mcp on GitHub and the MCP Registry.\n\n</div>\n\n---\n\n## Three ways to use doc2mcp\n\n![Web · CLI · SDK](./public/diagrams/three-surfaces.png)\n\n| Surface | Best for | Start here |\n|---------|----------|------------|\n| **Web** | Instant convert in the browser | [doc2mcp.site](https://doc2mcp.site) |\n| **CLI** | Terminal + one-shot install into Cursor | [`npm i -g doc2mcp`](https://www.npmjs.com/package/doc2mcp) |\n| **SDK** | Code, CI, LangChain / LangGraph / agents | [`doc2mcp-sdk`](https://github.com/doc2mcp/doc2mcp-sdk) |\n\n> API keys always come from **doc2mcp.site** (User PAT + project token). The SDK has **no separate login**.\n\n---\n\n## The pipeline\n\n![The doc2mcp pipeline](./public/diagrams/pipeline.png)\n\nDocs URL → crawl → analyze → MCP tools → hosted endpoint → Cursor / Claude / LangChain / LangGraph.\n\n---\n\n### 1) Web (normal)\n\n1. Sign in at [doc2mcp.site/login](https://doc2mcp.site/login)\n2. Paste a docs URL (Stripe, LangChain, Mintlify, GitHub…)\n3. Copy the hosted MCP URL + Bearer token into Cursor / Claude / VS Code\n\n```json\n{\n  \"mcpServers\": {\n    \"my-docs\": {\n      \"url\": \"https://doc2mcp.site/api/mcp/{project_id}/mcp\",\n      \"headers\": { \"Authorization\": \"Bearer <project-token>\" }\n    }\n  }\n}\n```\n\n---\n\n### 2) CLI\n\n```bash\nnpm install -g doc2mcp\ndoc2mcp login                 # creates User PAT (d2mcp_pat_…)\ndoc2mcp https://docs.example.com\n```\n\nLists the same projects as the dashboard. Install helpers for Cursor / VS Code / Claude / Windsurf.\n\n---\n\n### 3) SDK (`doc2mcp-sdk`)\n\n![SDK architecture](./public/diagrams/sdk-architecture.png)\n\n```bash\nnpm i doc2mcp-sdk\n```\n\n```ts\nimport { Doc2MCP } from \"doc2mcp-sdk\";\n\n// User PAT from doc2mcp.site / `npx doc2mcp login` — SDK has no auth of its own\nconst client = new Doc2MCP({ token: process.env.DOC2MCP_API_TOKEN! }); // Settings → d2mcp_usr_…\n\nconst ready = await client.convertAndWait({\n  sourceUrl: \"https://js.langchain.com/docs\",\n});\n\nconst answer = await client.callToolText({\n  mcpUrl: ready.mcp.url,\n  mcpToken: ready.mcp.token, // project token d2mcp_…\n  name: \"search_documentation\",\n  arguments: { query: \"how do runnables work?\" },\n});\n```\n\nFull handbook (API keys, Cursor, Claude, LangChain, LangGraph, LangSmith, OpenAI, Vercel AI SDK, CrewAI, AutoGen, Mastra):\n\n**[doc2mcp/doc2mcp-sdk → docs/](https://github.com/doc2mcp/doc2mcp-sdk/tree/main/docs)**\n\nProduct docs page: [doc2mcp.site/docs/sdk](https://doc2mcp.site/docs/sdk)\n\n---\n\n## MCP tools generated per project\n\n| Tool | What it does |\n|------|--------------|\n| `list_documentation_pages` | Every crawled page |\n| `get_documentation_page` | Full markdown of one page |\n| `search_documentation` | Heading-aware search |\n| `get_documentation_overview` | Summary + index |\n| `read_full_documentation` | All pages combined |\n| `ask_documentation` | Q&A with citations |\n\n## Repos\n\n| Repo | Purpose |\n|------|---------|\n| **[doc2mcp/doc2mcp](https://github.com/doc2mcp/doc2mcp)** (this) | Next.js app, CLI, pipeline, MCP runtime |\n| **[doc2mcp/doc2mcp-sdk](https://github.com/doc2mcp/doc2mcp-sdk)** | Programmatic JS/TS SDK + framework examples |\n| **[doc2mcp/doc2mcp-registry](https://github.com/doc2mcp/doc2mcp-registry)** | MCP Registry gateway manifest |\n\n## Contribute\n\n1. Read [CONTRIBUTING.md](./CONTRIBUTING.md) and [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md)\n2. Branch from `staging` → open PR → `staging`\n3. AI review (`Gemini PR review`) **fails the check on must-fix** — fix blockers before merge\n4. Coupon **`opensourcedoc2mcp`** → Starter free for 12 months on [Pricing](https://doc2mcp.site/pricing)\n\nMore: [doc2mcp.site/open-source](https://doc2mcp.site/open-source)\n\n## Local development\n\n```bash\npnpm install\ncp .env.example .env.local\npnpm dev\n```\n\n```bash\npnpm check\npnpm exec tsc --noEmit --skipLibCheck\n```\n\n## CI / CD\n\nFeature → `staging` (preview) → `main` → `v*` tag deploys production on Vercel.\n\nPR checks: Biome/Ultracite, TypeScript, Next build, CLI build, **Gemini AI review** (must-fix → failed check).\n\n## License\n\nMIT — see [LICENSE](./LICENSE).\n",
  "bytes": 5082,
  "sha": "9f4bbecdfa1b5631daa225524fb4012906efd047c6120efec8b7ef22e78040bd",
  "repo_slug": "doc2mcp/doc2mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_doc2mcp_manus_28a9196d/readme"
}