trackmcp
Back to directory

mcp-gitee is a Model Context Protocol (MCP) server implementation for Gitee. It provides a set of tools that interact with Gitee's API, allowing AI assistants to manage repository, issues, pull requests, etc.

43 stars GoAI & Machine Learning Updated Oct 9, 2025
giteemcpmcp-server

Documentation

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.

Install MCP Server

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

1. Get repository Issues

get_repo_issues

2. Implement coding & create Pull Request based on Issue details

implement_issue

3. Comment & Close Issue

comment_and_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

1. Clone the repository:

bash
git clone https://gitee.com/oschina/mcp-gitee.git
   cd mcp-gitee

2. Build the project:

bash
make build

Move ./bin/mcp-gitee PATH env

Use go install

bash
go install gitee.com/oschina/mcp-gitee@latest

Usage

Check mcp-gitee version:

bash
mcp-gitee --version

MCP Hosts Configuration

Config examples: Click to view more application configuration

Remote MCP Server

Connect to the official remote mcp-gitee server (no installation required):

json
{
  "mcpServers": {
    "gitee": {
      "url": "https://api.gitee.com/mcp",
      "headers": {
        "Authorization": "Bearer "
      }
    }
  }
}

Codex uses `~/.codex/config.toml`:

toml
[mcp_servers.gitee]
url = "https://api.gitee.com/mcp"
bearer_token_env_var = "GITEE_ACCESS_TOKEN"

opencode uses `~/.config/opencode/opencode.json`:

json
{
  "mcp": {
    "gitee": {
      "type": "remote",
      "url": "https://api.gitee.com/mcp",
      "headers": {
        "Authorization": "Bearer "
      },
      "enabled": true
    }
  }
}

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 token
  • `GITEE_API_BASE`: Gitee API base URL
  • `ENABLED_TOOLSETS`: Comma-separated list of tools to enable
  • `DISABLED_TOOLSETS`: Comma-separated list of tools to disable

Toolset Management

Toolset management supports two modes:

1. Enable specified tools (whitelist mode):

    2. Disable specified tools (blacklist mode):

      Note:

      • If both `enabled-toolsets` and `disabled-toolsets` are specified, `enabled-toolsets` takes 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.

      1. Enable specified tools via header (whitelist):

        2. Disable specified tools via header (blacklist):

          Priority rules:

          • If both `X-MCP-Enabled-Tools` and `X-MCP-Disabled-Tools` are present in the same request, the whitelist (`X-MCP-Enabled-Tools`) takes precedence
          • Tool names are case-sensitive

          Example configuration for Cursor/Claude:

          json
          {
            "mcpServers": {
              "gitee": {
                "url": "https://api.gitee.com/mcp",
                "headers": {
                  "Authorization": "Bearer ",
                  "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:

          ToolCategoryDescription
          list_user_reposRepositoryList user authorized repositories
          get_file_contentRepositoryGet the content of a file in a repository
          create_repoRepositoryCreate a repository (user, org, or enterprise)
          fork_repositoryRepositoryFork a repository
          create_releaseRepositoryCreate a release for a repository
          list_releasesRepositoryList repository releases
          search_open_source_repositoriesRepositorySearch open source repositories on Gitee
          search_files_by_contentRepositorySearch files by content in a repository
          compare_branches_tagsRepositoryCompare two branches, tags, or commits in a repository
          list_repo_pullsPull RequestList pull requests in a repository
          merge_pullPull RequestMerge a pull request
          create_pullPull RequestCreate a pull request
          update_pullPull RequestUpdate a pull request
          get_pull_detailPull RequestGet details of a pull request
          get_diff_filesPull RequestGet a pull request diff files
          manage_pull_reviewPull RequestManage a pull request review (approve or cancel)
          create_commentCommentCreate a comment on an issue or pull request
          list_commentsCommentList all comments for an issue or pull request
          create_issueIssueCreate an issue
          update_issueIssueUpdate an issue
          get_repo_issue_detailIssueGet details of a repository issue
          list_repo_issuesIssueList repository issues
          get_user_infoUserGet current authenticated user information
          search_usersUserSearch for users
          list_user_notificationsNotificationList user notifications

          Contribution

          We welcome contributions from the open-source community! If you'd like to contribute to this project, please follow these guidelines:

          1. Fork the repository.

          2. Create a new branch for your feature or bug fix.

          3. Make your changes and ensure the code is well-documented.

          4. Submit a pull request with a clear description of your changes.

          For more information, please refer to the CONTRIBUTING file.

          Frequently asked questions

          What is mcp-gitee?

          mcp-gitee is mcp-gitee is a Model Context Protocol (MCP) server implementation for Gitee. It provides a set of tools that interact with Gitee's API, allowing AI assistants to manage repository, issues, pull requests, etc.

          How do I install mcp-gitee?

          Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

          Is mcp-gitee open source?

          Yes — it is hosted on GitHub at https://github.com/oschina/mcp-gitee and has 43 stars.

          Related MCP tools

          Run your own MCP server? See who uses it and what to fix.

          Measure it with TrackMCP