About Gitee MCP Server
Gitee MCP Server is an MCP server for the Gitee platform that exposes tools wrapping the Gitee API. It lets AI assistants manage repositories, issues, pull requests and notifications. It can run as a remote server or locally over stdio, with tools enabled or disabled as needed.
Key features
- 01Repository, issue, pull request and notification operations
- 02Configurable API base URL for different Gitee instances
- 03Command-line flags and environment variable configuration
- 04Personal, organization and enterprise operations
- 05Dynamic enabling or disabling of tools
Use cases
- 01Read an issue, implement changes and open a pull request
- 02Review, comment on and merge pull requests
- 03Search open source repositories and file contents
MCP support
The project is an MCP server that exposes Gitee tools to MCP clients, reachable through a remote URL or a local stdio process.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEGitee MCP Server
Gitee MCP Server is a Model Context Protocol (MCP) server implementation for Gitee. It provides a set of tools for interacting with Gitee's API, allowing AI assistants to manage repositories, issues, pull requests, and more.
Features
- Interact with Gitee repositories, issues, pull requests, and notifications
- Configurable API base URL to support different Gitee instances
- Command-line flags for easy configuration
- Supports both personal, organization, and enterprise operations
- Dynamic toolset enable/disable
Practical scenario: Obtain Issue from the repository, implement and create a Pull Request
- Get repository Issues

- Implement coding & create Pull Request based on Issue details

- Comment & Close Issue

Installation
The Remote MCP Server requires no installation and works out of the box. To run mcp-gitee locally (stdio), pick one of the options below.
Remote MCP Server (Recommended)
Add the following to the mcpServers section of your host config, replacing <your personal access token> with a token from here:
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
For per-client config file paths and formats (Claude Code, Codex, Cursor, Trae, Cline, Continue, opencode), follow the guides linked in the MCP Hosts Configuration section below.
Local (stdio)
Download Pre-built Binaries
Grab the archive for your platform (linux-amd64 / linux-arm / darwin-amd64 / darwin-arm64 / windows-amd64) from Releases, extract it, and put mcp-gitee on your PATH (on Windows the executable is mcp-gitee.exe).
Use npx
No installation needed; the pre-built binary for your platform is downloaded automatically at startup:
{
"mcpServers": {
"gitee": {
"command": "npx",
"args": [
"-y",
"@gitee/mcp-gitee@latest"
],
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
Building from Source
Requires Go 1.23.0 or higher.
-
Clone the repository:
git clone https://gitee.com/oschina/mcp-gitee.git cd mcp-gitee -
Build the project:
make buildMove ./bin/mcp-gitee PATH env
Use go install
go install gitee.com/oschina/mcp-gitee@latest
Use the Installed Executable
Once mcp-gitee is available on your PATH (via Releases, source build, or go install):
{
"mcpServers": {
"gitee": {
"command": "mcp-gitee",
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
Windows: the executable must include the
.exesuffix, and the path incommandshould use forward slashes/(Windows accepts them, and it avoids JSON backslash-escaping mistakes):{ "mcpServers": { "gitee": { "command": "C:/Users/<you>/bin/mcp-gitee.exe", "env": { "GITEE_ACCESS_TOKEN": "<your personal access token>" } } } }
MCP Hosts Configuration
Config examples: Click to view more application configuration
Command-line Options
--token: Gitee access token--api-base: Gitee API base URL (default: https://gitee.com/api/v5)--version: Show version information--transport: Transport type (stdio、sse or http, default: stdio)--address: The host and port to start the server on (default: localhost:8000)--enabled-toolsets: Comma-separated list of tools to enable (if specified, only these tools will be enabled)--disabled-toolsets: Comma-separated list of tools to disable
Environment Variables
You can also configure the server using environment variables:
GITEE_ACCESS_TOKEN: Gitee access tokenGITEE_API_BASE: Gitee API base URLENABLED_TOOLSETS: Comma-separated list of tools to enableDISABLED_TOOLSETS: Comma-separated list of tools to disable
Toolset Management
Toolset management supports two modes:
-
Enable specified tools (whitelist mode):
- Use
--enabled-toolsetsparameter orENABLED_TOOLSETSenvironment variable - Specify after, only listed tools will be enabled, others will be disabled
- Example:
--enabled-toolsets="list_user_repos,get_file_content"
- Use
-
Disable specified tools (blacklist mode):
- Use
--disabled-toolsetsparameter orDISABLED_TOOLSETSenvironment variable - Specify after, listed tools will be disabled, others will be enabled
- Example:
--disabled-toolsets="list_user_repos,get_file_content"
- Use
Note:
- If both
enabled-toolsetsanddisabled-toolsetsare specified,enabled-toolsetstakes precedence - Tool names are case-sensitive
Per-Request Tool Filtering (HTTP Headers)
When using the remote MCP server (HTTP/SSE transport), you can dynamically filter available tools on a per-request basis via HTTP headers. This is useful for clients that need fine-grained control over tool exposure without restarting the server.
-
Enable specified tools via header (whitelist):
- Use the
X-MCP-Enabled-Toolsheader - Only the listed tools will be enabled for that request
- Example:
X-MCP-Enabled-Tools: list_user_repos,get_file_content
- Use the
-
Disable specified tools via header (blacklist):
- Use the
X-MCP-Disabled-Toolsheader - The listed tools will be disabled for that request
- Example:
X-MCP-Disabled-Tools: create_repo,delete_repo
- Use the
Priority rules:
- If both
X-MCP-Enabled-ToolsandX-MCP-Disabled-Toolsare present in the same request, the whitelist (X-MCP-Enabled-Tools) takes precedence - Tool names are case-sensitive
Example configuration for Cursor/Claude:
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>",
"X-MCP-Enabled-Tools": "list_user_repos,get_file_content,list_repo_issues"
}
}
}
}
License
This project is licensed under the MIT License. See the LICENSE file for more details.
Available Tools
The server provides various tools for interacting with Gitee:
| Tool | Category | Description |
|---|---|---|
| list_user_repos | Repository | List user authorized repositories |
| get_file_content | Repository | Get the content of a file in a repository |
| create_repo | Repository | Create a repository (user, org, or enterprise) |
| fork_repository | Repository | Fork a repository |
| create_release | Repository | Create a release for a repository |
| list_releases | Repository | List repository releases |
| search_open_source_repositories | Repository | Search open source repositories on Gitee |
| search_files_by_content | Repository | Search files by content in a repository |
| compare_branches_tags | Repository | Compare two branches, tags, or commits in a repository |
| list_repo_pulls | Pull Request | List pull requests in a repository |
| merge_pull | Pull Request | Merge a pull request |
| create_pull | Pull Request | Create a pull request |
| update_pull | Pull Request | Update a pull request |
| get_pull_detail | Pull Request | Get details of a pull request |
| get_diff_files | Pull Request | Get a pull request diff files |
| manage_pull_review | Pull Request | Manage a pull request review (approve or cancel) |
| create_comment | Comment | Create a comment on an issue or pull request |
| list_comments | Comment | List all comments for an issue or pull request |
| create_issue | Issue | Create an issue |
| update_issue | Issue | Update an issue |
| get_repo_issue_detail | Issue | Get details of a repository issue |
| list_repo_issues | Issue | List repository issues |
| get_user_info | User | Get current authenticated user information |
| search_users | User | Search for users |
| list_user_notifications | Notification | List user notifications |
Contribution
We welcome contributions from the open-source community! If you'd like to contribute to this project, please follow these guidelines:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and ensure the code is well-documented.
- Submit a pull request with a clear description of your changes.
For more information, please refer to the CONTRIBUTING file.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.




