GitHub文档中心化服务

GitMCP是一个免费开源的远程模型上下文协议服务器,将GitHub项目转化为文档中心,为AI工具提供最新文档和代码访问,减少幻觉代码生成。

  • by wei-rong-1
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 wei-rong-1/git-mcp

使用说明

GitMCP 的

What is GitMCP • Features • Getting Started • How It Works • Badge • Examples • FAQ • Privacy • Contributing • License

🤔 什么是GitMCP?

停止振动幻觉,开始振动编码!

GitMCP 的 是一个免费、开源、远程 模型上下文协议(MCP) 转换的服务器 任何 将GitHub项目(存储库或GitHub页面)转换为文档中心。它使Cursor等人工智能工具能够访问最新的文档和代码,即使LLM从未遇到过它们,从而无缝地消除了代码幻觉。

GitMCP支持 两种口味 -

  • 特定存储库(gitmcp.io/{owner}/{repo} 或 {owner}.gitmcp.io/{repo}): 当您主要使用选定数量的库时,请使用这些库。这确保了您的AI助手始终针对正确的项目,通过防止访问意外的存储库来增强安全性和相关性。
  • 通用服务器(gitmcp.io/docs): 当您需要频繁地在不同的存储库之间切换时,使用此选项可获得最大的灵活性。AI助手将提示您(或根据上下文决定)为每个请求访问哪个存储库。请注意,这依赖于每次正确识别目标存储库。

使用GitMCP:

  • AI助手访问 最新 直接从源代码获取文档和代码。
  • 获取准确的API用法和可靠的代码示例。
  • 即使在小众、新的或快速变化的库中也能有效地工作。
  • 显著减少幻觉,提高代码正确性。

例如,这种并排比较显示了创建光标时光标中相同单次提示的结果 three.js 场景-

https://github.com/user-attachments/assets/fbf1b4a7-f9f0-4c0e-831c-4d64faae2c45

✨ 特性

  • 😎 任何GitHub项目的最新文档:允许您的AI助手无缝访问GitHub项目的文档和代码。内置的智能搜索功能有助于在不使用太多令牌的情况下准确找到AI所需的内容!
  • 🧠 不再有幻觉:使用GitMCP,您的AI助手可以为您的问题提供准确和相关的答案。
  • ☁️ 零设置GitMCP在云端运行。只需将所选的GitMCP URL作为MCP服务器添加到IDE中即可,无需下载、安装、注册或更改。
  • 💬 嵌入式聊天:通过我们的浏览器内聊天直接与存储库的文档聊天,快速开始!
  • ✅ 开放、免费、私密GitMCP是开源的,完全免费使用。它不会收集个人信息或存储查询。你甚至可以自己主持它!

🚀 入门指南

使用GitMCP很简单!只需按照以下步骤操作:

步骤1:选择您想要的服务器类型

根据您要连接的内容,选择以下URL格式之一:

  • 对于GitHub存储库: gitmcp.io/{owner}/{repo}
  • 对于GitHub Pages网站: {owner}.gitmcp.io/{repo}
  • 对于支持任何存储库(动态)的通用工具: gitmcp.io/docs

替换 {owner} GitHub用户名或组织名称,以及 {repo} 使用存储库名称。

为了您的方便,您还可以使用登录页面上的转换工具将GitHub URL格式化为MCP URL!

第二步:连接你的AI助手

从以下选项中选择您的AI助手,并按照配置说明进行操作:

连接光标

