Home / MCP / Gitee MCP Server

Gitee MCP Server

Provides Gitee repository, issue, and pull request automation through MCP with token-based authentication.

typescript
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "gitee": {
            "command": "npx",
            "args": [
                "-y",
                "gitee-mcp-server"
            ],
            "env": {
                "GITEE_API_BASE_URL": "https://gitee.com/api/v5",
                "GITEE_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>",
                "DEBUG": "true"
            }
        }
    }
}

You can run a Gitee MCP Server to let AI operate Gitee repositories, issues, and pull requests. It exposes a range of end-to-end actions you can trigger from your MCP client, enabling automated repository management and collaboration workflows.

How to use

You interact with the Gitee MCP Server through an MCP client. You expose your Gitee credentials securely, then issue high-level actions like creating repositories, managing branches, reading or updating files, handling issues and pull requests, and querying user data. Each action maps to a specific tool you can call from your client, and the server returns structured results you can use in your automation pipelines.

How to install

Prerequisites: make sure you have Node.js installed if you plan to run the server locally via npx, and Docker if you prefer containerized usage.

Install via Smithery

npx -y @smithery/cli install @normal-coder/gitee-mcp-server --client claude

Run MCP Server via NPX

To run the MCP server directly with npx, use the runtime configuration shown below. You must provide your Gitee personal access token.

{
  "mcpServers": {
    "Gitee": {
      "command": "npx",
      "args": [
        "-y",
        "gitee-mcp-server"
      ],
      "env": {
        "GITEE_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

Run MCP Server via Docker Container

You can also deploy the MCP server in a Docker container. Use the official image and pass your access token as an environment variable.

{
  "mcpServers": {
    "Gitee": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITEE_PERSONAL_ACCESS_TOKEN",
        "normalcoder/gitee-mcp-server"
      ],
      "env": {
        "GITEE_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

Configuration notes

Optional base URL and token handling help tailor the server to your Gitee setup. The Gitee API base URL can be customized, and you must provide a valid personal access token from your Gitee account. Debug logging can be enabled by setting DEBUG to true.

Additional configuration and security

Keep your Gitee PAT secure. Do not expose it in client-side code or logs. Prefer running the server in a secured environment and restrict access to trusted MCP clients.

Troubleshooting and notes

If you encounter authentication errors, verify that the GITEE_PERSONAL_ACCESS_TOKEN is correct and has the necessary scopes for repository, issues, and pull request operations. Check that the Gitee API base URL matches your region and usage. When debugging, enable DEBUG to gain more verbose logs.

Examples of actions you can perform

  • create_repository
  • fork_repository
  • create_branch
  • list_branches
  • get_branch
  • get_file_contents
  • create_or_update_file
  • push_files
  • create_issue
  • list_issues
  • get_issue
  • update_issue
  • add_issue_comment
  • create_pull_request
  • list_pull_requests
  • get_pull_request
  • update_pull_request
  • merge_pull_request
  • get_user
  • get_current_user

Available tools

create_repository

Create a new Gitee repository with specified settings.

fork_repository

Fork an existing Gitee repository into your account.

create_branch

Create a new branch in a specified Gitee repository.

list_branches

List all branches in a repository.

get_branch

Retrieve details about a specific branch.

get_file_contents

Get contents of a file or directory in a repository.

create_or_update_file

Create a new file or update an existing one in a repository.

push_files

Push multiple files to a repository in a single operation.

create_issue

Create a new issue in a repository.

list_issues

List issues in a repository.

get_issue

Get details of a specific issue.

update_issue

Update an existing issue.

add_issue_comment

Add a comment to an issue.

create_pull_request

Create a pull request in a repository.

list_pull_requests

List pull requests in a repository.

get_pull_request

Get details of a specific pull request.

update_pull_request

Update an existing pull request.

merge_pull_request

Merge a pull request.

get_user

Get information about a Gitee user.

get_current_user

Get information about the authenticated user.