Gitee
ทางการการผสานรวม Gitee API, การจัดการ repository, issue, และ pull request และอื่นๆ
คุณทำอะไรได้บ้างด้วย Gitee MCP?
- ค้นหาโอเพนซอร์ส repositories — ค้นหาโปรเจกต์ Gitee สาธารณะด้วยคำสำคัญโดยใช้
search_open_source_repositories - แสดงรายการและตรวจสอบ issues ของ repository — ดึง issues ที่เปิดอยู่ด้วย
list_repo_issuesและรับรายละเอียดทั้งหมดผ่านget_repo_issue_detail - สร้าง pull requests จาก issues — ใช้
create_pullเพื่อเปิด PR จากนั้นใช้create_commentและupdate_issueเพื่อแสดงความคิดเห็นและปิด issue ที่เกี่ยวข้อง - ตรวจสอบและรวม pull requests — อนุมัติหรือยกเลิกการตรวจสอบด้วย
manage_pull_reviewและรวมโดยใช้merge_pull - จัดการไฟล์และ releases ของ repository — อ่านเนื้อหาไฟล์ผ่าน
get_file_contentค้นหาโค้ดด้วยsearch_files_by_contentและเผยแพร่ releases ด้วยcreate_release - ตรวจสอบการแจ้งเตือนและข้อมูลผู้ใช้ — แสดงรายการการแจ้งเตือน Gitee ของคุณด้วย
list_user_notificationsและดึงรายละเอียดผู้ใช้ที่ผ่านการยืนยันตัวตนผ่านget_user_info
เอกสาร
Gitee MCP Server
Gitee MCP Server เป็นการติดตั้งเซิร์ฟเวอร์ Model Context Protocol (MCP) สำหรับ Gitee โดยมีชุดเครื่องมือสำหรับโต้ตอบกับ API ของ Gitee ช่วยให้ผู้ช่วย AI สามารถจัดการที่เก็บข้อมูล, issues, pull requests และอื่นๆ ได้
คุณสมบัติ
- โต้ตอบกับที่เก็บข้อมูล, issues, pull requests และการแจ้งเตือนของ Gitee
- กำหนดค่า API base URL ได้เพื่อรองรับอินสแตนซ์ Gitee ที่แตกต่างกัน
- แฟล็กบรรทัดคำสั่งสำหรับการกำหนดค่าที่ง่ายดาย
- รองรับการดำเนินการทั้งส่วนบุคคล, องค์กร และองค์กรธุรกิจ
- เปิด/ปิดชุดเครื่องมือแบบไดนามิก
สถานการณ์จริง: รับ Issue จากที่เก็บข้อมูล, ดำเนินการและสร้าง Pull Request
- รับ Issues ของที่เก็บข้อมูล

- ดำเนินการเขียนโค้ดและสร้าง Pull Request ตามรายละเอียด Issue

- แสดงความคิดเห็นและปิด Issue