在以下位置更新您的Cursor配置文件 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "gitmcp": {
      "url": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

连接克劳德桌面

  1. 在Claude Desktop中,转到“设置”>“开发人员”>“编辑配置”
  2. 将配置替换为:
    {
      "mcpServers": {
        "gitmcp": {
          "command": "npx",
          "args": [
            "mcp-remote",
            "https://gitmcp.io/{owner}/{repo}"
          ]
        }
      }
    }
    

连接Windsurf

更新您的Windsurf配置文件 ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "gitmcp": {
      "serverUrl": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

连接VSCode

在以下位置更新您的VSCode配置文件 .vscode/mcp.json:

{
  "servers": {
    "gitmcp": {
      "type": "sse",
      "url": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

连接Cline

更新您的Cline配置文件 ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{
  "mcpServers": {
    "gitmcp": {
      "url": "https://gitmcp.io/{owner}/{repo}",
      "disabled": false,
      "autoApprove": []
    }
  }
}

连接高亮AI

  1. 打开Highlight AI,点击侧边栏中的插件图标(@符号)
  2. 点击 已安装的插件 在侧边栏的顶部
  3. 选择 自定义插件
  4. 点击 使用自定义SSE URL添加插件

插件名称: gitmcp SSE网址: https://gitmcp.io/{owner}/{repo}

有关向HighlightAI添加自定义MCP服务器的更多详细信息,请参阅 文件.

连接增强代码

  1. 打开增强代码设置
  2. 导航到MCP部分
  3. 添加具有以下详细信息的新MCP服务器:

命名MCP服务器: git-mcp Docs

使用此命令:

npx mcp-remote https://gitmcp.io/{owner}/{repo}

或者使用以下配置:

{
  "mcpServers": {
    "git-mcp Docs": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://gitmcp.io/{owner}/{repo}"
      ]
    }
  }
}

连接Msty AI

  1. 打开Msty工作室
  2. 转到“工具”>“从JSON剪贴板导入工具”
  3. 粘贴以下配置:
{
  "mcpServers": {
    "git-mcp Docs": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://gitmcp.io/{owner}/{repo}"
      ]
    }
  }
}

有关在增强代码中配置MCP服务器的更多详细信息,请访问 增强代码文档.

注: 记得更换 {owner} 和 {repo} 使用实际的GitHub用户名/组织和存储库名称。您还可以使用动态端点 https://gitmcp.io/docs 允许您的AI按需访问任何存储库。

⚙ 运作原理

GitMCP使用模型上下文协议(MCP)将您的AI助手连接到GitHub存储库,MCP是一种允许AI工具从外部来源请求额外信息的标准。

使用GitMCP时会发生什么:

  1. 您提供GitMCP URL 您的AI助手(例如。, gitmcp.io/microsoft/typescript).GitMCP公开了文档获取、智能搜索、代码搜索等工具。
  2. 提示AI助手 关于文档/代码相关问题。
  3. 您的AI发送请求 GitMCP使用其工具(经您批准)。
  4. GitMCP执行AI的请求 并返回所请求的数据。
  5. 您的AI接收信息 并产生更准确、更可靠的反应,而不会产生幻觉。

支持的文档

GitMCP目前支持以下文档(按优先级顺序):

  1. llms.txt
  2. 项目文档的AI优化版本
  3. README.md/根

💡 例子

以下是一些如何将GitMCP与不同的AI助手和存储库一起使用的示例:

示例1:在特定存储库中使用Windsurf

对于GitHub存储库 https://github.com/microsoft/playwright-mcp,添加 https://gitmcp.io/microsoft/playwright-mcp 作为Windsurf的MCP服务器。

提示克劳德:

“我如何使用剧作家MCP”

Windsurf将从GitMCP中提取相关文档,以正确实现内存功能。

示例2:在GitHub Pages网站上使用Cursor

对于GitHub Pages网站 langchain-ai.github.io/langgraph,添加 https://langchain-ai.gitmcp.io/langgraph 作为Cursor的MCP服务器。

光标提示:

“为我的LangGraph代理添加内存”

Cursor将从GitMCP中提取相关文档和代码,以正确实现内存功能。

示例3:使用带有动态端点的Claude Desktop

您不必选择特定的存储库。通用的 gitmcp.io/docs 端点允许AI动态选择GitHub项目!

向任何AI助手提示:

“我想了解OpenAI Whisper语音识别模型。解释一下它是如何工作的。

Claude将从GitMCP中提取数据并回答问题。

🛠️ 工具

GitMCP为AI助手提供了几个有价值的工具,帮助他们访问、理解和查询GitHub存储库。

fetch_<repo-name>_documentation

此工具从GitHub存储库获取主要文档。它通过检索相关文档(例如。, llms.txt).这让人工智能很好地了解了该项目的内容

当它有用时: 有关项目目的、功能或如何开始的一般问题

search_<repo-name>_documentation

该工具允许AI通过提供特定的搜索查询来搜索存储库的文档。它使用智能搜索只查找相关部分,而不是加载所有文档(可能非常大)。

当它有用时: 关于项目中特定特征、功能或概念的具体问题

fetch_url_content

该工具帮助AI从文档中提到的链接中获取信息。它从这些链接中检索内容,并将其转换为AI可以轻松阅读的格式。

当它有用时: 当文档引用有助于回答您问题的外部信息时

search_<repo-name>_code

此工具使用GitHub的代码搜索来搜索存储库中的实际代码。它帮助AI找到特定的代码示例或实现细节。

当它有用时: 当你想要一些如何实现的例子,或者需要文档中没有涵盖的技术细节时

注: 使用动态端点时(gitmcp.io/docs),这些工具的名称略有不同(fetch_generic_documentation, search_generic_code,以及 search_generic_documentation)并且需要关于访问哪个存储库的附加信息。

📊 徽章

GitMCP在存储库的README中有一个徽章。它允许用户通过IDE或浏览器(使用嵌入式聊天)快速访问您的文档。它还展示了您的文档通过GitMCP被访问的次数。

示例(idosal/git-mcp):

将徽章添加到您的存储库

将以下内容添加到您的 README.md:

[![GitMCP](https://img.shields.io/endpoint?url=https://gitmcp.io/badge/OWNER/REPO)](https://gitmcp.io/OWNER/REPO)

替换 OWNER 使用您的GitHub用户名或组织,以及 REPO 使用您的存储库名称。

我们如何计算视图

特定存储库上每次工具调用的增量。

自定义徽章

您可以使用参数自定义徽章的外观:

参数 说明 默认值 示例
color 徽章值的颜色 aquamarine ?color=green
label 徽章标签 GitMCP Documentation

请联系我们!

❓ 常见问题解答

什么是模型上下文协议?

这 模型上下文协议 是一个标准,允许人工智能助手以结构化的方式从外部来源请求和接收额外的上下文,增强他们的理解和性能。

GitMCP可以与任何AI助手一起使用吗?

是的,GitMCP与任何支持模型上下文协议的AI助手兼容,包括Cursor、VSCode、Claude等工具。

GitMCP是否与所有GitHub项目兼容?

当然!GitMCP适用于任何公共GitHub存储库,无需任何修改。它优先考虑 llms.txt 文件并回退到 README.md 或其他页面(如果前者不可用)。未来的更新旨在支持其他文档方法,甚至动态生成内容。

GitMCP需要花钱吗?

不,GitMCP是一项免费的社区服务,没有相关费用。

🔒 隐私

GitMCP坚定地致力于保护用户的隐私。该服务无法访问或存储任何个人身份信息,因为它不需要身份验证。此外,它不存储代理发送的任何查询。此外,由于GitMCP是一个开源项目,它可以在您的环境中独立部署。

GitMCP只访问已经公开的内容,并且只有在用户查询时才能访问。GitMCP不会自动抓取存储库。在访问任何GitHub Pages网站之前,代码会检查 robots.txt 规则并遵循网站所有者设定的指令,允许他们选择退出。请注意,GitMCP不会永久存储有关GitHub项目或其内容的数据。

👥 贡献

我们欢迎贡献、反馈和想法!请查看我们的 贡献 指导方针。

地方发展设置

  1. 克隆存储库

    git clone https://github.com/idosal/git-mcp.git
    cd git-mcp
    
  2. 安装依赖项

    pnpm install
    
  3. 在本地运行以进行开发

    npm run dev
    # or
    pnpm dev
    

使用MCP检查器进行测试

  1. 安装MCP检查器工具:

    npx @modelcontextprotocol/inspector
    
  2. 在检查器界面中:

    • 将传输类型设置为 SSE
    • 输入您的GitMCP URL(例如。, http://localhost:5173/docs)
    • 点击“连接”

📄 许可证

该项目根据 Apache许可证2.0.

免责声明

GitMCP按“原样”提供,不提供任何形式的保证。虽然我们努力确保服务的可靠性和安全性,但我们不对使用服务可能造成的任何损害或问题负责。通过GitMCP访问的GitHub项目受其各自所有者的条款和条件的约束。GitMCP与GitHub或任何上述AI工具无关。

星史