⚠️ 重要通知:此服务器目前无法工作,因为DeepWiki已切断了抓取的可能性。我们建议暂时使用官方的DeepWiki MCP服务器,地址为 https://docs.devin.ai/work-with-devin/deepwiki-mcp。
这是一个非官方的Deepwiki MCP服务器。
它通过MCP接收一个Deepwiki URL,爬取所有相关页面,将其转换为Markdown,并返回一个文档或按页列出。
可以使用的提示:
deepwiki fetch 如何使用 gpt-image-1 和 "vercel ai" SDK
deepwiki fetch 如何在 shadcn 中创建新块
deepwiki fetch 我想理解 X 是如何工作的
获取完整的文档(默认)
use deepwiki https://deepwiki.com/shadcn-ui/ui
use deepwiki multiple pages https://deepwiki.com/shadcn-ui/ui
单个页面
use deepwiki fetch single page https://deepwiki.com/tailwindlabs/tailwindcss/2.2-theme-system
通过简短形式获取
use deepwiki fetch tailwindlabs/tailwindcss
deepwiki fetch 库
deepwiki fetch URL
deepwiki fetch <name>/<repo>
deepwiki 多个页面...
deepwiki 单个页面 URL...
将以下内容添加到 .cursor/mcp.json 文件中。
{
"mcpServers": {
"mcp-deepwiki": {
"command": "npx",
"args": ["-y", "mcp-deepwiki@latest"]
}
}
}

该包注册了一个名为 deepwiki_fetch 的工具,你可以与任何兼容MCP的客户端一起使用:
{
"action": "deepwiki_fetch",
"params": {
"url": "https://deepwiki.com/user/repo",
"mode": "aggregate",
"maxDepth": "1"
}
}
url(必需):Deepwiki 存储库的起始 URLmode(可选):输出模式,"aggregate" 为单个 Markdown 文档(默认),"pages" 为结构化页面数据maxDepth(可选):要爬取的最大页面深度(默认:10){
"status": "ok",
"data": "# 页面标题\n\n页面内容...\n\n---\n\n# 另一页\n\n更多内容...",
"totalPages": 5,
"totalBytes": 25000,
"elapsedMs": 1200
}
{
"status": "ok",
"data": [
{
"path": "index",
"markdown": "# 主页\n\n欢迎来到存储库。"
},
{
"path": "section/page1",
"markdown": "# 第一页\n\n这是第一页的内容。"
}
],
"totalPages": 2,
"totalBytes": 12000,
"elapsedMs": 800
}
{
"status": "error",
"code": "DOMAIN_NOT_ALLOWED",
"message": "只允许 deepwiki.com 域名"
}
{
"status": "partial",
"data": "# 页面标题\n\n页面内容...",
"errors": [
{
"url": "https://deepwiki.com/user/repo/page2",
"reason": "HTTP 错误:404"
}
],
"totalPages": 1,
"totalBytes": 5000,
"elapsedMs": 950
}
使用该工具时,在爬取过程中会收到进度事件:
已抓取 https://deepwiki.com/user/repo: 12500 字节,耗时 450 毫秒(状态:200)
已抓取 https://deepwiki.com/user/repo/page1: 8750 字节,耗时 320 毫秒(状态:200)
已抓取 https://deepwiki.com/user/repo/page2: 6200 字节,耗时 280 毫秒(状态:200)
{
"mcpServers": {
"mcp-deepwiki": {
"command": "node",
"args": ["./bin/cli.mjs"]
}
}
}
# 克隆仓库
git clone https://github.com/regenrek/deepwiki-mcp.git
cd deepwiki-mcp
# 安装依赖
npm install
# 构建包
npm run build
对于 HTTP 传输,你可以直接调用 API:
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"id": "req-1",
"action": "deepwiki_fetch",
"params": {
"url": "https://deepwiki.com/user/repo",
"mode": "aggregate"
}
}'
DEEPWIKI_MAX_CONCURRENCY:最大并发请求数(默认:5)DEEPWIKI_REQUEST_TIMEOUT:请求超时时间(毫秒,默认:30000)DEEPWIKI_MAX_RETRIES:失败请求的最大重试次数(默认:3)DEEPWIKI_RETRY_DELAY:重试回退的基本延迟(毫秒,默认:250)要配置这些,请在项目根目录创建一个 .env 文件:
DEEPWIKI_MAX_CONCURRENCY=10
DEEPWIKI_REQUEST_TIMEOUT=60000
DEEPWIKI_MAX_RETRIES=5
DEEPWIKI_RETRY_DELAY=500
构建并运行 Docker 镜像:
# 构建镜像
docker build -t mcp-deepwiki .
# 使用 stdio 传输运行(开发)
docker run -it --rm mcp-deepwiki
# 使用 HTTP 传输运行(生产)
docker run -d -p 3000:3000 mcp-deepwiki --http --port 3000
# 使用环境变量运行
docker run -d -p 3000:3000 \
-e DEEPWIKI_MAX_CONCURRENCY=10 \
-e DEEPWIKI_REQUEST_TIMEOUT=60000 \
mcp-deepwiki --http --port 3000
# 安装依赖
pnpm install
# 在开发模式下使用 stdio 运行
pnpm run dev-stdio
# 运行测试
pnpm test
# 运行 linter
pnpm run lint
# 构建包
pnpm run build
权限被拒绝:如果运行 CLI 时遇到 EACCES 错误,请确保二进制文件具有可执行权限:
chmod +x ./node_modules/.bin/mcp-deepwiki
连接被拒绝:确保端口可用且未被防火墙阻止:
# 检查端口是否已被占用
lsof -i :3000
超时错误:对于大型存储库,考虑增加超时时间和并发数:
DEEPWIKI_REQUEST_TIMEOUT=60000 DEEPWIKI_MAX_CONCURRENCY=10 npx mcp-deepwiki
我们欢迎贡献!请参阅 CONTRIBUTING.md 获取详情。
MIT