Documentation Hub MCP Server

Documentation Hub MCP Server

deep-poharkar

研究与数据
访问服务器

README

Documentation Hub MCP 服务器

一个用于跨多个技术领域进行智能文档检索的模型上下文协议 (MCP) 服务器。

概述

本项目实现了一个 MCP 服务器,为技术查询提供有针对性的文档检索。它使用混合方法来:

  1. 确定查询的技术领域(React、Node.js、Python)
  2. 从查询中提取特定主题
  3. 构建精确的文档 URL
  4. 获取并返回最相关的文档

该服务器使用 TypeScript 和 MCP SDK 构建,为 AI 模型提供了一个访问文档资源的标准化接口。

特性

  • 领域分类: 自动识别查询是关于 React、Node.js、Python 还是通用主题
  • 主题提取: 使用正则表达式模式匹配来识别查询中的特定技术概念
  • URL 构建: 基于识别的主题构建有针对性的文档 URL
  • 多文档来源: 支持来自 React、Node.js、Python 的文档,并且可以扩展到其他领域
  • 标准化接口: 实现模型上下文协议,以便与 MCP 兼容的客户端进行互操作

安装

# 克隆仓库
git clone https://github.com/yourusername/mcp-server.git
cd mcp-server

# 安装依赖
npm install

# 构建项目
npm run build

使用

运行服务器

node build/index.js

测试主题提取

该项目包含一个测试脚本,用于演示主题提取和 URL 构建的工作方式:

# 构建测试脚本
npx tsc src/test.ts --outDir build

# 运行测试
node build/test.js

与客户端集成

该服务器可以与任何 MCP 兼容的客户端集成。以下是一个客户端如何与服务器交互的示例:

// 示例客户端代码(不包含在此项目中)
const client = new McpClient();
const result = await client.callTool("fetch-documentation", {
  query: "How do I use useState hook in React?",
});

console.log(result);
// 输出: {
//   domain: "react-docs",
//   topics: ["useState", "state"],
//   specificUrl: "https://react.dev/reference/react/useState",
//   content: "...",
//   source: "https://react.dev/reference/react/useState"
// }

项目结构

  • src/index.ts - 主要服务器实现
  • src/test.ts - 用于主题提取和 URL 构建的测试脚本
  • build/ - 编译后的 JavaScript 输出
  • package.json - 项目配置和依赖项

可用工具

服务器公开以下工具:

determine-domain

确定查询属于哪个技术领域。

{
  query: string; // 要分类的用户查询
}

返回:

{
  domain: string; // 识别的领域
  confidence: string; // "high" 或 "low"
}

extract-topics

从给定领域的查询中提取特定主题。

{
  query: string; // 要分析的用户查询
  domain: string; // 要提取主题的技术领域
}

返回:

{
  topics: string[]; // 识别的主题数组
  count: number; // 找到的主题数量
}

fetch-documentation

根据查询和领域获取文档。

{
  query: string; // 用户查询
  domain?: string; // 可选的领域覆盖
}

返回:

{
  domain: string; // 识别的领域
  topics: string[]; // 识别的主题数组
  specificUrl: string | null; // 如果可用,则为构建的 URL
  content: string; // 获取的文档内容
  source: string; // 源 URL
}

可用资源

服务器提供以下文档资源:

  • react-docs - React.js 文档
  • node-docs - Node.js 文档
  • python-docs - Python 文档
  • general - 领域不明确时的通用文档

扩展服务器

添加新领域

要添加对新技术领域的支持:

  1. 将领域关键字添加到 determineDomain 函数中的 domainKeywords 对象
  2. 将主题模式添加到 extractTopics 函数中的 topicPatterns 对象
  3. 将 URL 构建逻辑添加到 constructSpecificUrl 函数
  4. 在服务器配置中添加新的资源处理程序

改进主题提取

可以通过以下方式改进主题提取:

  1. 增强现有主题的正则表达式模式
  2. 将新主题添加到现有领域
  3. 实施更复杂的 NLP 技术进行主题提取

许可证

MIT

贡献

欢迎贡献!请随时提交 Pull Request。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python