gitee-mcp-server

MCP.Pizza Chef: normal-coder

The gitee-mcp-server enables AI models to interact with Gitee repositories, issues, and pull requests through the Model Context Protocol (MCP). It supports operations like creating and forking repositories, managing branches, and handling pull requests, allowing seamless AI-driven automation and management of Gitee projects. This server facilitates real-time, structured interaction with Gitee's platform, enhancing developer workflows and project management.

Use This MCP server To

Create and manage Gitee repositories programmatically Fork repositories to initiate new project versions Automate branch creation and management in Gitee Handle pull requests including creation and merging Manage issues by creating, updating, and closing them Integrate Gitee repository operations into AI workflows Enable AI to perform repository maintenance tasks Streamline project collaboration via automated issue tracking

README

Gitee MCP Server

Let AI operate Gitee repositories/Issues/Pull Requests for you through MCP

Node Version NPM Version Docker Pulls Docker Image Version LICENSE smithery badge


Supported AI Operations

Category MCP Tool Description
Repository Operations create_repository Create a Gitee repository
fork_repository Fork a Gitee repository
Branch Operations create_branch Create a new branch in a Gitee repository
list_branches List branches in a Gitee repository
get_branch Get details of a specific branch in a Gitee repository
File Operations get_file_contents Get contents of a file or directory in a Gitee repository
create_or_update_file Create or update a file in a Gitee repository
push_files Push multiple files to a Gitee repository
Issue Operations create_issue Create an Issue in a Gitee repository
list_issues List Issues in a Gitee repository
get_issue Get details of a specific Issue in a Gitee repository
update_issue Update an Issue in a Gitee repository
add_issue_comment Add a comment to an Issue in a Gitee repository
Pull Request Operations create_pull_request Create a Pull Request in a Gitee repository
list_pull_requests List Pull Requests in a Gitee repository
get_pull_request Get details of a specific Pull Request in a Gitee repository
update_pull_request Update a Pull Request in a Gitee repository
merge_pull_request Merge a Pull Request in a Gitee repository
User Operations get_user Get Gitee user information
get_current_user Get authenticated Gitee user information

Usage

Installing via Smithery

To install Gitee MCP Server for Claude Desktop automatically via Smithery:

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

Configuration

  • GITEE_API_BASE_URL: Optional, Gitee OpenAPI Endpoint, default is https://gitee.com/api/v5
  • GITEE_PERSONAL_ACCESS_TOKEN: Required, Gitee account personal access token (PAT), can be obtained from Gitee account settings Personal Access Tokens
  • DEBUG: Optional, set to true to enable debug logging, default is disabled

Run MCP Server via NPX

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

Run MCP Server via Docker Container

  1. Get Docker Image
# Get from DockerHub
docker pull normalcoder/gitee-mcp-server

# Build locally
docker build -t normalcoder/gitee-mcp-server .
  1. Configure MCP Server
{
  "mcpServers": {
    "Gitee": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITEE_PERSONAL_ACCESS_TOKEN",
        "normalcoder/gitee-mcp-server"
      ],
      "env": {
        "GITEE_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

Development Guide

Install Dependencies

npm install

Build

npm run build

After successful build, /dist will contain the runnable MCP server.

Run Server

npm start

The MCP server will run on stdio, allowing it to be used as a subprocess by MCP clients.

Build Docker Image

You can also run the server using Docker:

docker build -t normalcoder/gitee-mcp-server .

Run MCP Server with Docker:

docker run -e GITEE_PERSONAL_ACCESS_TOKEN=<YOUR_TOKEN> normalcoder/gitee-mcp-server

Debug MCP Server

You can use @modelcontextprotocol/inspector for debugging:

Create a .env file in the root directory for environment variables:

GITEE_API_BASE_URL=https://gitee.com/api/v5
GITEE_PERSONAL_ACCESS_TOKEN=<YOUR_TOKEN>

Run the debug tool to start the service and web debug interface:

npx @modelcontextprotocol/inspector npm run start --env-file=.env

The project includes a debug() function for printing debug information, usage:

import { debug } from './common/utils.js';

debug('Message to log');
debug('Message with data:', { key: 'value' });

Debug logs are only printed when the DEBUG environment variable is set to true.

Dependencies

  • @modelcontextprotocol/sdk: MCP SDK for server implementation
  • universal-user-agent: For generating user agent strings
  • zod: For schema validation
  • zod-to-json-schema: For converting Zod schemas to JSON schemas

License

Licensed under MIT License. You are free to use, modify and distribute the software, subject to the terms and conditions of the MIT License. For more details, see the LICENSE file in the project repository.

Related Links

  • Model Context Protocol
  • Gitee

gitee-mcp-server FAQ

How do I authenticate the gitee-mcp-server to access my Gitee account?
You authenticate using a Gitee personal access token configured in the server settings, enabling secure API access.
Can the gitee-mcp-server handle pull request merges automatically?
Yes, it supports creating, reviewing, and merging pull requests through MCP commands.
Is it possible to create new branches using this server?
Yes, the server supports branch operations including creation and deletion.
Does the gitee-mcp-server support issue management?
Yes, it allows creating, updating, and closing issues within Gitee repositories.
What environments can run the gitee-mcp-server?
It runs on Node.js (>=22.12.0) and is available as a Docker image for easy deployment.
How does the gitee-mcp-server ensure secure interactions?
It scopes API access via tokens and follows MCP principles for secure, observable model interactions.
Can this server be integrated with multiple LLM providers?
Yes, it is provider-agnostic and works with OpenAI, Anthropic Claude, Google Gemini, and others.
How do I update the gitee-mcp-server to the latest version?
You can update via npm or pull the latest Docker image from the official repository.