Serveur Gitee Mcp
mcp-gitee est une implémentation de serveur du Protocole de Contexte de Modèle (MCP) pour Gitee. Il fournit un ensemble d'outils qui interagissent avec l'API de Gitee, permettant aux assistants IA de gérer les dépôts, les problèmes, les demandes de tirage, etc.
Aperçu
Qu'est-ce que mcp-gitee ?
mcp-gitee est une implémentation de serveur du Modèle de Contexte de Protocole (MCP) spécifiquement conçue pour Gitee. Il sert de pont pour que les développeurs et les assistants IA interagissent de manière fluide avec l'API de Gitee. Cet ensemble d'outils permet aux utilisateurs de gérer des dépôts, des problèmes, des demandes de tirage, et plus encore, améliorant ainsi la productivité et la collaboration au sein de l'écosystème Gitee.
Fonctionnalités de mcp-gitee
- Intégration API : mcp-gitee offre une intégration robuste avec l'API de Gitee, permettant une gestion efficace des dépôts et de leur contenu.
- Compatibilité avec les assistants IA : Conçu pour fonctionner avec des assistants IA, il rationalise des tâches telles que le suivi des problèmes et la gestion des demandes de tirage.
- Interface conviviale : L'interface est conçue pour être intuitive, facilitant l'utilisation de ses fonctionnalités par des développeurs de tous niveaux de compétence.
- Open Source : Étant un dépôt public, mcp-gitee est ouvert aux contributions, permettant aux développeurs d'améliorer sa fonctionnalité et ses caractéristiques.
- Licence : Il est distribué sous la licence MIT, promouvant la liberté d'utiliser, de modifier et de distribuer le logiciel.
Comment utiliser mcp-gitee
- Installation : Commencez par cloner le dépôt depuis GitHub sur votre machine locale.
git clone https://github.com/oschina/mcp-gitee.git
- Configuration : Suivez les instructions de configuration fournies dans le fichier README du dépôt pour configurer le serveur.
- Accès API : Utilisez les points de terminaison API fournis pour interagir avec Gitee. Vous pouvez gérer des dépôts, des problèmes et des demandes de tirage de manière programmatique.
- Intégration avec l'IA : Connectez votre assistant IA pour tirer parti des capacités de mcp-gitee pour la gestion automatisée de vos projets Gitee.
Questions Fréquemment Posées
Quel est le but de mcp-gitee ?
mcp-gitee est conçu pour faciliter l'interaction avec l'API de Gitee, permettant une gestion efficace des dépôts et des tâches connexes via des assistants IA.
mcp-gitee est-il gratuit à utiliser ?
Oui, mcp-gitee est un projet open-source sous licence MIT, ce qui le rend gratuit à utiliser et à modifier.
Comment puis-je contribuer à mcp-gitee ?
Vous pouvez contribuer en forkant le dépôt, en apportant vos modifications et en soumettant une demande de tirage. Assurez-vous de suivre les directives de contribution décrites dans le dépôt.
Où puis-je trouver la documentation pour mcp-gitee ?
La documentation est généralement incluse dans le fichier README du dépôt. Vous pouvez également vérifier les ressources supplémentaires ou une section wiki au sein du dépôt pour des conseils plus détaillés.
Puis-je utiliser mcp-gitee à des fins commerciales ?
Oui, puisqu'il est sous licence MIT, vous êtes libre de l'utiliser à des fins commerciales tant que vous respectez les termes de la licence.
Détail
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
- 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
<div align="center"> <a href="docs/install/claude.md" title="Claude"><img src="docs/install/logos/Claude.png" width=80 height=80></a> <a href="docs/install/cursor.md" title="Cursor"><img src="docs/install/logos/Cursor.png" width=80 height=80></a> <a href="docs/install/trae.md" title="Trae"><img src="docs/install/logos/Trae.png" width=80 height=80></a> <a href="docs/install/cline.md" title="Cline"><img src="docs/install/logos/Cline.png" width=80 height=80></a> <a href="docs/install/windsurf.md" title="Windsurf"><img src="docs/install/logos/Windsurf.png" width=80 height=80></a> </div>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 |
get_diff_files | Pull Request | Get a pull request diff files |
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.
Configuration du serveur
{
"mcpServers": {
"mcp-gitee": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--oschina--mcp-gitee--mcp-gitee",
"./out"
],
"env": {
"GITEE_API_BASE": "gitee-api-base",
"GITEE_ACCESS_TOKEN": "gitee-access-token"
}
}
}
}