Gitee

officiel

Intégration de l'API Gitee, gestion des dépôts, des issues et des pull requests, et plus encore.

Que pouvez-vous faire avec Gitee MCP ?

  • Gérer les problèmes du dépôt — Demandez à votre assistant de lister, créer ou mettre à jour des problèmes dans un dépôt en utilisant list_repo_issues, create_issue et update_issue.
  • Traiter les demandes de tirage — Faites lister, créer, fusionner ou examiner les demandes de tirage par votre assistant avec des outils comme list_repo_pulls, create_pull, merge_pull et manage_pull_review.
  • Explorer le contenu du dépôt — Obtenez le contenu des fichiers, comparez des branches ou des étiquettes, et recherchez des fichiers par contenu en utilisant get_file_content, compare_branches_tags et search_files_by_content.
  • Gérer les versions et les forks — Créez des versions, listez celles existantes, ou créez un fork d'un dépôt via create_release, list_releases et fork_repository.
  • Rechercher et découvrir — Trouvez des dépôts open source ou des utilisateurs sur Gitee avec search_open_source_repositories et search_users.
  • Suivre les notifications — Consultez vos dernières notifications avec list_user_notifications.

Documentation

Serveur MCP Gitee

Le serveur MCP Gitee est une implémentation du protocole de contexte de modèle (MCP) pour Gitee. Il fournit un ensemble d'outils pour interagir avec l'API de Gitee, permettant aux assistants IA de gérer les dépôts, les problèmes, les demandes de tirage, et plus encore.

Install MCP Server

Fonctionnalités

  • Interagir avec les dépôts, problèmes, demandes de tirage et notifications de Gitee
  • URL de base de l'API configurable pour prendre en charge différentes instances de Gitee
  • Options de ligne de commande pour une configuration facile
  • Prend en charge les opérations personnelles, organisationnelles et d'entreprise
  • Activation/désactivation dynamique de l'ensemble d'outils
Scénario pratique : Obtenir un problème depuis le dépôt, l'implémenter et créer une demande de tirage
  1. Obtenir les problèmes du dépôt get_repo_issues
  2. Implémenter le codage et créer une demande de tirage basée sur les détails du problème implement_issue
  3. Commenter et fermer le problème comment_and_close_issue

Installation

Le serveur MCP distant ne nécessite aucune installation et fonctionne immédiatement. Pour exécuter mcp-gitee localement (stdio), choisissez l'une des options ci-dessous.

Serveur MCP distant (recommandé)

Ajoutez ce qui suit à la section mcpServers de la configuration de votre hôte, en remplaçant <your personal access token> par un jeton provenant d'ici :

{
  "mcpServers": {
    "gitee": {
      "url": "https://api.gitee.com/mcp",
      "headers": {
        "Authorization": "Bearer <your personal access token>"
      }
    }
  }
}

Pour les chemins et formats de fichiers de configuration par client (Claude Code, Codex, Cursor, Trae, Cline, Continue, opencode), suivez les guides liés dans la section Configuration des hôtes MCP ci-dessous.

Local (stdio)

Télécharger les binaires précompilés

Récupérez l'archive pour votre plateforme (linux-amd64 / linux-arm / darwin-amd64 / darwin-arm64 / windows-amd64) depuis Releases, extrayez-la et placez mcp-gitee dans votre PATH (sur Windows, l'exécutable est mcp-gitee.exe).

Utiliser npx

Aucune installation nécessaire ; le binaire précompilé pour votre plateforme est téléchargé automatiquement au démarrage :

{
  "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>"
      }
    }
  }
}

Compilation à partir des sources

Nécessite Go 1.23.0 ou supérieur.

  1. Clonez le dépôt :

    git clone https://gitee.com/oschina/mcp-gitee.git
    cd mcp-gitee
    
  2. Compilez le projet :

    make build
    

    Déplacez ./bin/mcp-gitee dans la variable d'environnement PATH

Utiliser go install

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

Utiliser l'exécutable installé

Une fois que mcp-gitee est disponible dans votre PATH (via Releases, compilation source ou go install) :

{
  "mcpServers": {
    "gitee": {
      "command": "mcp-gitee",
      "env": {
        "GITEE_API_BASE": "https://gitee.com/api/v5",
        "GITEE_ACCESS_TOKEN": "<your personal access token>"
      }
    }
  }
}

Windows : l'exécutable doit inclure le suffixe .exe, et le chemin dans command doit utiliser des barres obliques / (Windows les accepte, et cela évite les erreurs d'échappement de barres obliques inverses JSON) :

{
  "mcpServers": {
    "gitee": {
      "command": "C:/Users/<you>/bin/mcp-gitee.exe",
      "env": {
        "GITEE_ACCESS_TOKEN": "<your personal access token>"
      }
    }
  }
}

Configuration des hôtes MCP

Exemples de configuration : Cliquez pour voir plus de configurations d'applications

Options de ligne de commande

  • --token : Jeton d'accès Gitee
  • --api-base : URL de base de l'API Gitee (par défaut : https://gitee.com/api/v5)
  • --version : Afficher les informations de version
  • --transport : Type de transport (stdio, sse ou http, par défaut : stdio)
  • --address : L'hôte et le port pour démarrer le serveur (par défaut : localhost:8000)
  • --enabled-toolsets : Liste d'outils à activer, séparés par des virgules (si spécifié, seuls ces outils seront activés)
  • --disabled-toolsets : Liste d'outils à désactiver, séparés par des virgules

