Gitee

resmi

Integrasi API Gitee, manajemen repositori, isu, dan pull request, serta lainnya.

Apa yang bisa Anda lakukan dengan Gitee MCP?

  • Cari repositori sumber terbuka — Temukan proyek Gitee publik berdasarkan kata kunci menggunakan search_open_source_repositories.
  • Daftar dan periksa isu repositori — Ambil isu yang terbuka dengan list_repo_issues dan dapatkan detail lengkap melalui get_repo_issue_detail.
  • Buat pull request dari isu — Gunakan create_pull untuk membuka PR, lalu create_comment dan update_issue untuk memberi komentar dan menutup isu terkait.
  • Tinjau dan gabungkan pull request — Setujui atau batalkan tinjauan dengan manage_pull_review dan gabungkan menggunakan merge_pull.
  • Kelola file dan rilis repositori — Baca konten file melalui get_file_content, cari kode dengan search_files_by_content, dan publikasikan rilis dengan create_release.
  • Periksa notifikasi dan info pengguna — Daftar notifikasi Gitee Anda dengan list_user_notifications dan ambil detail pengguna yang terautentikasi melalui get_user_info.

Dokumentasi

Server MCP Gitee

Server MCP Gitee adalah implementasi server Model Context Protocol (MCP) untuk Gitee. Server ini menyediakan serangkaian alat untuk berinteraksi dengan API Gitee, memungkinkan asisten AI mengelola repositori, isu, pull request, dan lainnya.

Install MCP Server

Fitur

  • Berinteraksi dengan repositori, isu, pull request, dan notifikasi Gitee
  • URL dasar API yang dapat dikonfigurasi untuk mendukung berbagai instansi Gitee
  • Bendera baris perintah untuk konfigurasi yang mudah
  • Mendukung operasi pribadi, organisasi, dan perusahaan
  • Mengaktifkan/menonaktifkan set alat secara dinamis
Skenario praktis: Dapatkan Isu dari repositori, implementasikan dan buat Pull Request
  1. Dapatkan Isu repositori get_repo_issues
  2. Implementasikan pengkodean & buat Pull Request berdasarkan detail Isu implement_issue
  3. Komentari & Tutup Isu comment_and_close_issue

Instalasi (Langkah ini dapat dilewati langsung saat memulai npx)

Prasyarat

Membangun dari Sumber

  1. Kloning repositori:

    git clone https://gitee.com/oschina/mcp-gitee.git
    cd mcp-gitee
    
  2. Bangun proyek:

    make build
    

    Pindahkan ./bin/mcp-gitee ke PATH env

Gunakan go install

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

Penggunaan

Periksa versi mcp-gitee:

mcp-gitee --version

Konfigurasi Host MCP

Contoh konfigurasi: Klik untuk melihat lebih banyak konfigurasi aplikasi

Server MCP Jarak Jauh

Hubungkan ke server mcp-gitee jarak jauh resmi (tidak perlu instalasi):

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

Codex menggunakan ~/.codex/config.toml:

[mcp_servers.gitee]
url = "https://api.gitee.com/mcp"
bearer_token_env_var = "GITEE_ACCESS_TOKEN"

opencode menggunakan ~/.config/opencode/opencode.json:

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

