Grok MCP设置
A. 免费、开源的Docker化堆栈 用于集成 格罗克 (通过xAI API和CodeGPT插件) MCP(模型上下文协议) 服务器。此设置链接:
- Git MCP:本地存储库上的版本控制操作(diff、commit、grep)。
- 网络搜索MCP:以隐私为中心的浏览/搜索,无需外部API(通过自托管的SearXNG)。
- 本地图书馆MCP:扫描/提取PDF、MD和文件库(如电子书)。
非常适合希望Grok“看到”您局域网的PyCharm用户:研究网站→ 交叉引用本地文档→ 在一个提示中更新Git。在单个工作站或家庭实验室服务器上运行。 无需第三方密钥.
文件概述
此仓库提供了两种部署方式: 模块化 (为简单起见,建议使用单独的容器)和 捆绑的 (通过Dockerfile/entrypoint.sh实现高级链接的一体化映像)。
- ****:编排模块化堆栈(三个服务)。使用官方图片;不需要建造。
- ****:构建一个捆绑所有服务器(Python/Node-deps)的单个“mcp-hub”映像。用于捆绑变体。
- 入口点.sh:在捆绑映像中同时启动Git/Web/Library服务器。处理env变量,如
ALLOWED_PATHS. - README.md:你在读!(此文件。)
- 可选的:
.env.example(用于路径/端口),searxng-settings.yml(网络配置),pdf_server.py(PDF提取存根——通过PR添加)。
对于捆绑模式,将撰写服务交换为 build: . 以及引用入口点.sh。
特性
- 模块化和轻量化:\<1GB RAM,局域网暴露HTTP。
- 气隙就绪:地方行动;SearXNG聚合了免费引擎(无云)。
- Grok Synergy:CodeGPT工具调用类似“Diff repo,搜索‘PyTorch async’,提取ebook.pdf”的链
- 可扩展:通过撰写添加MCP(例如OCR)。
- 安全:只读卷,白名单路径。
先决条件
- Docker和Docker Compose(v2+)。
- PyCharm中的CodeGPT(Grok的xAI API密钥)。
- 安装的dirs(例如。,
/pub/your-repo对于Git,/pub/ebookslibs)。 - 可选:将MCP源克隆到
./src用于捆绑构建(git clone https://github.com/modelcontextprotocol/servers src).
快速开始
- 克隆和准备:
git clone https://github.com/madking2099/grok_mcp_setup.git
cd grok_mcp_setup
cp .env.example .env # Customize paths/ports
# For bundled: git clone https://github.com/modelcontextprotocol/servers src- (可选)添加PDF提取:
- 创建 pdf_server.py (MCP包装带 pdfplumber--看 MCP PDF示例 或打开一个问题)。
- 启动(模块化-推荐):
docker compose up -d
# Verify: docker compose ps
# Logs: docker compose logs -f mcp-git- 或发射(捆绑-高级):
- 编辑 docker-compose.yml:更改 mcp-hub 服务于 build: . 并添加 entrypoint: ["/app/entrypoint.sh"]. - 然后: docker compose up -d --build.
- 配置CodeGPT:
- 编辑 ~/.codegpt/mcp.json:
{
"mcpServers": {
"lan-git": { "type": "http", "url": "http://localhost:8001" },
"lan-web": { "type": "http", "url": "http://localhost:8002/search?q=query" },
"lan-lib": { "type": "http", "url": "http://localhost:8003" }
}
}- 在PyCharm中刷新。测试:“使用lan git,ls/项目;lan web,搜索‘MCP提示’;lan lib,提取/ebooks/sample.pdf。”
- 访问:
- Git: curl http://localhost:8001/health - 网状物: http://localhost:8002 (SearXNG用户界面) - 库: curl http://localhost:8003/list?path=/ebooks
定制
- .env示例:
PROJECTS_PATH=/pub/your-repo
LIBRARY_PATH=/pub/ebooks
GIT_PORT=8001
WEB_PORT=8002
LIB_PORT=8003- SearXNG配置:编辑
searxng-settings.yml适用于发动机(例如仅适用于DuckDuckGo)。 文档. - 捆绑Tweaks:In
entrypoint.sh,调整BRAVE_API_KEYenv如果添加回(可选)。 - 扩展:添加Markdownify服务:
mcp-md:
image: node:20-slim
command: ["npx", "@modelcontextprotocol/server-markdownify", "--http", "0.0.0.0:8004"]
ports: ["8004:8004"]建筑
- mcp git:语义仓库查询(组合中的命令).
- mcp网站:SearXNG元搜索(无关键字)。
- mcp库:文件系统+PDF阅读器(通过
pdf_server.py).
捆绑备用: + 入口点.sh 用于单集装箱链。
提示流:Grok→ CodeGPT→ MCP → 工具响应。
故障排除
- 混合组合错误:如果端口/卷冲突,请使用上面的模块化版本。
- 构建失败:确保
./src用于复制 ;检查日志。 - 权限:
chmod -R o+r /pubLAN 的 UFW:ufw allow from 192.168.0.0/24 to any port 8001:8003. - SearXNG慢:颠簸
UWSGI_WORKERS=4;初始运行索引引擎。 - 没有PDF摘录?:实施
pdf_server.py或者仅回退到文件系统。
贡献
Fork/PR想法:Tesseract OCR,Kavita电子书API,VS代码端口。漏洞开放问题!
许可证
麻省理工学院©madking2099。看 许可证 (如果缺少,请添加)。
致谢
如果它能为你的设置提供动力,请打星! @疯狂2099上X.
