Gitee MCP Server | MCP Market

Gitee MCP Server

Gitee MCP Server — это сервер реализации Model Context Protocol для Gitee, предоставляющий инструменты управления репозиториями, задачами и pull-запросами через API.

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:

    git clone https://gitee.com/oschina/mcp-gitee.git
    cd mcp-gitee
    
  2. 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 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):

    • Use --enabled-toolsets parameter or ENABLED_TOOLSETS environment variable
    • Specify after, only listed tools will be enabled, others will be disabled
    • Example: --enabled-toolsets="list_user_repos,get_file_content"
  2. Disable specified tools (blacklist mode):

    • Use --disabled-toolsets parameter or DISABLED_TOOLSETS environment variable
    • Specify after, listed tools will be disabled, others will be enabled
    • Example: --disabled-toolsets="list_user_repos,get_file_content"

Note:

  • If both enabled-toolsets and disabled-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:

  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.