← ReadMeCONTENT HISTORY
WHAT CHANGED
Update to ReadMe
Snapshot Oct 24, 2026 · 13:40 UTC · version 1.0.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Save ReadMe and check future changes in Following.
Up to 10 plugins free · no card required.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Route ReadMe MCP calls to the right project and the right spec. Use before any request touching the user's own content - \"our docs\", \"my hub\", \"create a page\", \"update the changelog\", \"what endpoints do we have\", \"search our guides\", \"how many page views\", \"top search terms\", \"send our API logs to ReadMe\" - and before calling execute-request for the first time in a session.",
"included_files": [],
"name": "mcp-server",
"skill_md_contents": "---\nname: mcp-server\ndescription: Route ReadMe MCP calls to the right project and the right spec. Use before any request touching the user's own content - \"our docs\", \"my hub\", \"create a page\", \"update the changelog\", \"what endpoints do we have\", \"search our guides\", \"how many page views\", \"top search terms\", \"send our API logs to ReadMe\" - and before calling execute-request for the first time in a session.\n---\n\n# Which project does this call land in?\n\nThis plugin connects to `https://docs.readme.com/mcp`, which serves **ReadMe's own documentation**.\n`search` and `fetch` answer questions about how ReadMe works. The user's project is reached only\nthrough `execute-request` with their API key. Reads and writes land in different places.\n\nQuestions about ReadMe itself need nothing else: use `search` and `fetch` and answer.\n\n## Tools on this server\n\n| Tool | Answers for | Use it when |\n| --- | --- | --- |\n| `search`, `fetch` | ReadMe's own product documentation | The question is about how ReadMe works |\n| `list-specs`, `list-endpoints`, `get-endpoint`, `search-endpoints` | ReadMe's API definitions, as documents | Looking up a route before calling it |\n| `execute-request` | **The user's project**, with their key | Reading or changing anything of theirs |\n| `update-docs`, `draft-changelog` | Nothing. They return instructions for you to carry out | You want the recommended procedure |\n\nTool availability is per-project configuration, not a fixed list. Call `tools/list` rather than\nassuming a tool named here is present, and never assume one that is not.\n\n## The three specs\n\n`execute-request` reaches only servers declared in these definitions. There are three, and\n`search-endpoints` searches all of them at once:\n\n| Spec title | Server | Auth |\n| --- | --- | --- |\n| `ReadMe API` | `https://api.readme.com/v2` | Bearer `rdme_...` |\n| `Developer Metrics API` | `https://metrics.readme.io` | HTTP basic, the key as username and an empty password |\n| `Legacy API` | `https://dash.readme.com/api/v1` | HTTP basic |\n\n**Use `ReadMe API` for all work on the user's content.** `Legacy API` is v1: it takes basic auth\nrather than a bearer token, and it is unavailable to projects on ReadMe Refactored. `search-endpoints`\nwill surface its routes alongside the others — ignore them. Never fall back to v1 when a v2 call\nfails.\n\n## Finding a route\n\nDo not guess paths or work from memory. `list-endpoints` returns every path and summary in a spec in\none cheap call; `get-endpoint` adds the full request and response schema for one of them, including\nwhich routes exist only on ReadMe Refactored. Read them rather than reproducing them here.\n\nTwo things the definitions do not tell you:\n\n- Paginated responses carry `paging.next`, `paging.previous`, `paging.first` and `paging.last`.\n Query with `page` and `per_page`, max 100 and max 50 on search.\n- Enterprise child projects need the child's own key. Only the API-key routes take a `{subdomain}`,\n and `me` works there.\n\n## Calling execute-request\n\n```json\n{\n \"title\": \"ReadMe API\",\n \"harRequest\": {\n \"method\": \"get\",\n \"url\": \"https://api.readme.com/v2/projects/me\"\n }\n}\n```\n\n- `title` names the spec and is required whenever the server carries more than one, as this one does.\n Omitting it fails validation before the request is made.\n- `url` must be absolute. `get-endpoint` and `search-endpoints` report paths relative to the server\n (`/projects/me`), so prepend `https://api.readme.com/v2` rather than pasting the path through.\n- The key decides which project the call lands in, and the user cannot override it per-request.\n Name the project before you change anything; asking them which one to write to is misleading.\n\nSetting up, verifying, or repairing that key is the `mcp-auth` skill.\n\n## When the user asks about their own docs\n\n\"Search our docs\", \"what does our guide say\", \"find the page about X in my project\" cannot be\nanswered by `search` or `fetch` here. Those read ReadMe's documentation and would return confident,\nwrong answers about someone else's content.\n\nTheir key already reaches their content through the ReadMe API, so switch tools and carry on rather\nthan sending them away to configure anything:\n\n| They want | Call, via `execute-request`, spec title `ReadMe API` |\n| --- | --- |\n| Search their content | `GET https://api.readme.com/v2/search?query=...`, optionally `section`, `version`, `projects` |\n| Read one guide | `GET https://api.readme.com/v2/branches/{branch}/guides/{slug}` |\n| List what is in a category | `GET https://api.readme.com/v2/branches/{branch}/categories/{section}/{title}/pages` |\n\n`{branch}` is a version number, `stable`, or a branch name. Everything is branch-scoped except\nchangelogs, images, fonts, API keys, search and the project itself.\n\n## Metrics\n\nPage views, search terms and page quality live in the `Developer Metrics API` spec, and reading them\nneeds the Enterprise plan — without it the API answers with an auth or plan error rather than saying\nso. The registration sends a bearer token; if a call returns `Unauthorized` with a key set, send\n`Authorization: Basic <base64 of \"<key>:\">` on the HAR request instead.\n\nMost of what the dashboard shows has no route at all, so check here before going looking:\n\n| Metric | Readable via API |\n| --- | --- |\n| Page views, page quality, search terms | Yes |\n| API calls | No — ingest only, `POST https://metrics.readme.io/request` |\n| MCP tool calls, API errors, top endpoints, new users | No, dashboard only |\n\nFor anything in the No rows, send the user to\n`https://dash.readme.com/project/{subdomain}/v{version}/metrics`.\n\nIngesting the user's own API logs is a server-side integration, not something to hand-build here.\nPoint them at the SDK for their stack — `readmeio` (Node), `readme-metrics` (Python, Ruby),\n`readme/metrics` (PHP), `ReadMe.Metrics` (.NET) — and at `fetch` with id `main/sdks`.\n\n## A different server, when they actually want one\n\nEvery ReadMe project publishes its own MCP server at `https://{subdomain}.readme.io/mcp`, or its\ncustom domain. That is for *their* end users to ask questions of *their* published hub. It is a\nproduct feature they set up deliberately, not a workaround for this conversation, and it is not\nneeded to work on their own docs from here.\n\nA server's hostname decides which project it serves. Enterprise hostnames serve a whole group, so\n`search` and `fetch` there can span several child projects.\n"
}SHA-256 of public snapshot: f94e34fa26188357a345cea261b927f943c4120c094a34247f400362f59775f7