cudaq-docs-mcp
Provides AI agents with version-pinned NVIDIA CUDA-Q documentation, API reference, and runnable examples via MCP, using offline SQLite full-text search. It resolves docs to match the installed cudaq package to avoid version skew.
README
cudaq-docs-mcp
An MCP server that serves NVIDIA CUDA-Q documentation, API reference, and runnable examples to AI agents: version-pinned to the cudaq you actually have installed.
Community project, not affiliated with or endorsed by NVIDIA. CUDA-Q is a trademark of NVIDIA Corporation.
Why
Quantum SDKs move faster than model training data. Ask an AI assistant to write CUDA-Q code and it answers from whatever it memorized: renamed APIs, retired target names, install steps for a version you do not run. The failure is version skew, and it lands where onboarding matters most: the first ten minutes.
This server gives any MCP-capable agent the current answer instead. Documentation search, exact API symbol resolution, complete runnable examples, and a backend-selection guide, all served from an index of the docs that match your installed cudaq package. No API keys and no embeddings: SQLite full-text search with BM25 ranking, on your machine, offline once the index exists.
Quick start
Register the server with your client; on first use it downloads a prebuilt index (a couple of megabytes) automatically. Building locally is only needed for versions without a prebuilt asset:
uvx cudaq-docs-mcp build --version 0.14.0
Claude Code
claude mcp add cudaq-docs -- uvx cudaq-docs-mcp
Claude Desktop (claude_desktop_config.json), Cursor (.cursor/mcp.json), or any client that takes a JSON server map:
{
"mcpServers": {
"cudaq-docs": {
"command": "uvx",
"args": ["cudaq-docs-mcp"]
}
}
}
VS Code (.vscode/mcp.json):
{
"servers": {
"cudaq-docs": {
"type": "stdio",
"command": "uvx",
"args": ["cudaq-docs-mcp"]
}
}
}
Prefer pip? pip install cudaq-docs-mcp and use cudaq-docs-mcp as the command.
Tools
| Tool | What it returns |
|---|---|
search_docs(query, version?, limit?) |
Ranked doc excerpts with breadcrumbs and canonical URLs |
get_page(path, version?) |
One full documentation page as clean markdown |
find_api(name, language?, version?) |
Exact Python or C++ symbol, kind, doc URL, and an excerpt |
search_examples(query, language?, version?, limit?) |
Complete runnable programs from the CUDA-Q repository at the matching release |
list_targets(category?) |
All 24 execution targets: simulators, hardware providers, and clouds, with selection snippets and when-to-use guidance |
Resources: cudaq://versions (installed and indexed versions) and cudaq://llms.txt (CUDA-Q's own llms.txt for the served version).
Version-pinned answers
Every tool resolves its docs version in this order:
- An explicit
versionargument ("0.15.0", "latest") - The installed cudaq package, detected from distribution metadata (cudaq is never imported)
latest
Indexes are per-version. When a pinned index is missing the server says so in the response and serves latest instead, with the one command that fixes it. Skew becomes visible instead of silent.
How it works
CUDA-Q publishes the raw material: a Sphinx inventory (objects.inv) listing every page and API symbol, markdown mirrors of each docs page, a per-version llms.txt, and example sources in the repository. This server builds on that groundwork:
objects.invis the crawl manifest and the API symbol table: no scraping heuristics- each markdown mirror is cleaned of theme chrome, code blocks are rebuilt with their language, and heading anchors are preserved for deep links
- pages are chunked by heading and indexed in SQLite FTS5 (porter stemming, BM25 ranking)
- examples, snippets, and application sources are fetched from the GitHub release tag that matches the docs version
The whole index is one SQLite file per version in your cache directory (cudaq-docs-mcp info shows where). A nightly workflow rebuilds the latest index so refreshes stay a download, not a build.
CLI
cudaq-docs-mcp # serve MCP on stdio (what clients run)
cudaq-docs-mcp build # build the index for your installed cudaq, else latest
cudaq-docs-mcp build --version 0.15.0
cudaq-docs-mcp info # cache location, indexed versions, detected cudaq
Set CUDAQ_DOCS_MCP_AUTOBUILD=1 to build automatically on first use, and CUDAQ_DOCS_MCP_CACHE to relocate the cache.
Roadmap
- Prebuilt indexes for pinned release versions, not just
latest - An eval set of real developer questions, with published retrieval scores
- CUDA-QX library docs
Contributing
Issues and PRs are welcome. Commits need a DCO sign-off (git commit -s); see CONTRIBUTING.md. Built in the open with Claude Code.
License
Apache-2.0. Documentation content belongs to NVIDIA Corporation & Affiliates, originates from the Apache-2.0 licensed NVIDIA/cuda-quantum repository, and every served result links back to the canonical page. See NOTICE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。