Variables d'environnement

Vous pouvez également configurer le serveur à l'aide de variables d'environnement :

  • GITEE_ACCESS_TOKEN : Jeton d'accès Gitee
  • GITEE_API_BASE : URL de base de l'API Gitee
  • ENABLED_TOOLSETS : Liste d'outils à activer, séparés par des virgules
  • DISABLED_TOOLSETS : Liste d'outils à désactiver, séparés par des virgules

Gestion de l'ensemble d'outils

La gestion de l'ensemble d'outils prend en charge deux modes :

  1. Activer les outils spécifiés (mode liste blanche) :

    • Utilisez le paramètre --enabled-toolsets ou la variable d'environnement ENABLED_TOOLSETS
    • Après spécification, seuls les outils listés seront activés, les autres seront désactivés
    • Exemple : --enabled-toolsets="list_user_repos,get_file_content"
  2. Désactiver les outils spécifiés (mode liste noire) :

    • Utilisez le paramètre --disabled-toolsets ou la variable d'environnement DISABLED_TOOLSETS
    • Après spécification, les outils listés seront désactivés, les autres seront activés
    • Exemple : --disabled-toolsets="list_user_repos,get_file_content"

Remarque :

  • Si à la fois enabled-toolsets et disabled-toolsets sont spécifiés, enabled-toolsets a priorité
  • Les noms d'outils sont sensibles à la casse

Filtrage des outils par requête (en-têtes HTTP)

Lors de l'utilisation du serveur MCP distant (transport HTTP/SSE), vous pouvez filtrer dynamiquement les outils disponibles par requête via les en-têtes HTTP. Cela est utile pour les clients qui ont besoin d'un contrôle fin sur l'exposition des outils sans redémarrer le serveur.

  1. Activer les outils spécifiés via l'en-tête (liste blanche) :

    • Utilisez l'en-tête X-MCP-Enabled-Tools
    • Seuls les outils listés seront activés pour cette requête
    • Exemple : X-MCP-Enabled-Tools: list_user_repos,get_file_content
  2. Désactiver les outils spécifiés via l'en-tête (liste noire) :

    • Utilisez l'en-tête X-MCP-Disabled-Tools
    • Les outils listés seront désactivés pour cette requête
    • Exemple : X-MCP-Disabled-Tools: create_repo,delete_repo

Règles de priorité :

  • Si à la fois X-MCP-Enabled-Tools et X-MCP-Disabled-Tools sont présents dans la même requête, la liste blanche (X-MCP-Enabled-Tools) a priorité
  • Les noms d'outils sont sensibles à la casse

Exemple de configuration pour Cursor/Claude :

{
  "mcpServers": {
    "gitee": {
      "url": "https://api.gitee.com/mcp",
      "headers": {
        "Authorization": "Bearer <your personal access token>",
        "X-MCP-Enabled-Tools": "list_user_repos,get_file_content,list_repo_issues"
      }
    }
  }
}

Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

Outils disponibles

Le serveur fournit divers outils pour interagir avec Gitee :

OutilCatégorieDescription
list_user_reposDépôtLister les dépôts autorisés de l'utilisateur
get_file_contentDépôtObtenir le contenu d'un fichier dans un dépôt
create_repoDépôtCréer un dépôt (utilisateur, organisation ou entreprise)
fork_repositoryDépôtForker un dépôt
create_releaseDépôtCréer une version pour un dépôt
list_releasesDépôtLister les versions du dépôt
search_open_source_repositoriesDépôtRechercher des dépôts open source sur Gitee
search_files_by_contentDépôtRechercher des fichiers par contenu dans un dépôt
compare_branches_tagsDépôtComparer deux branches, étiquettes ou commits dans un dépôt
list_repo_pullsDemande de tirageLister les demandes de tirage dans un dépôt
merge_pullDemande de tirageFusionner une demande de tirage
create_pullDemande de tirageCréer une demande de tirage
update_pullDemande de tirageMettre à jour une demande de tirage
get_pull_detailDemande de tirageObtenir les détails d'une demande de tirage
get_diff_filesDemande de tirageObtenir les fichiers de différence d'une demande de tirage
manage_pull_reviewDemande de tirageGérer une revue de demande de tirage (approuver ou annuler)
create_commentCommentaireCréer un commentaire sur un problème ou une demande de tirage
list_commentsCommentaireLister tous les commentaires pour un problème ou une demande de tirage
create_issueProblèmeCréer un problème
update_issueProblèmeMettre à jour un problème
get_repo_issue_detailProblèmeObtenir les détails d'un problème de dépôt
list_repo_issuesProblèmeLister les problèmes du dépôt
get_user_infoUtilisateurObtenir les informations de l'utilisateur authentifié actuel
search_usersUtilisateurRechercher des utilisateurs
list_user_notificationsNotificationLister les notifications de l'utilisateur

Contribution

Nous accueillons les contributions de la communauté open source ! Si vous souhaitez contribuer à ce projet, veuillez suivre ces directives :

  1. Forkez le dépôt.
  2. Créez une nouvelle branche pour votre fonctionnalité ou correction de bug.
  3. Apportez vos modifications et assurez-vous que le code est bien documenté.
  4. Soumettez une demande de tirage avec une description claire de vos modifications.

Pour plus d'informations, veuillez vous référer au fichier CONTRIBUTING.