免費開源的遠端 MCP 伺服器,將任何 GitHub 專案轉換為文件中心,讓 AI 工具能夠存取最新文件和程式碼,消除程式碼幻覺
GitMCP 專案詳細介紹
🚀 專案概述
GitMCP 是一個免費、開源的遠端模型上下文協定 (Model Context Protocol, MCP) 伺服器,能夠將任何 GitHub 專案(儲存庫或 GitHub Pages)轉換為文件中心。它使 AI 工具如 Cursor 能夠存取最新的文件和程式碼,即使大型語言模型 (LLM) 從未遇到過這些內容,從而無縫地消除程式碼幻覺。
核心特色
- 😎 任何 GitHub 專案的最新文件:為 AI 助理提供對 GitHub 專案文件和程式碼的無縫存取,內建智慧搜尋功能協助找到 AI 所需的確切內容
- 🧠 消除幻覺:使用 GitMCP,AI 助理可以提供準確且相關的答案
- ☁️ 零配置:GitMCP 在雲端運行,只需在 IDE 中新增 GitMCP URL 作為 MCP 伺服器即可
- 💬 嵌入式聊天:透過瀏覽器內聊天直接與儲存庫文件對話
- ✅ 開放、免費且私密:完全開源免費使用,不收集個人資訊或儲存查詢,支援自行託管
🛠️ 工作原理
GitMCP 使用模型上下文協定 (MCP) 標準連接 AI 助理和 GitHub 儲存庫,該標準允許 AI 工具從外部來源請求額外資訊。
工作流程:
- 向 AI 助理提供 GitMCP URL(例如:
gitmcp.io/microsoft/typescript
) - GitMCP 暴露文件獲取、智慧搜尋、程式碼搜尋等工具
- 向 AI 助理詢問文件/程式碼相關問題
- AI 助理向 GitMCP 發送請求使用其工具(需要您的批准)
- GitMCP 執行 AI 的請求並返回所需資料
- AI 助理接收資訊並生成更準確、有根據的回應,無幻覺
📋 支援的文件格式
GitMCP 目前按優先順序支援以下文件:
llms.txt
- AI 優化版本的專案文件README.md
/root
目錄下的其他文件
🔧 配置方式
URL 格式選擇
根據需要連接的內容選擇以下 URL 格式之一:
- GitHub 儲存庫:
gitmcp.io/{owner}/{repo}
- GitHub Pages 網站:
{owner}.gitmcp.io/{repo}
- 通用工具(支援任何儲存庫,動態):
gitmcp.io/docs
AI 工具配置範例
Cursor 配置
更新 ~/.cursor/mcp.json
文件:
{
"mcpServers": {
"gitmcp": {
"url": "https://gitmcp.io/{owner}/{repo}"
}
}
}
Claude Desktop 配置
在設定 > 開發者 > 編輯配置中替換配置:
{
"mcpServers": {
"gitmcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://gitmcp.io/{owner}/{repo}"
]
}
}
}
Windsurf 配置
更新 ~/.codeium/windsurf/mcp_config.json
文件:
{
"mcpServers": {
"gitmcp": {
"serverUrl": "https://gitmcp.io/{owner}/{repo}"
}
}
}
🔨 可用工具
1. 獲取文件 (fetch_documentation)
從 GitHub 儲存庫獲取主要文件,透過檢索相關文件(如llms.txt
)為 AI 提供專案概覽。
適用場景:關於專案目的、功能或入門指南的一般性問題
2. 搜尋文件 (search_documentation)
讓 AI 透過特定搜尋查詢在儲存庫文件中搜尋,使用智慧搜尋找到相關部分而不是載入所有文件。
適用場景:關於專案內特定功能、函數或概念的具體問題
3. 獲取連結內容 (fetch_link_content)
協助 AI 從文件中提及的連結獲取資訊,檢索這些連結的內容並轉換為 AI 易讀的格式。
適用場景:當文件引用有助於回答問題的外部資訊時
4. 搜尋程式碼 (search_code)
使用 GitHub 的程式碼搜尋功能在儲存庫的實際程式碼中搜尋,協助 AI 找到特定程式碼範例或實作細節。
適用場景:需要實作範例或文件未涵蓋的技術細節時
📊 徽章整合
GitMCP 提供儲存庫徽章,允許使用者透過 IDE 或瀏覽器快速存取文件,並展示透過 GitMCP 存取文件的次數。
新增徽章
在 README.md 中新增以下程式碼:
[](https://gitmcp.io/OWNER/REPO)
徽章自訂參數
參數 | 描述 | 預設值 | 範例 |
---|---|---|---|
color |
徽章值的顏色 | aquamarine | ?color=green |
label |
徽章標籤 | GitMCP | Documentation |
🛡️ 隱私與安全
- 隱私承諾:GitMCP 深度關注使用者隱私,不需要身份驗證,無法存取或儲存任何個人身份資訊
- 查詢不儲存:不儲存代理發送的任何查詢
- 開源透明:作為開源專案,可在您的環境中獨立部署
- 按需存取:僅存取已公開可用的內容,且僅在使用者查詢時存取
- 遵循規則:存取 GitHub Pages 網站前檢查 robots.txt 規則並遵循網站所有者設定的指令
🚦 使用限制
GitMCP 僅在被查詢時存取內容,不會自動抓取儲存庫。對於 GitHub Pages 網站,會檢查並遵循 robots.txt
規則,允許網站所有者選擇退出。GitMCP 不會永久儲存關於 GitHub 專案或其內容的資料。
💻 開發與貢獻
本地運行
# 克隆儲存庫
git clone https://github.com/idosal/git-mcp.git
cd git-mcp
# 安裝依賴
pnpm install
# 本地開發運行
npm run dev # 或 pnpm dev
MCP 檢查器工具
# 安裝 MCP 檢查器工具
npx @modelcontextprotocol/inspector
在檢查器介面中:
- 將傳輸類型設定為
SSE
- 輸入 GitMCP URL(例如:
http://localhost:5173/docs
) - 點擊"連接"
📄 授權條款
本專案採用 Apache License 2.0 授權條款。
⚠️ 免責聲明
GitMCP 按「現狀」提供,不提供任何形式的保證。儘管我們努力確保服務的可靠性和安全性,但我們不對使用中可能出現的任何損害或問題承擔責任。透過 GitMCP 存取的 GitHub 專案受其各自所有者的條款和條件約束。GitMCP 與 GitHub 或任何提及的 AI 工具均無關聯。