- Explore MCP Servers
- mcp-gitee
Gitee MCP Server
What is Gitee MCP Server
Gitee MCP Server is an implementation of the Model Context Protocol (MCP) tailored for Gitee. It facilitates interaction with Gitee’s API, enabling AI assistants to manage repositories, issues, pull requests, and notifications, enhancing developer productivity and collaboration.
Use cases
Gitee MCP Server can be utilized for various operations such as retrieving repository issues, coding implementations based on those issues, creating and managing pull requests, commenting on issues, and closing them. It caters to personal repositories, organizational projects, and enterprise operations.
How to use
To use Gitee MCP Server, you can install it via npx
or build it from source using Go. After installation, configure it with your Gitee access token and API base URL. Command-line flags and environment variables allow for further customization of the server’s settings and toolsets.
Key features
Key features of Gitee MCP Server include dynamic interaction with Gitee repositories, support for configurable API base URLs, command-line configurations, and the ability to enable or disable specific toolsets for streamlined operations. It is designed to support personal, organizational, and enterprise-level tasks efficiently.
Where to use
Gitee MCP Server is particularly useful in software development environments where Gitee is used for source code management. It’s ideal for projects involving collaboration among team members, tracking issues, managing pull requests, and automating workflows within Gitee repositories.
Overview
What is Gitee MCP Server
Gitee MCP Server is an implementation of the Model Context Protocol (MCP) tailored for Gitee. It facilitates interaction with Gitee’s API, enabling AI assistants to manage repositories, issues, pull requests, and notifications, enhancing developer productivity and collaboration.
Use cases
Gitee MCP Server can be utilized for various operations such as retrieving repository issues, coding implementations based on those issues, creating and managing pull requests, commenting on issues, and closing them. It caters to personal repositories, organizational projects, and enterprise operations.
How to use
To use Gitee MCP Server, you can install it via npx
or build it from source using Go. After installation, configure it with your Gitee access token and API base URL. Command-line flags and environment variables allow for further customization of the server’s settings and toolsets.
Key features
Key features of Gitee MCP Server include dynamic interaction with Gitee repositories, support for configurable API base URLs, command-line configurations, and the ability to enable or disable specific toolsets for streamlined operations. It is designed to support personal, organizational, and enterprise-level tasks efficiently.
Where to use
Gitee MCP Server is particularly useful in software development environments where Gitee is used for source code management. It’s ideal for projects involving collaboration among team members, tracking issues, managing pull requests, and automating workflows within Gitee repositories.
Content
Gitee 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(This step can be skipped directly when starting npx)
Prerequisites
- Go 1.23.0 or higher
- Gitee account with an access token, Go to get
Building from Source
-
Clone the repository:
git clone https://gitee.com/oschina/mcp-gitee.git cd mcp-gitee
-
Build the project:
make build
Move ./bin/mcp-gitee PATH env
Use go install
go install gitee.com/oschina/mcp-gitee@latest
Usage
Check mcp-gitee version:
mcp-gitee --version
MCP Hosts Configuration
config example: Click to view more application configuration
- Connect to the official remote mcp-gitee server (no installation required)
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
- npx
{
"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>"
}
}
}
}
- executable
{
"mcpServers": {
"gitee": {
"command": "mcp-gitee",
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
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-toolsets
parameter orENABLED_TOOLSETS
environment 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-toolsets
parameter orDISABLED_TOOLSETS
environment 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-toolsets
anddisabled-toolsets
are specified,enabled-toolsets
takes precedence - Tool names are case-sensitive
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_user_repo | Repository | Create a user repository |
create_org_repo | Repository | Create an organization repository |
create_enter_repo | Repository | Create an enterprise repository |
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 |
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 |
comment_pull | Pull Request | Comment on a pull request |
list_pull_comments | Pull Request | List all comments for a 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 |
comment_issue | Issue | Comment on an issue |
list_issue_comments | Issue | List comments on an issue |
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.