Opsi Baris Perintah

  • --token: Token akses Gitee
  • --api-base: URL dasar API Gitee (default: https://gitee.com/api/v5)
  • --version: Tampilkan informasi versi
  • --transport: Tipe transport (stdio, sse, atau http, default: stdio)
  • --address: Host dan port untuk memulai server (default: localhost:8000)
  • --enabled-toolsets: Daftar alat yang dipisahkan koma untuk diaktifkan (jika ditentukan, hanya alat ini yang akan diaktifkan)
  • --disabled-toolsets: Daftar alat yang dipisahkan koma untuk dinonaktifkan

Variabel Lingkungan

Anda juga dapat mengonfigurasi server menggunakan variabel lingkungan:

  • GITEE_ACCESS_TOKEN: Token akses Gitee
  • GITEE_API_BASE: URL dasar API Gitee
  • ENABLED_TOOLSETS: Daftar alat yang dipisahkan koma untuk diaktifkan
  • DISABLED_TOOLSETS: Daftar alat yang dipisahkan koma untuk dinonaktifkan

Manajemen Set Alat

Manajemen set alat mendukung dua mode:

  1. Aktifkan alat tertentu (mode daftar putih):

    • Gunakan parameter --enabled-toolsets atau variabel lingkungan ENABLED_TOOLSETS
    • Setelah ditentukan, hanya alat yang terdaftar yang akan diaktifkan, yang lain akan dinonaktifkan
    • Contoh: --enabled-toolsets="list_user_repos,get_file_content"
  2. Nonaktifkan alat tertentu (mode daftar hitam):

    • Gunakan parameter --disabled-toolsets atau variabel lingkungan DISABLED_TOOLSETS
    • Setelah ditentukan, alat yang terdaftar akan dinonaktifkan, yang lain akan diaktifkan
    • Contoh: --disabled-toolsets="list_user_repos,get_file_content"

Catatan:

  • Jika enabled-toolsets dan disabled-toolsets keduanya ditentukan, enabled-toolsets yang diutamakan
  • Nama alat bersifat case-sensitive

Pemfilteran Alat Per Permintaan (Header HTTP)

Saat menggunakan server MCP jarak jauh (transport HTTP/SSE), Anda dapat memfilter alat yang tersedia secara dinamis per permintaan melalui header HTTP. Ini berguna untuk klien yang memerlukan kontrol terperinci atas eksposur alat tanpa memulai ulang server.

  1. Aktifkan alat tertentu melalui header (daftar putih):

    • Gunakan header X-MCP-Enabled-Tools
    • Hanya alat yang terdaftar yang akan diaktifkan untuk permintaan tersebut
    • Contoh: X-MCP-Enabled-Tools: list_user_repos,get_file_content
  2. Nonaktifkan alat tertentu melalui header (daftar hitam):

    • Gunakan header X-MCP-Disabled-Tools
    • Alat yang terdaftar akan dinonaktifkan untuk permintaan tersebut
    • Contoh: X-MCP-Disabled-Tools: create_repo,delete_repo

Aturan prioritas:

  • Jika X-MCP-Enabled-Tools dan X-MCP-Disabled-Tools keduanya ada dalam permintaan yang sama, daftar putih (X-MCP-Enabled-Tools) yang diutamakan
  • Nama alat bersifat case-sensitive

Contoh konfigurasi untuk 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"
      }
    }
  }
}

Lisensi

Proyek ini dilisensikan di bawah Lisensi MIT. Lihat file LICENSE untuk detail lebih lanjut.

Alat yang Tersedia

Server menyediakan berbagai alat untuk berinteraksi dengan Gitee:

AlatKategoriDeskripsi
list_user_reposRepositoriDaftar repositori yang diotorisasi pengguna
get_file_contentRepositoriDapatkan konten file dalam repositori
create_repoRepositoriBuat repositori (pengguna, org, atau perusahaan)
fork_repositoryRepositoriFork repositori
create_releaseRepositoriBuat rilis untuk repositori
list_releasesRepositoriDaftar rilis repositori
search_open_source_repositoriesRepositoriCari repositori sumber terbuka di Gitee
search_files_by_contentRepositoriCari file berdasarkan konten dalam repositori
compare_branches_tagsRepositoriBandingkan dua cabang, tag, atau komit dalam repositori
list_repo_pullsPull RequestDaftar pull request dalam repositori
merge_pullPull RequestGabungkan pull request
create_pullPull RequestBuat pull request
update_pullPull RequestPerbarui pull request
get_pull_detailPull RequestDapatkan detail pull request
get_diff_filesPull RequestDapatkan file diff pull request
manage_pull_reviewPull RequestKelola tinjauan pull request (setujui atau batalkan)
create_commentKomentarBuat komentar pada isu atau pull request
list_commentsKomentarDaftar semua komentar untuk isu atau pull request
create_issueIsuBuat isu
update_issueIsuPerbarui isu
get_repo_issue_detailIsuDapatkan detail isu repositori
list_repo_issuesIsuDaftar isu repositori
get_user_infoPenggunaDapatkan informasi pengguna terautentikasi saat ini
search_usersPenggunaCari pengguna
list_user_notificationsNotifikasiDaftar notifikasi pengguna

Kontribusi

Kami menyambut kontribusi dari komunitas sumber terbuka! Jika Anda ingin berkontribusi pada proyek ini, silakan ikuti panduan ini:

  1. Fork repositori.
  2. Buat cabang baru untuk fitur atau perbaikan bug Anda.
  3. Lakukan perubahan Anda dan pastikan kode terdokumentasi dengan baik.
  4. Kirim pull request dengan deskripsi yang jelas tentang perubahan Anda.

Untuk informasi lebih lanjut, silakan merujuk ke file CONTRIBUTING.