使用说明
Datapilot加拿大-Gitea MCP服务器
用于与Gitea交互的MCP服务器实现。
特性
- 连接到自托管的Gitea实例
- 存储库管理(列表、创建、删除、搜索、更新)
- 问题跟踪(创建、搜索、更新、评论、标签)
设置
-
安装依赖关系:
pip install -r requirements.txt(注意:您可能需要创建一个
requirements.txt或安装mcp,httpx,python-dotenv手动)或者如果使用
uv:uv add mcp httpx python-dotenv -
配置: 复制
.env.example到.env并填写您的Gitea详细信息:cp .env.example .env编辑
.env:GITEA_MCP_API_URL=https://your-gitea-instance.com GITEA_ACCESS_TOKEN=your_access_token_here
使用MCP客户端(例如Claude Desktop、VS Code)
将服务器添加到MCP配置中。示例配置见 mcp_config.json.
要手动运行,请执行以下操作:
python src/datapilot_gitea_mcp/server.py
Docker使用
您还可以使用Docker运行此服务器。
-
塑造形象:
docker build -t datapilotgiteamcp . -
运行容器: 由于MCP使用stdio进行通信,您需要以交互方式运行容器并传递环境变量。
docker run -i --rm \ -e GITEA_MCP_API_URL=https://your-gitea-instance.com \ -e GITEA_ACCESS_TOKEN=your_access_token_here \ datapilotgiteamcp注: 在MCP客户端(如Claude Desktop)中配置此功能时,请使用
docker配置中的命令。示例
claude_desktop_config.json:{ "mcpServers": { "gitea": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GITEA_MCP_API_URL=https://your-gitea-instance.com", "-e", "GITEA_ACCESS_TOKEN=your_token", "datapilotgiteamcp" ] } } }
使用自签名证书
如果你的Gitea实例使用自签名证书,你可以将证书挂载到容器中,并配置环境变量以信任它。
-
安装证书: 使用
-v标记将证书文件装载到容器中。 -
设置环境变量: 集
SSL_CERT_FILE和REQUESTS_CA_BUNDLE指向已安装的证书。docker run -i --rm \ -e GITEA_MCP_API_URL=https://your-gitea-instance.com \ -e GITEA_ACCESS_TOKEN=your_token \ -v /path/to/your/cert.crt:/usr/local/share/ca-certificates/custom-cert.crt \ -e SSL_CERT_FILE=/usr/local/share/ca-certificates/custom-cert.crt \ -e REQUESTS_CA_BUNDLE=/usr/local/share/ca-certificates/custom-cert.crt \ datapilotgiteamcp
远程部署
您可以在远程计算机上运行此MCP服务器,并通过SSH安全地连接到它。如果你想让服务器在中央主机上运行或更靠近你的Gitea实例,这很有用。
1.准备远程主机
确保远程计算机安装了Docker,并且用户有权运行容器。 将Docker镜像传输到远程主机:
# Save image locally and load it on the remote host
docker save datapilotgiteamcp | ssh user@your-remote-host "docker load"
2.配置VS代码(本地)
使用 gitea-docker-ssh 配置已提供 mcp_config.json.
重要提示:
- SSH密钥: 您必须设置基于SSH密钥的身份验证(无密码登录),才能无缝工作。
- 环境变量: 由于该进程是远程运行的,因此必须在
args列出或挂载.env上存在的文件 远程 文件系统。
故障排除
“请求URL缺少‘http://’或‘https://’协议”
此错误意味着 GITEA_MCP_API_URL 环境变量未设置或无效。
- 如果通过Docker运行: 确保正确传递环境变量。
- 如果使用
--env-file .env,确保.env文件存在 在运行命令的目录中 (或VS代码工作区根),并包含GITEA_MCP_API_URL. - 如果从其他工作区运行,您可能需要提供到
.env文件在mcp.json配置:"--env-file", "C:/path/to/your/project/.env"
- 如果使用
- 如果在本地运行: 确保
.env位于项目根目录或与相同的目录中server.py.
快速样品
创建问题
在“您的存储库”存储库中创建一个新问题,以跟踪新功能的实现。为其添加“增强”标签。