MCP文件和Git管理器服务器
一个模型上下文协议(MCP)服务器,为n8n工作流提供文件和git操作。
特性
文件操作
- read_file:读取文件内容
- write_file:创建或更新文件
- 列表文件:列出文件和目录(带递归选项)
- 删除文件:删除文件或目录
- create_directory:创建新目录
Git操作
- git_status:检查存储库状态
- git_add:提交阶段文件
- git_提交:创建提交
- git_push:推送到远程存储库
- git_pull:从远程存储库中拉取
- git_log:查看提交历史记录
- 使用 git_diff:显示文件差异
搜索
- search_in_files:在文件中搜索文本模式
快速开始
地方发展
# Install dependencies
npm install
# Build TypeScript
npm run build
# Start server
npm start码头工人
# Build image
docker build -t mcp-file-git-server .
# Run container
docker run -d \
--name mcp-file-git-server \
-p 3001:3001 \
-e PROJECT_ROOT=/workspace \
-v /path/to/your/project:/workspace:rw \
mcp-file-git-serverDocker Compose
添加到您的 docker-compose.yml:
services:
mcp-server:
build: ./mcp-file-git-server
container_name: mcp-file-git-server
environment:
- PROJECT_ROOT=/workspace
- PORT=3001
- NODE_ENV=production
ports:
- "3001:3001"
volumes:
- /path/to/your/project:/workspace:rw
- ~/.gitconfig:/root/.gitconfig:ro
- ~/.ssh:/root/.ssh:ro
networks:
- n8n-traefik_default
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:3001/health"]
interval: 30s
timeout: 10s
retries: 3配置
环境变量
PROJECT_ROOT:项目目录的路径(默认值:/workspace)PORT:服务器端口(默认值:3001)
端点
- 健康检查:
GET http://localhost:3001/health - SSE端点:
POST http://localhost:3001/sse(适用于n8n节点mcp) - 消息端点:
POST http://localhost:3001/message
n8n集成
在n8n中创建MCP凭据
- 首选 凭证 → 新
- 搜索 “MCP”
- 配置:
- 运输: SSE (服务器发送的事件) - 统一资源定位符: http://mcp-file-git-server:3001/sse
- 保存
在工作流中使用
- 添加 MCP客户端 节点
- 选择您的MCP证书
- 选择操作(列表工具、调用工具等)
- 连接到 AI代理工具 通过
ai_tool连接
测试
测试运行状况端点
curl http://localhost:3001/health测试SSE端点
curl -X POST http://localhost:3001/sse \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'故障排除
权限不足
确保装载的项目目录具有正确的权限:
sudo chown -R $(id -u):$(id -g) /path/to/your/projectGit不工作
在项目目录中初始化git:
docker exec -it mcp-file-git-server sh
cd /workspace
git init
git config user.name "Your Name"
git config user.email "your@email.com"
exit连接问题
检查Docker网络连接:
# From n8n container
docker exec -it n8n-traefik-n8n-1 sh
wget -O- http://mcp-file-git-server:3001/health
exit许可证
麻省理工学院
