使用说明(简明易懂,包含必要配置信息):
-
项目简介
- 本项目实现一个基于 MCP 协议的服务器端,提供对 Gitea 实例的资源访问、工具执行和提示模板的渲染能力,便于 LLM 客户端通过标准化接口获取所需信息并执行外部操作。
-
主要功能点
- 资源管理:通过资源接口暴露 Gitea 的数据快照(如用户仓库、仓库详情、问题、拉取请求、文件内容等)。
- 工具注册与执行:提供多种工具,例如列表、创建、获取、更新等操作的封装,覆盖仓库、问题、 PR、分支、标签、用户、组织等领域。
- 搜索与交互:内置对仓库、问题、用户、代码等的搜索能力。
- 安全性与配置:支持危险操作开关(如删除仓库、删除分支、删除团队等)通过环境变量开启,默认禁用。
- 运行与通信:通过标准输入/输出(stdio)传输实现 MCP 服务端与客户端的 JSON-RPC 通信。
-
安装步骤
-
- 安装依赖并构建
- 运行 npm install
- 运行 npm run build
-
- 配置 Gitea 链接与权限
- GITEA_URL:你的 Gitea 实例地址(如 https://gitea.example.com)
- GITEA_TOKEN:用于 API 访问的个人访问令牌
- GITEA_ALLOW_DANGEROUS:是否开启危险操作,默认 false
-
- 启动服务器
- 使用 stdio 传输启动服务器(服务器会通过标准输入输出与 MCP 客户端通信)
- 启动命令示例(对开发环境友好,请根据实际路径运行构建后的入口)
- node build/index.js
-
-
服务器配置(给 MCP 客户端使用的连接配置,JSON 格式,包含 server 名称、启动命令等信息)
- server: gitea
- command: node
- args: ["/path/to/claude-gitea-app/build/index.js"]
- env: GITEA_URL, GITEA_TOKEN, GITEA_ALLOW_DANGEROUS
- 说明:
- server 为 MCP 客户端唯一标识,用于区分不同的 MCP 服务端。
- command 与 args 指定启动服务器的命令及参数,MCP 客户端将通过该信息启动并连接服务端。
- env 用于传递运行时所需的环境变量,确保服务器能够正确访问 Gitea 实例。 示例(请替换为你实际的路径与令牌): { "server": "gitea", "command": "node", "args": ["/path/to/claude-gitea-app/build/index.js"], "env": { "GITEA_URL": "https://your-gitea-instance.com", "GITEA_TOKEN": "your-personal-access-token", "GITEA_ALLOW_DANGEROUS": "false" } }
-
基本使用方法
- 启动后,客户端可以通过 MCP 协议发送请求,获取资源信息、执行工具、获取提示模板等。
- 常见操作包括:
- 请求列表资源、获取具体资源信息、执行具体工具等,以实现对 Gitea 的远程操作与查询。
- 如需开启危险操作,请将 GITEA_ALLOW_DANGEROUS 设置为 true,并确保有合适的权限控制。
-
连接与运行注意
- 服务器通过 StdioServerTransport 与客户端通信,因此客户端需要配置使用 stdio 类型的 MCP 连接,并指向服务器启动的进程及参数。
- 服务器端日志会输出到标准错误输出,便于调试。
信息
分类
AI与计算