การติดตั้ง (สามารถข้ามขั้นตอนนี้ได้เมื่อเริ่มต้นด้วย npx)
ข้อกำหนดเบื้องต้น
- Go 1.23.0 หรือสูงกว่า
- บัญชี Gitee พร้อม access token, ไปรับได้ที่
การสร้างจากซอร์สโค้ด
-
โคลนที่เก็บข้อมูล:
git clone https://gitee.com/oschina/mcp-gitee.git cd mcp-gitee -
สร้างโปรเจกต์:
make buildย้าย ./bin/mcp-gitee ไปยัง PATH env
ใช้ go install
go install gitee.com/oschina/mcp-gitee@latest
การใช้งาน
ตรวจสอบเวอร์ชัน mcp-gitee:
mcp-gitee --version
การกำหนดค่า MCP Hosts
ตัวอย่างการกำหนดค่า: คลิกเพื่อดูการกำหนดค่าแอปพลิเคชันเพิ่มเติม
เซิร์ฟเวอร์ MCP ระยะไกล
เชื่อมต่อกับเซิร์ฟเวอร์ mcp-gitee ระยะไกลอย่างเป็นทางการ (ไม่ต้องติดตั้ง):
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
Codex ใช้ ~/.codex/config.toml:
[mcp_servers.gitee]
url = "https://api.gitee.com/mcp"
bearer_token_env_var = "GITEE_ACCESS_TOKEN"
opencode ใช้ ~/.config/opencode/opencode.json:
{
"mcp": {
"gitee": {
"type": "remote",
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>"
},
"enabled": true
}
}
}
ตัวเลือกบรรทัดคำสั่ง
--token: Gitee access token--api-base: Gitee API base URL (ค่าเริ่มต้น: https://gitee.com/api/v5)--version: แสดงข้อมูลเวอร์ชัน--transport: ประเภทการขนส่ง (stdio, sse หรือ http, ค่าเริ่มต้น: stdio)--address: โฮสต์และพอร์ตที่จะเริ่มเซิร์ฟเวอร์ (ค่าเริ่มต้น: localhost:8000)--enabled-toolsets: รายการเครื่องมือที่ต้องการเปิดใช้งาน คั่นด้วยเครื่องหมายจุลภาค (หากระบุ จะเปิดใช้งานเฉพาะเครื่องมือเหล่านี้)--disabled-toolsets: รายการเครื่องมือที่ต้องการปิดใช้งาน คั่นด้วยเครื่องหมายจุลภาค
ตัวแปรสภาพแวดล้อม
คุณยังสามารถกำหนดค่าเซิร์ฟเวอร์โดยใช้ตัวแปรสภาพแวดล้อม:
GITEE_ACCESS_TOKEN: Gitee access tokenGITEE_API_BASE: Gitee API base URLENABLED_TOOLSETS: รายการเครื่องมือที่ต้องการเปิดใช้งาน คั่นด้วยเครื่องหมายจุลภาคDISABLED_TOOLSETS: รายการเครื่องมือที่ต้องการปิดใช้งาน คั่นด้วยเครื่องหมายจุลภาค
การจัดการชุดเครื่องมือ
การจัดการชุดเครื่องมือรองรับสองโหมด:
-
เปิดใช้งานเครื่องมือที่ระบุ (โหมดไวท์ลิสต์):
- ใช้พารามิเตอร์
--enabled-toolsetsหรือตัวแปรสภาพแวดล้อมENABLED_TOOLSETS - หลังจากระบุแล้ว เฉพาะเครื่องมือที่อยู่ในรายการจะถูกเปิดใช้งาน ส่วนเครื่องมืออื่นจะถูกปิดใช้งาน
- ตัวอย่าง:
--enabled-toolsets="list_user_repos,get_file_content"
- ใช้พารามิเตอร์
-
ปิดใช้งานเครื่องมือที่ระบุ (โหมดแบล็คลิสต์):
- ใช้พารามิเตอร์
--disabled-toolsetsหรือตัวแปรสภาพแวดล้อมDISABLED_TOOLSETS - หลังจากระบุแล้ว เครื่องมือที่อยู่ในรายการจะถูกปิดใช้งาน ส่วนเครื่องมืออื่นจะถูกเปิดใช้งาน
- ตัวอย่าง:
--disabled-toolsets="list_user_repos,get_file_content"
- ใช้พารามิเตอร์
หมายเหตุ:
- หากระบุทั้ง
enabled-toolsetsและdisabled-toolsetsenabled-toolsetsจะมีลำดับความสำคัญสูงกว่า - ชื่อเครื่องมือคำนึงถึงตัวพิมพ์เล็ก-ใหญ่
การกรองเครื่องมือต่อคำขอ (HTTP Headers)
เมื่อใช้เซิร์ฟเวอร์ MCP ระยะไกล (การขนส่ง HTTP/SSE) คุณสามารถกรองเครื่องมือที่ใช้งานได้แบบไดนามิกต่อคำขอผ่าน HTTP headers ซึ่งมีประโยชน์สำหรับไคลเอนต์ที่ต้องการควบคุมการเปิดเผยเครื่องมืออย่างละเอียดโดยไม่ต้องรีสตาร์ทเซิร์ฟเวอร์
-
เปิดใช้งานเครื่องมือที่ระบุผ่าน header (ไวท์ลิสต์):
- ใช้ header
X-MCP-Enabled-Tools - เฉพาะเครื่องมือที่อยู่ในรายการจะถูกเปิดใช้งานสำหรับคำขอนั้น
- ตัวอย่าง:
X-MCP-Enabled-Tools: list_user_repos,get_file_content
- ใช้ header
-
ปิดใช้งานเครื่องมือที่ระบุผ่าน header (แบล็คลิสต์):
- ใช้ header
X-MCP-Disabled-Tools - เครื่องมือที่อยู่ในรายการจะถูกปิดใช้งานสำหรับคำขอนั้น
- ตัวอย่าง:
X-MCP-Disabled-Tools: create_repo,delete_repo
- ใช้ header
กฎลำดับความสำคัญ:
- หากมีทั้ง
X-MCP-Enabled-ToolsและX-MCP-Disabled-Toolsในคำขอเดียวกัน ไวท์ลิสต์ (X-MCP-Enabled-Tools) จะมีลำดับความสำคัญสูงกว่า - ชื่อเครื่องมือคำนึงถึงตัวพิมพ์เล็ก-ใหญ่
ตัวอย่างการกำหนดค่าสำหรับ 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"
}
}
}
}
ใบอนุญาต
โปรเจกต์นี้ได้รับอนุญาตภายใต้ MIT License ดูรายละเอียดเพิ่มเติมได้ที่ไฟล์ LICENSE
เครื่องมือที่พร้อมใช้งาน
เซิร์ฟเวอร์มีเครื่องมือต่างๆ สำหรับโต้ตอบกับ Gitee:
| เครื่องมือ | หมวดหมู่ | คำอธิบาย |
|---|---|---|
| list_user_repos | Repository | แสดงรายการที่เก็บข้อมูลที่ผู้ใช้ได้รับอนุญาต |
| get_file_content | Repository | รับเนื้อหาของไฟล์ในที่เก็บข้อมูล |
| create_repo | Repository | สร้างที่เก็บข้อมูล (ผู้ใช้, องค์กร หรือองค์กรธุรกิจ) |
| fork_repository | Repository | Fork ที่เก็บข้อมูล |
| create_release | Repository | สร้าง release สำหรับที่เก็บข้อมูล |
| list_releases | Repository | แสดงรายการ releases ของที่เก็บข้อมูล |
| search_open_source_repositories | Repository | ค้นหาที่เก็บข้อมูลโอเพนซอร์สบน Gitee |
| search_files_by_content | Repository | ค้นหาไฟล์ตามเนื้อหาในที่เก็บข้อมูล |
| compare_branches_tags | Repository | เปรียบเทียบสอง branch, tag หรือ commit ในที่เก็บข้อมูล |
| list_repo_pulls | Pull Request | แสดงรายการ pull requests ในที่เก็บข้อมูล |
| merge_pull | Pull Request | รวม pull request |
| create_pull | Pull Request | สร้าง pull request |
| update_pull | Pull Request | อัปเดต pull request |
| get_pull_detail | Pull Request | รับรายละเอียดของ pull request |
| get_diff_files | Pull Request | รับไฟล์ diff ของ pull request |
| manage_pull_review | Pull Request | จัดการรีวิว pull request (อนุมัติหรือยกเลิก) |
| create_comment | Comment | สร้างความคิดเห็นบน issue หรือ pull request |
| list_comments | Comment | แสดงรายการความคิดเห็นทั้งหมดสำหรับ issue หรือ pull request |
| create_issue | Issue | สร้าง issue |
| update_issue | Issue | อัปเดต issue |
| get_repo_issue_detail | Issue | รับรายละเอียดของ issue ในที่เก็บข้อมูล |
| list_repo_issues | Issue | แสดงรายการ issues ของที่เก็บข้อมูล |
| get_user_info | User | รับข้อมูลผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ปัจจุบัน |
| search_users | User | ค้นหาผู้ใช้ |
| list_user_notifications | Notification | แสดงรายการแจ้งเตือนของผู้ใช้ |
การมีส่วนร่วม
เรายินดีต้อนรับการมีส่วนร่วมจากชุมชนโอเพนซอร์ส! หากคุณต้องการมีส่วนร่วมในโปรเจกต์นี้ โปรดปฏิบัติตามแนวทางเหล่านี้:
- Fork ที่เก็บข้อมูล
- สร้าง branch ใหม่สำหรับฟีเจอร์หรือการแก้ไขบั๊กของคุณ
- ทำการเปลี่ยนแปลงและตรวจสอบว่าโค้ดมีเอกสารประกอบอย่างดี
- ส่ง pull request พร้อมคำอธิบายที่ชัดเจนเกี่ยวกับการเปลี่ยนแปลงของคุณ
สำหรับข้อมูลเพิ่มเติม โปรดดูไฟล์ CONTRIBUTING




