Docs MCP server
The documentation site is itself an MCP server. Any Model Context
Protocol client (Claude, IDE agents, custom tooling) can connect to
https://docs.nyuchi.com/mcp (Streamable HTTP transport, JSON-RPC
2.0 over POST) to read these docs and — crucially — write back:
feedback, corrections, and issues flow straight to the docs team.
The endpoint is served by the shamwari-docs-ai Cloudflare Worker (a
path route on the docs domain) and rides the same Cloudflare AI Search
index that powers the Ask-AI tab, so agents and humans read from one
corpus. A server card is published at
/.well-known/mcp/server-card.json for discovery.
| Tool | Kind | What it does |
|---|---|---|
search_docs | read | Keyword/semantic search; returns titles, URLs and snippets |
ask_docs | read | Synthesized answer grounded in the docs, with citations |
read_page | read | Full readable text of any docs.nyuchi.com page |
submit_feedback | write | Correction / confusing / missing / praise — stored for the docs team |
raise_issue | write | Actionable problem; files a GitHub issue on nyuchi/nyuchi-docs when the GITHUB_TOKEN secret is configured, otherwise queued |
Write tools are unauthenticated by design (feedback friction kills
feedback) but bounded: message sizes are capped, everything is tagged
via: mcp, and queued items land in the shamwari-docs-feedback KV
namespace for triage.
Connecting
Section titled “Connecting”Stdio clients — via the published npm bridge
(nyuchi-docs-mcp):
claude mcp add nyuchi-docs -- npx nyuchi-docs-mcpThe server is listed on the official MCP registry as
io.github.nyuchi/nyuchi-docs (manifest: server.json at the
repo root), so registry-aware clients can install it by name.
Claude (or any MCP client that supports Streamable HTTP) can skip the package and connect directly:
{ "mcpServers": { "nyuchi-docs": { "type": "http", "url": "https://docs.nyuchi.com/mcp" } }}Or probe it by hand:
curl -s https://docs.nyuchi.com/mcp \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Operations
Section titled “Operations”- Code:
shamwari-docs-ai/src/mcp.ts(tests intests/mcp.test.ts); the npm stdio bridge lives innyuchi-docs-mcp/. - Releases: publish a GitHub release (tag
mcp-vX.Y.Z) — thepublish-mcp.ymlworkflow tests the bridge, publishesnyuchi-docs-mcpto npm (NPM_TOKENsecret), and publishesserver.jsonto the MCP registry via GitHub OIDC. Keep the version innyuchi-docs-mcp/package.jsonandserver.jsonin lockstep — the workflow enforces it. - Routing:
wrangler.tomlroutesdocs.nyuchi.com/mcp*to the worker; the static docs site worker keeps every other path. The worker is also reachable atshamwari-docs-ai.nyuchi.workers.dev/mcp. - Feedback triage:
wrangler kv key list --namespace-id 9c5af0b28d5c4706840c492b2e3f47e8(keys arefeedback:<iso-ts>:<id>andissue:<iso-ts>:<id>). - GitHub issues: set the optional secret once —
wrangler secret put GITHUB_TOKEN(needsissues:writeonnyuchi/nyuchi-docs) — andraise_issuefiles real issues labeleddocs-feedback+via-mcp.