MCP 服务器是一个强大的工具,可用于加载、管理和搜索各类文档。它支持自动加载文档、内置爬虫功能,还提供了丰富的工具接口,能有效提升文档处理的效率。
使用 Node.js 安装 MCP 服务器,可按以下步骤操作:
git clone [仓库地址]
cd mcp-server
npm install
运行以下命令启动 MCP 服务器:
node server.js
默认情况下,服务器将在 http://localhost:3000 启动。
docs 目录中的所有 JSON 文件。url 字段。系统内置爬虫支持从各类框架的官方文档站点抓取内容并转换为本地可用格式。其特性如下:
MCP 服务器提供以下实用工具:
search_docs - 文档搜索:可根据关键词搜索文档,还能通过特定参数控制搜索范围和结果数量。当 query 为 "reload" 时,可触发文档重新加载。get_doc_detail - 获取文档详情:根据文档 ID 获取文档的详细信息。使用 Node.js 安装 MCP 服务器:
git clone [仓库地址]
cd mcp-server
npm install
// 搜索文档
const searchRequest = {
jsonrpc: "2.0",
id: "search1",
method: "tools/call",
params: {
name: "search_docs",
arguments: {
query: "组件",
source: "taro",
limit: 5
}
}
};
// 获取文档详情
const detailRequest = {
jsonrpc: "2.0",
id: "detail1",
method: "tools/call",
params: {
name: "get_doc_detail",
arguments: {
id: "https://docs.taro.zone/docs/components"
}
}
};
文档文件应为 JSON 格式,包含以下结构:
{
"source": {
"name": "taro",
"url": "https://docs.taro.zone/docs"
},
"lastUpdated": "2024-03-27T12:00:00Z",
"pages": {
"https://docs.taro.zone/docs/components-desc": {
"title": "组件库说明 | Taro 文档",
"content": "页面内容..."
},
// 更多页面...
}
}
在 config.json 中添加以下内容以配置爬虫:
{
"crawlers": {
"taro": {
"url": "https://docs.taro.zone/docs",
"include": ["components", "tutorial"],
"exclude": ["deprecated"]
}
}
}
search_docs - 文档搜索query: 搜索关键词 (字符串, 必须)source: 文档源名称 (字符串, 可选)limit: 最大结果数量 (数字, 可选, 默认为 10)query 为 "reload" 时,触发文档重新加载。get_doc_detail - 获取文档详情id: 文档 ID (字符串, 必须)source: 文档源名称 (字符串, 可选)在 config.json 中配置 MCP 服务器:
{
"port": 3000,
"sources": {
"taro": {
"url": "https://docs.taro.zone/docs",
"token": "your_token_here"
}
}
}
在 docs 目录中创建一个名为 example.json 的文件:
{
"source": {
"name": "test",
"url": "http://localhost/test-docs"
},
"lastUpdated": "2024-03-27T12:00:00Z",
"pages": {
"/test": {
"title": "测试页面",
"content": "这是一个测试文档。"
}
}
}
使用 curl 命令发送请求:
curl http://localhost:3000 -d '{"jsonrpc":"2.0","id":"search1","method":"tools/call","params":{"name":"search_docs", "arguments":{"query":"test"}}}'
查看 logs 目录中的日志文件以获取更多信息。