Gitee

resmi

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

Apa yang bisa Anda lakukan dengan Gitee MCP?

  • Mengelola masalah repositori — Minta asisten Anda untuk membuat daftar, membuat, atau memperbarui masalah di repositori menggunakan list_repo_issues, create_issue, dan update_issue.
  • Menangani permintaan tarik — Minta asisten Anda untuk membuat daftar, membuat, menggabungkan, atau meninjau permintaan tarik dengan alat seperti list_repo_pulls, create_pull, merge_pull, dan manage_pull_review.
  • Jelajahi konten repositori — Dapatkan isi file, bandingkan cabang atau tag, dan cari file berdasarkan konten menggunakan get_file_content, compare_branches_tags, dan search_files_by_content.
  • Kelola rilis dan fork — Buat rilis, buat daftar yang sudah ada, atau fork repositori melalui create_release, list_releases, dan fork_repository.
  • Cari dan temukan — Temukan repositori sumber terbuka atau pengguna di Gitee dengan search_open_source_repositories dan search_users.
  • Lacak notifikasi — Periksa notifikasi terbaru Anda dengan list_user_notifications.

Dokumentasi

Server MCP Gitee

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

Install MCP Server

Fitur

  • Berinteraksi dengan repositori, isu, pull request, dan notifikasi Gitee
  • URL basis API yang dapat dikonfigurasi untuk mendukung berbagai instance Gitee
  • Flag baris perintah untuk konfigurasi yang mudah
  • Mendukung operasi pribadi, organisasi, dan enterprise
  • Aktivasi/penonaktifan perangkat alat secara dinamis
Skenario praktis: Dapatkan Issue dari repositori, implementasikan dan buat Pull Request
  1. Dapatkan Issue repositori get_repo_issues
  2. Implementasikan kode & buat Pull Request berdasarkan detail Issue implement_issue
  3. Beri komentar & tutup Issue comment_and_close_issue

Instalasi

Server MCP Jarak Jauh tidak memerlukan instalasi dan langsung berfungsi. Untuk menjalankan mcp-gitee secara lokal (stdio), pilih salah satu opsi di bawah ini.

Server MCP Jarak Jauh (Direkomendasikan)

Tambahkan berikut ini ke bagian mcpServers dari konfigurasi host Anda, ganti <your personal access token> dengan token dari sini:

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

Untuk jalur dan format file konfigurasi per-klien (Claude Code, Codex, Cursor, Trae, Cline, Continue, opencode), ikuti panduan yang ditautkan di bagian Konfigurasi Host MCP di bawah.

Lokal (stdio)

Unduh Biner yang Sudah Dibangun

Ambil arsip untuk platform Anda (linux-amd64 / linux-arm / darwin-amd64 / darwin-arm64 / windows-amd64) dari Rilis, ekstrak, dan letakkan mcp-gitee di PATH Anda (di Windows, executable-nya adalah mcp-gitee.exe).

Gunakan npx

Tidak perlu instalasi; biner yang sudah dibangun untuk platform Anda diunduh otomatis saat startup:

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

Membangun dari Sumber

Membutuhkan Go 1.23.0 atau lebih tinggi.

  1. Klon repositori:

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

    make build
    

    Pindahkan ./bin/mcp-gitee ke variabel PATH

Gunakan go install

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

Gunakan Executable yang Terpasang

Setelah mcp-gitee tersedia di PATH Anda (melalui Rilis, build sumber, atau go install):

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

Windows: executable harus menyertakan akhiran .exe, dan jalur di command harus menggunakan garis miring ke depan / (Windows menerimanya, dan ini menghindari kesalahan escape garis miring terbalik JSON):

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

Konfigurasi Host MCP

Contoh konfigurasi: Klik untuk melihat lebih banyak konfigurasi aplikasi

Opsi Baris Perintah

  • --token: Token akses Gitee
  • --api-base: URL basis API Gitee (default: https://gitee.com/api/v5)
  • --version: Tampilkan informasi versi
  • --transport: Jenis transportasi (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 basis API Gitee
  • ENABLED_TOOLSETS: Daftar alat yang dipisahkan koma untuk diaktifkan
  • DISABLED_TOOLSETS: Daftar alat yang dipisahkan koma untuk dinonaktifkan

Manajemen Perangkat Alat

Manajemen perangkat alat mendukung dua mode:

  1. Aktifkan alat yang ditentukan (mode daftar putih):

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

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

Catatan:

  • Jika enabled-toolsets dan disabled-toolsets keduanya ditentukan, enabled-toolsets memiliki prioritas
  • Nama alat peka huruf besar/kecil

Pemfilteran Alat Per-Permintaan (Header HTTP)

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

  1. Aktifkan alat yang ditentukan 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 yang ditentukan 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) memiliki prioritas
  • Nama alat peka huruf besar/kecil

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 di repositori
create_repoRepositoriBuat repositori (pengguna, organisasi, atau enterprise)
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 di repositori
compare_branches_tagsRepositoriBandingkan dua cabang, tag, atau commit di repositori
list_repo_pullsPull RequestDaftar pull request di 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 yang 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 berikut:

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

Untuk informasi lebih lanjut, silakan merujuk ke file CONTRIBUTING.