使用说明
多提供商文档MCP服务器
一个用Rust编写的模型上下文协议(MCP)服务器,可以直接在AI编码助手中从多个来源无缝访问开发人员文档。
支持的文档提供商
| 提供商 | 描述 | 技术 |
|---|---|---|
| 苹果 | iOS/macOS开发 | SwiftUI、UIKit、Foundation、CoreML、Vision和60多个框架 |
| 锈 | Rust文档 | std、core、alloc+docs.rs中的任何crate |
| 电报 | Bot API文档 | 方法、类型和参数 |
| TON | 区块链API | REST端点和架构 |
| 茧 | 机密计算 | 架构和智能合约 |
| MDN | Web开发 | JavaScript、TypeScript、Web API、DOM |
| web框架 | 前端/后端 | React、Next.js、Node.js |
| MLX | 苹果Silicon ML | MLXArray、MLXNN、MLX优化器(Swift和Python) |
| 拥抱脸 | LLM/AI开发 | 变压器、快速变压器、模型卡 |
快速开始
构建Rust二进制文件(需要Rust 1.76+):
cargo build --release
配置您的MCP客户端:
{
"mcpServers": {
"docs-mcp": {
"command": "/absolute/path/to/target/release/docs-mcp-cli"
}
}
}
对于当地发展:
cargo run -p docs-mcp-cli
用法
服务器公开了一个统一的 query 自动检测适当提供者并返回全面文档的工具。
自然语言查询
简单描述一下你在找什么:
query { "query": "SwiftUI NavigationStack" }
query { "query": "Rust tokio spawn async" }
query { "query": "Telegram sendMessage parameters" }
query { "query": "JavaScript Array map filter" }
query { "query": "React useState hook" }
query { "query": "Next.js server components" }
query { "query": "Node.js fs readFile" }
如何查询
提出实施问题:
query { "query": "how to use SwiftUI NavigationStack" }
query { "query": "how to implement tab navigation in SwiftUI" }
提供商自动检测
查询工具会根据关键字自动路由到正确的提供者:
- 苹果:SwiftUI、UIKit、iOS、macOS、Foundation、CoreData等。
- 锈:std、tokio、serde、HashMap、Vec、async等。
- 电报:bot、sendMessage、getUpdates、webhook等。
- TON:区块链、钱包、捷顿、tonapi等。
- 茧:机密计算、TDX、认证等。
- MDN:JavaScript、JS、DOM、fetch、promise、array等。
- 反应:钩子、useState、useEffect、组件、JSX等。
- Next.js:nextjs、应用路由器、服务器组件等。
- Node.js:nodejs、fs、path、http、stream等。
- MLX:mlx、mlxarray、mlxnn、苹果硅、mlexplore等。
- 拥抱脸:拥抱面、变压器、汽车模型、自动加油机等。
所得
对于每个查询,该工具返回:
- 完整的文档内容 (未截断摘要)
- 代码示例 随时可用
- 声明/签名 供API参考
- 参数 附描述
- 平台可用性 信息
- 相关API 进一步探索
提供商特定示例
苹果(SwiftUI、UIKit等)
query { "query": "SwiftUI Button styling" }
query { "query": "UIKit TableView delegate" }
query { "query": "CoreData fetch request" }
锈
query { "query": "Rust HashMap insert" }
query { "query": "tokio spawn async task" }
query { "query": "serde serialize struct" }
电报机器人API
query { "query": "telegram sendMessage" }
query { "query": "telegram bot webhook" }
query { "query": "telegram inline keyboard" }
TON区块链
query { "query": "TON wallet address" }
query { "query": "TON jetton transfer" }
茧
query { "query": "Cocoon TDX attestation" }
query { "query": "Cocoon confidential computing" }
MDN Web文档
query { "query": "JavaScript Array map" }
query { "query": "fetch API POST request" }
query { "query": "Promise async await" }
query { "query": "DOM querySelector" }
反应
query { "query": "React useState hook" }
query { "query": "React useEffect cleanup" }
query { "query": "React useContext provider" }
query { "query": "React memo performance" }
Next.js
query { "query": "Next.js server components" }
query { "query": "Next.js App Router layout" }
query { "query": "Next.js API routes" }
query { "query": "Next.js middleware" }
Node.js
query { "query": "Node.js fs readFile" }
query { "query": "Node.js http server" }
query { "query": "Node.js path join" }
query { "query": "Node.js stream pipe" }
MLX(苹果硅ML)
query { "query": "MLX array operations Swift" }
query { "query": "MLX neural network layers" }
query { "query": "mlx.core array Python" }
query { "query": "MLX optimizers SGD" }
拥抱脸
query { "query": "Hugging Face AutoModel" }
query { "query": "transformers AutoTokenizer" }
query { "query": "swift-transformers Hub" }
query { "query": "Hugging Face pipeline" }
搜索提示
- 使用自然语言查询以获得最佳结果
- 包括技术名称以进行精确匹配(例如,“SwiftUI按钮”而不仅仅是“按钮”)
- 尝试如何查询实施指南
- 使用
maxResults控制结果计数的参数
环境变量
| 变量 | 目的 |
|---|---|
DOCSMCP_CACHE_DIR |
覆盖磁盘缓存位置 |
DOCSMCP_HEADLESS |
设置为 1 跳过stdio传输(测试) |
RUST_LOG |
控制日志记录(info, debug, trace) |
建筑
├── apps/cli/ # CLI entry point
├── crates/
│ ├── docs-mcp-client/ # Apple documentation API client
│ ├── docs-mcp-core/ # MCP tools, state, services
│ ├── docs-mcp/ # MCP protocol bootstrap
│ └── multi-provider-client/ # All provider clients
│ ├── telegram/ # Telegram Bot API
│ ├── ton/ # TON Blockchain
│ ├── cocoon/ # Cocoon confidential computing
│ ├── rust/ # Rust std + docs.rs
│ ├── mdn/ # MDN Web Docs
│ ├── web_frameworks/ # React, Next.js, Node.js
│ ├── mlx/ # MLX Apple Silicon ML
│ └── huggingface/ # Hugging Face Transformers
发展
# Build
cargo build --release
# Run tests
cargo test
# Lint
cargo clippy --all-targets
# Test MCP handshake and query tool
printf '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}},"id":1}\n{"jsonrpc":"2.0","method":"notifications/initialized","params":{}}\n{"jsonrpc":"2.0","method":"tools/call","params":{"name":"query","arguments":{"query":"SwiftUI Button"}},"id":2}\n' | ./target/release/docs-mcp-cli
许可证
有关详细信息,请参阅LICENSE文件。