Máy chủ MCP chính thức của GitHub dành cho tìm kiếm kho lưu trữ, vấn đề, yêu cầu kéo, ngữ cảnh mã và quy trình làm việc GitHub trong các ứng dụng AI tương thích MCP.
Duyệt và tìm kiếm kho lưu trữ — Yêu cầu trợ lý của bạn tìm tệp, đọc mã hoặc phân tích lịch sử commit bằng cách sử dụng các công cụ từ bộ công cụ repos.
Quản lý issues và pull requests — Tạo, cập nhật và phân loại issues hoặc PRs bằng các công cụ từ bộ công cụ issues và pull_requests.
Giám sát quy trình CI/CD — Kiểm tra trạng thái chạy GitHub Actions, điều tra lỗi build và quản lý bản phát hành thông qua bộ công cụ actions.
Xem xét các cảnh báo bảo mật mã — Kiểm tra kết quả quét mã, cảnh báo Dependabot và kết quả quét bí mật bằng cách sử dụng các bộ công cụ code_security, dependabot và secret_protection.
Cộng tác trên các cuộc thảo luận và dự án — Truy cập các cuộc thảo luận nhóm, quản lý bảng dự án và xử lý thông báo thông qua các bộ công cụ discussions, projects và notifications.
Tài liệu
GitHub MCP Server
GitHub MCP Server kết nối trực tiếp các công cụ AI với nền tảng GitHub. Điều này cho phép các tác nhân AI, trợ lý và chatbot có khả năng đọc kho lưu trữ và tệp mã, quản lý issue và PR, phân tích mã và tự động hóa quy trình làm việc. Tất cả thông qua các tương tác bằng ngôn ngữ tự nhiên.
Trường hợp sử dụng
Quản lý kho lưu trữ: Duyệt và truy vấn mã, tìm kiếm tệp, phân tích commit và hiểu cấu trúc dự án trên bất kỳ kho lưu trữ nào bạn có quyền truy cập.
Tự động hóa Issue & PR: Tạo, cập nhật và quản lý issue và pull request. Để AI giúp phân loại lỗi, xem xét thay đổi mã và duy trì bảng dự án.
Thông minh CI/CD & Quy trình làm việc: Giám sát các lần chạy GitHub Actions workflow, phân tích lỗi build, quản lý bản phát hành và nhận thông tin chi tiết về pipeline phát triển của bạn.
Phân tích mã: Kiểm tra các phát hiện bảo mật, xem xét cảnh báo Dependabot, hiểu các mẫu mã và nhận thông tin chi tiết toàn diện về cơ sở mã của bạn.
Cộng tác nhóm: Truy cập thảo luận, quản lý thông báo, phân tích hoạt động nhóm và hợp lý hóa quy trình cho nhóm của bạn.
Được xây dựng cho các nhà phát triển muốn kết nối các công cụ AI của họ với ngữ cảnh và khả năng của GitHub, từ các truy vấn ngôn ngữ tự nhiên đơn giản đến các quy trình làm việc tác nhân đa bước phức tạp.
GitHub MCP Server từ xa
GitHub MCP Server từ xa được lưu trữ bởi GitHub và cung cấp phương thức dễ dàng nhất để bắt đầu và chạy. Nếu máy chủ MCP của bạn không hỗ trợ máy chủ MCP từ xa, đừng lo lắng! Bạn có thể sử dụng phiên bản cục bộ của GitHub MCP Server thay thế.
Điều kiện tiên quyết
Một máy chủ MCP tương thích có hỗ trợ máy chủ từ xa (VS Code 1.101+, Claude Desktop, Cursor, Windsurf, v.v.)
Để cài đặt nhanh, hãy sử dụng một trong các nút cài đặt một lần nhấp ở trên. Sau khi hoàn tất quy trình đó, hãy chuyển đổi chế độ Agent (nằm cạnh ô nhập văn bản Copilot Chat) và máy chủ sẽ khởi động. Đảm bảo bạn đang sử dụng VS Code 1.101 hoặc mới hơn để hỗ trợ MCP từ xa và OAuth.
Ngoài ra, để cấu hình VS Code thủ công, hãy chọn khối JSON phù hợp từ các ví dụ bên dưới và thêm nó vào cấu hình máy chủ của bạn:
Lưu ý: Mỗi ứng dụng máy chủ MCP cần cấu hình một GitHub App hoặc OAuth App để hỗ trợ truy cập từ xa qua OAuth. Bất kỳ ứng dụng máy chủ nào hỗ trợ máy chủ MCP từ xa đều nên hỗ trợ máy chủ GitHub từ xa với xác thực PAT. Chi tiết cấu hình và mức hỗ trợ khác nhau tùy theo máy chủ. Hãy đảm bảo tham khảo tài liệu của ứng dụng máy chủ để biết thêm thông tin.
Cấu hình
Cấu hình bộ công cụ
Xem Tài liệu Máy chủ Từ xa để biết đầy đủ chi tiết về cấu hình máy chủ từ xa, bộ công cụ, tiêu đề và cách sử dụng nâng cao. Tệp này cung cấp hướng dẫn và ví dụ toàn diện để kết nối, tùy chỉnh và cài đặt GitHub MCP Server từ xa trong VS Code và các máy chủ MCP khác.
Khi không có bộ công cụ nào được chỉ định, bộ công cụ mặc định sẽ được sử dụng.
Chế độ Người dùng nội bộ
Dùng thử các tính năng mới sớm! Máy chủ từ xa cung cấp phiên bản nội bộ với quyền truy cập sớm vào các tính năng mới và công cụ thử nghiệm.
Lưu ý: Khi sử dụng OAuth với GitHub Enterprise cùng VS Code và GitHub Copilot, bạn cũng cần cấu hình cài đặt VS Code của mình để trỏ đến phiên bản GitHub Enterprise của bạn - xem Xác thực từ VS Code
Để chạy máy chủ trong container, bạn cần cài đặt Docker.
Sau khi cài đặt Docker, bạn cũng cần đảm bảo Docker đang chạy. Docker image có sẵn tại ghcr.io/github/github-mcp-server. Image là công khai; nếu bạn gặp lỗi khi pull, bạn có thể có token hết hạn và cần docker logout ghcr.io.
Xác thực. Trên github.com, bạn không cần tạo bất cứ thứ gì trước — các nút một lần nhấp ở trên sẽ đăng nhập cho bạn bằng OAuth trong lần sử dụng đầu tiên (quy trình dựa trên trình duyệt; token chỉ được giữ trong bộ nhớ). Các nút Docker công bố một cổng callback cố định (127.0.0.1:8085) để callback đăng nhập của container có thể truy cập được. Xem Đăng nhập OAuth Máy chủ Cục bộ để biết cách thức hoạt động, phương án dự phòng headless/device-code và mang theo OAuth hoặc GitHub App của riêng bạn (bắt buộc đối với GitHub Enterprise Server và ghe.com).
Bạn thích dùng token hơn? Bạn vẫn có thể xác thực bằng GitHub Personal Access Token bằng cách đặt GITHUB_PERSONAL_ACCESS_TOKEN thay thế (nó được ưu tiên hơn OAuth). MCP server có thể sử dụng nhiều API của GitHub, vì vậy hãy bật các quyền mà bạn cảm thấy thoải mái khi cấp cho các công cụ AI của mình (để tìm hiểu thêm về token truy cập, vui lòng xem tài liệu).
Xử lý PAT một cách an toàn
Biến môi trường (Khuyến nghị)
Để giữ GitHub PAT của bạn an toàn và có thể tái sử dụng trên các máy chủ MCP khác nhau:
Lưu trữ PAT của bạn trong các biến môi trường
export GITHUB_PAT=your_token_here
Hoặc tạo một tệp .env:
GITHUB_PAT=your_token_here
Bảo vệ tệp .env của bạn
# Add to .gitignore to prevent accidental commits
echo ".env" >> .gitignore
Tham chiếu token trong cấu hình
# CLI usage
claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
# In config files (where supported)
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PAT"
}
Lưu ý: Hỗ trợ biến môi trường khác nhau tùy theo ứng dụng máy chủ và IDE. Một số ứng dụng (như Windsurf) yêu cầu token được mã hóa cứng trong tệp cấu hình.
Thực hành tốt nhất về bảo mật token
Phạm vi tối thiểu: Chỉ cấp các quyền cần thiết
repo - Hoạt động kho lưu trữ
read:packages - Truy cập Docker image
read:org - Truy cập nhóm tổ chức
Token riêng biệt: Sử dụng các PAT khác nhau cho các dự án/môi trường khác nhau
Luân chuyển thường xuyên: Cập nhật token định kỳ
Không bao giờ commit: Giữ token ngoài kiểm soát phiên bản
Quyền tệp: Hạn chế quyền truy cập vào các tệp cấu hình chứa token
chmod 600 ~/.your-app/config.json
GitHub Enterprise Server và Enterprise Cloud với cư trú dữ liệu (ghe.com)
Cờ --gh-host và biến môi trường GITHUB_HOST có thể được sử dụng để đặt
tên máy chủ cho GitHub Enterprise Server hoặc GitHub Enterprise Cloud với cư trú dữ liệu.
Đối với GitHub Enterprise Server, hãy thêm tiền tố tên máy chủ bằng lược đồ URI https://, vì nếu không, nó sẽ mặc định là http://, mà GitHub Enterprise Server không hỗ trợ.
Đối với GitHub Enterprise Cloud với cư trú dữ liệu, hãy sử dụng https://YOURSUBDOMAIN.ghe.com làm tên máy chủ.
Để cài đặt nhanh, hãy sử dụng một trong các nút cài đặt một lần nhấp ở trên. Sau khi hoàn tất quy trình đó, hãy chuyển đổi chế độ Agent (nằm cạnh ô nhập văn bản Copilot Chat) và máy chủ sẽ khởi động.
Tìm hiểu thêm về việc sử dụng các công cụ máy chủ MCP trong tài liệu chế độ agent của VS Code.
Cài đặt trong GitHub Copilot trên các IDE khác (JetBrains, Visual Studio, Eclipse, v.v.)
Thêm một trong các khối JSON sau vào cài đặt MCP của IDE của bạn.
Đăng nhập bằng OAuth (không cần tạo hoặc lưu trữ token). Trên github.com, image chính thức đã bao gồm thông tin xác thực ứng dụng, vì vậy bạn không cần tự cung cấp: nó chạy đăng nhập dựa trên trình duyệt trong lần sử dụng đầu tiên và giữ token kết quả chỉ trong bộ nhớ. Trong Docker, điều này cần một cổng callback cố định được công bố tới loopback để callback đăng nhập của container có thể truy cập được:
Xem Đăng nhập OAuth Máy chủ Cục bộ để biết quy trình native-binary (không cần cổng cố định), phương án dự phòng headless/device-code, GitHub Enterprise Server / ghe.com, và mang theo OAuth hoặc GitHub App của riêng bạn.
Hoặc xác thực bằng Personal Access Token. Đặt GITHUB_PERSONAL_ACCESS_TOKEN thay thế (nó được ưu tiên hơn OAuth):
Tùy chọn, bạn có thể thêm một ví dụ tương tự (tức là không có khóa mcp) vào một tệp có tên .vscode/mcp.json trong không gian làm việc của bạn. Điều này sẽ cho phép bạn chia sẻ cấu hình với các ứng dụng máy chủ khác chấp nhận cùng định dạng.
Để có tổng quan đầy đủ về tất cả các tùy chọn cài đặt, hãy xem Chỉ mục Hướng dẫn Cài đặt của chúng tôi.
Lưu ý: Bất kỳ ứng dụng máy chủ nào hỗ trợ máy chủ MCP cục bộ đều có thể truy cập GitHub MCP Server cục bộ. Tuy nhiên, quy trình cấu hình cụ thể, cú pháp và độ ổn định của tích hợp sẽ khác nhau tùy theo ứng dụng máy chủ. Mặc dù nhiều ứng dụng có thể tuân theo định dạng tương tự như các ví dụ trên, điều này không được đảm bảo. Vui lòng tham khảo tài liệu của ứng dụng máy chủ của bạn để biết cú pháp cấu hình MCP chính xác và quy trình thiết lập.
Xây dựng từ mã nguồn
Nếu bạn không có Docker, bạn có thể sử dụng go build để build tệp nhị phân trong thư mục
cmd/github-mcp-server, và sử dụng lệnh github-mcp-server stdio với biến môi trường GITHUB_PERSONAL_ACCESS_TOKEN được đặt thành token của bạn. Để chỉ định vị trí đầu ra của bản build, hãy sử dụng cờ -o. Bạn nên cấu hình máy chủ của mình để sử dụng tệp thực thi đã build làm command của nó. Ví dụ:
Tệp nhị phân github-mcp-server bao gồm một vài lệnh con CLI hữu ích cho việc gỡ lỗi và khám phá máy chủ.
github-mcp-server tool-search "<query>" tìm kiếm công cụ theo tên, mô tả và tên tham số đầu vào. Sử dụng --max-results để trả về nhiều kết quả khớp hơn.
Ví dụ (đầu ra có màu yêu cầu TTY; sử dụng docker run -t (hoặc -it) khi chạy trong Docker):
GitHub MCP Server hỗ trợ bật hoặc tắt các nhóm chức năng cụ thể thông qua cờ --toolsets. Điều này cho phép bạn kiểm soát những khả năng API GitHub nào có sẵn cho các công cụ AI của mình. Chỉ bật những bộ công cụ bạn cần có thể giúp LLM lựa chọn công cụ và giảm kích thước ngữ cảnh.
Các bộ công cụ không giới hạn ở Công cụ. Các Tài nguyên và Lời nhắc MCP liên quan cũng được bao gồm khi thích hợp.
Đang tìm ví dụ? Xem Hướng dẫn Cấu hình Máy chủ để biết các công thức phổ biến như thiết lập tối thiểu, chế độ chỉ đọc và kết hợp công cụ với bộ công cụ.
Chỉ định Bộ công cụ
Để chỉ định các bộ công cụ bạn muốn có sẵn cho LLM, bạn có thể truyền danh sách cho phép theo hai cách:
Biến môi trường GITHUB_TOOLSETS được ưu tiên hơn đối số dòng lệnh nếu cả hai đều được cung cấp.
Chỉ định Công cụ Riêng lẻ
Bạn cũng có thể cấu hình các công cụ cụ thể bằng cờ --tools. Các công cụ có thể được sử dụng độc lập hoặc kết hợp với các bộ công cụ để kiểm soát chi tiết.
Điều này đăng ký tất cả các công cụ từ bộ công cụ repos và issues, cộng thêm get_gist.
Lưu ý Quan trọng:
Công cụ và bộ công cụ có thể được sử dụng cùng nhau
Chế độ chỉ đọc được ưu tiên: các công cụ ghi bị bỏ qua nếu --read-only được đặt, ngay cả khi được yêu cầu rõ ràng qua --tools
Tên công cụ phải khớp chính xác (ví dụ: get_file_contents, không phải getFileContents). Tên công cụ không hợp lệ sẽ khiến máy chủ khởi động thất bại với thông báo lỗi
Khi công cụ được đổi tên, tên cũ được giữ lại dưới dạng bí danh để tương thích ngược. Xem Đổi tên Công cụ để biết chi tiết.
Sử dụng Bộ công cụ Với Docker
Khi sử dụng Docker, bạn có thể truyền các bộ công cụ dưới dạng biến môi trường:
Khuyến nghị mạnh mẽ: Các công cụ cung cấp ngữ cảnh về người dùng hiện tại và ngữ cảnh GitHub bạn đang hoạt động
actions
Quy trình làm việc GitHub Actions và các hoạt động CI/CD
code_quality
Các công cụ liên quan đến Chất lượng Mã GitHub
code_security
Các công cụ liên quan đến bảo mật mã, chẳng hạn như Quét Mã GitHub
copilot
Các công cụ liên quan đến Copilot
dependabot
Các công cụ Dependabot
discussions
Các công cụ liên quan đến Thảo luận GitHub
gists
Các công cụ liên quan đến GitHub Gist
git
Các công cụ liên quan đến GitHub Git API cho các hoạt động Git cấp thấp
issues
Các công cụ liên quan đến GitHub Issues
labels
Các công cụ liên quan đến GitHub Labels
notifications
Các công cụ liên quan đến GitHub Notifications
orgs
Các công cụ liên quan đến GitHub Organization
projects
Các công cụ liên quan đến GitHub Projects
pull_requests
Các công cụ liên quan đến GitHub Pull Request
repos
Các công cụ liên quan đến GitHub Repository
secret_protection
Các công cụ liên quan đến bảo vệ bí mật, chẳng hạn như Quét Bí mật GitHub
security_advisories
Các công cụ liên quan đến tư vấn bảo mật
stargazers
Các công cụ liên quan đến GitHub Stargazers
users
Các công cụ liên quan đến GitHub User
Bộ công cụ Bổ sung trong GitHub MCP Server Từ xa
Bộ công cụ
Mô tả
copilot
Các công cụ liên quan đến Copilot (ví dụ: Copilot Coding Agent)
copilot_spaces
Các công cụ liên quan đến Copilot Spaces
github_support_docs_search
Tìm kiếm tài liệu để trả lời các câu hỏi về sản phẩm và hỗ trợ của GitHub
Công cụ
Actions
actions_get - Lấy chi tiết về các tài nguyên GitHub Actions (quy trình làm việc, lần chạy quy trình, công việc và tạo phẩm)
Phạm vi OAuth Bắt buộc: repo
method: Phương thức thực thi (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
resource_id: Định danh duy nhất của tài nguyên. Điều này sẽ thay đổi tùy theo "phương thức" được cung cấp, vì vậy hãy đảm bảo bạn cung cấp ID chính xác:
Cung cấp ID quy trình làm việc hoặc tên tệp quy trình làm việc (ví dụ: ci.yaml) cho phương thức 'get_workflow'.
Cung cấp ID lần chạy quy trình làm việc cho các phương thức 'get_workflow_run', 'get_workflow_run_usage' và 'get_workflow_run_logs_url'.
Cung cấp ID tạo phẩm cho phương thức 'download_workflow_run_artifact'.
Cung cấp ID công việc cho phương thức 'get_workflow_job'.
(chuỗi, bắt buộc)
actions_list - Liệt kê các quy trình làm việc GitHub Actions trong một kho lưu trữ
Phạm vi OAuth Bắt buộc: repo
method: Hành động thực hiện (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (mặc định: 1) (số, tùy chọn)
per_page: Kết quả mỗi trang cho phân trang (mặc định: 30, tối đa: 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
resource_id: Định danh duy nhất của tài nguyên. Điều này sẽ thay đổi tùy theo "phương thức" được cung cấp, vì vậy hãy đảm bảo bạn cung cấp ID chính xác:
Không cung cấp bất kỳ ID tài nguyên nào cho phương thức 'list_workflows'.
Cung cấp ID quy trình làm việc hoặc tên tệp quy trình làm việc (ví dụ: ci.yaml) cho phương thức 'list_workflow_runs', hoặc bỏ qua để liệt kê tất cả các lần chạy quy trình làm việc trong kho lưu trữ.
Cung cấp ID lần chạy quy trình làm việc cho các phương thức 'list_workflow_jobs' và 'list_workflow_run_artifacts'.
(chuỗi, tùy chọn)
workflow_jobs_filter: Bộ lọc cho các công việc quy trình làm việc. CHỈ sử dụng khi phương thức là 'list_workflow_jobs' (đối tượng, tùy chọn)
workflow_runs_filter: Bộ lọc cho các lần chạy quy trình làm việc. CHỈ sử dụng khi phương thức là 'list_workflow_runs' (đối tượng, tùy chọn)
actions_run_trigger - Kích hoạt các hành động quy trình làm việc GitHub Actions
Phạm vi OAuth Bắt buộc: repo
inputs: Đầu vào mà quy trình làm việc chấp nhận. Chỉ sử dụng cho phương thức 'run_workflow'. (đối tượng, tùy chọn)
method: Phương thức thực thi (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
ref: Tham chiếu git cho quy trình làm việc. Tham chiếu có thể là tên nhánh hoặc thẻ. Bắt buộc cho phương thức 'run_workflow'. (chuỗi, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
run_id: ID của lần chạy quy trình làm việc. Bắt buộc cho tất cả các phương thức ngoại trừ 'run_workflow'. (số, tùy chọn)
workflow_id: ID quy trình làm việc (dạng số) hoặc tên tệp quy trình làm việc (ví dụ: main.yml, ci.yaml). Bắt buộc cho phương thức 'run_workflow'. (chuỗi, tùy chọn)
get_job_logs - Lấy nhật ký công việc quy trình làm việc GitHub Actions
Phạm vi OAuth Bắt buộc: repo
failed_only: Khi true, lấy nhật ký cho tất cả các công việc thất bại trong lần chạy quy trình làm việc được chỉ định bởi run_id. Yêu cầu run_id phải được cung cấp. (boolean, tùy chọn)
job_id: Định danh duy nhất của công việc quy trình làm việc. Bắt buộc khi lấy nhật ký cho một công việc duy nhất. (số, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
return_content: Trả về nội dung nhật ký thực tế thay vì URL (boolean, tùy chọn)
run_id: Định danh duy nhất của lần chạy quy trình làm việc. Bắt buộc khi failed_only là true để lấy nhật ký cho tất cả các công việc thất bại trong lần chạy. (số, tùy chọn)
tail_lines: Số dòng trả về từ cuối nhật ký (số, tùy chọn)
Chất lượng Mã
- **get_code_quality_finding** - Lấy phát hiện chất lượng mã
- **Phạm vi OAuth Bắt buộc**: `repo`
- `findingNumber`: Số của phát hiện. (số, bắt buộc)
- `owner`: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
- `repo`: Tên của kho lưu trữ. (chuỗi, bắt buộc)
Bảo mật Mã
get_code_scanning_alert - Lấy cảnh báo quét mã
Phạm vi OAuth Bắt buộc: security_events
Phạm vi OAuth Được chấp nhận: repo, security_events
alertNumber: Số của cảnh báo. (số, bắt buộc)
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
Phạm vi OAuth Được chấp nhận: repo, security_events
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
ref: Tham chiếu Git cho các kết quả bạn muốn liệt kê. (chuỗi, tùy chọn)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
severity: Lọc cảnh báo quét mã theo mức độ nghiêm trọng (chuỗi, tùy chọn)
state: Lọc cảnh báo quét mã theo trạng thái. Mặc định là mở (chuỗi, tùy chọn)
tool_name: Tên của công cụ được sử dụng để quét mã. (chuỗi, tùy chọn)
Ngữ cảnh
get_me - Lấy hồ sơ người dùng của tôi
Không yêu cầu tham số
get_team_members - Lấy thành viên nhóm
Phạm vi OAuth Bắt buộc: read:org
Phạm vi OAuth Được chấp nhận: admin:org, read:org, write:org
org: Thông tin đăng nhập tổ chức (chủ sở hữu) chứa nhóm. (chuỗi, bắt buộc)
team_slug: Slug của nhóm (chuỗi, bắt buộc)
get_teams - Lấy danh sách nhóm
Phạm vi OAuth Bắt buộc: read:org
Phạm vi OAuth Được chấp nhận: admin:org, read:org, write:org
user: Tên người dùng để lấy danh sách nhóm. Nếu không được cung cấp, sử dụng người dùng đã xác thực. (chuỗi, tùy chọn)
Copilot
assign_copilot_to_issue - Gán Copilot cho vấn đề
Phạm vi OAuth Bắt buộc: repo
base_ref: Tham chiếu Git (ví dụ: nhánh) mà tác nhân sẽ bắt đầu công việc từ đó. Nếu không được chỉ định, mặc định là nhánh mặc định của kho lưu trữ (chuỗi, tùy chọn)
custom_instructions: Hướng dẫn tùy chỉnh tùy chọn để hướng dẫn tác nhân ngoài nội dung vấn đề. Sử dụng điều này để cung cấp ngữ cảnh bổ sung, ràng buộc hoặc hướng dẫn không được nắm bắt trong mô tả vấn đề (chuỗi, tùy chọn)
issue_number: Số vấn đề (số, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
request_copilot_review - Yêu cầu đánh giá Copilot
Phạm vi OAuth Bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số yêu cầu kéo (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
Dependabot
get_dependabot_alert - Lấy cảnh báo dependabot
Phạm vi OAuth Bắt buộc: security_events
Phạm vi OAuth Được chấp nhận: repo, security_events
alertNumber: Số của cảnh báo. (số, bắt buộc)
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
Phạm vi OAuth Được chấp nhận: repo, security_events
after: Con trỏ cho phân trang. Sử dụng con trỏ từ phản hồi trước đó. (chuỗi, tùy chọn)
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
severity: Lọc cảnh báo dependabot theo mức độ nghiêm trọng (chuỗi, tùy chọn)
state: Lọc cảnh báo dependabot theo trạng thái. Mặc định là mở (chuỗi, tùy chọn)
Thảo luận
discussion_comment_write - Quản lý bình luận thảo luận
Phạm vi OAuth Bắt buộc: repo
body: Nội dung bình luận (bắt buộc cho các phương thức 'add', 'reply' và 'update') (chuỗi, tùy chọn)
commentNodeID: ID Node của bình luận thảo luận (bắt buộc cho các phương thức 'reply', 'update', 'delete', 'mark_answer' và 'unmark_answer'). Đối với 'reply', đây là bình luận cấp cao nhất để trả lời; GitHub Discussions chỉ hỗ trợ một cấp lồng nhau. (chuỗi, tùy chọn)
discussionNumber: Số thảo luận (bắt buộc cho các phương thức 'add' và 'reply') (số, tùy chọn)
method: Thao tác ghi để thực hiện trên một bình luận thảo luận.
Các tùy chọn là:
'add' - thêm một bình luận cấp cao nhất mới vào một cuộc thảo luận.
'reply' - trả lời một bình luận thảo luận cấp cao nhất (GitHub Discussions chỉ hỗ trợ một cấp lồng nhau).
'update' - cập nhật một bình luận thảo luận hiện có.
'delete' - xóa một bình luận thảo luận.
'mark_answer' - đánh dấu một bình luận thảo luận là câu trả lời (chỉ dành cho Hỏi & Đáp).
'unmark_answer' - bỏ đánh dấu một bình luận thảo luận là câu trả lời (chỉ dành cho Hỏi & Đáp).
(chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (bắt buộc cho các phương thức 'add' và 'reply') (chuỗi, tùy chọn)
repo: Tên kho lưu trữ (bắt buộc cho các phương thức 'add' và 'reply') (chuỗi, tùy chọn)
get_discussion - Lấy thảo luận
Phạm vi OAuth Bắt buộc: repo
discussionNumber: Số thảo luận (số, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
get_discussion_comments - Lấy bình luận thảo luận
Phạm vi OAuth Bắt buộc: repo
after: Con trỏ cho phân trang. Sử dụng con trỏ từ phản hồi trước đó. (chuỗi, tùy chọn)
discussionNumber: Số thảo luận (số, bắt buộc)
includeReplies: Khi true, mỗi bình luận cấp cao nhất sẽ bao gồm các câu trả lời được lồng bên trong nó (tối đa 100 câu trả lời mỗi bình luận, là giới hạn tối đa của GitHub API). Mặc định là false. (boolean, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ. Nếu không được cung cấp, các danh mục thảo luận sẽ được truy vấn ở cấp tổ chức. (chuỗi, tùy chọn)
list_discussions - Liệt kê thảo luận
Phạm vi OAuth Bắt buộc: repo
after: Con trỏ cho phân trang. Sử dụng con trỏ từ phản hồi trước đó. (chuỗi, tùy chọn)
category: Bộ lọc tùy chọn theo ID danh mục thảo luận. Nếu được cung cấp, chỉ các thảo luận có danh mục này được liệt kê. (chuỗi, tùy chọn)
direction: Hướng sắp xếp. (chuỗi, tùy chọn)
orderBy: Sắp xếp thảo luận theo trường. Nếu được cung cấp, 'direction' cũng cần được cung cấp. (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ. Nếu không được cung cấp, các thảo luận sẽ được truy vấn ở cấp tổ chức. (chuỗi, tùy chọn)
Gists
create_gist - Tạo Gist
Phạm vi OAuth Bắt buộc: gist
content: Nội dung cho việc tạo gist đơn giản một tệp (chuỗi, bắt buộc)
description: Mô tả của gist (chuỗi, tùy chọn)
filename: Tên tệp cho việc tạo gist đơn giản một tệp (chuỗi, bắt buộc)
public: Gist có công khai hay không (boolean, tùy chọn)
get_gist - Lấy Nội dung Gist
gist_id: ID của gist (chuỗi, bắt buộc)
list_gists - Liệt kê Gists
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
since: Chỉ các gist được cập nhật sau thời gian này (dấu thời gian ISO 8601) (chuỗi, tùy chọn)
username: Tên người dùng GitHub (bỏ qua để lấy gist của người dùng đã xác thực) (chuỗi, tùy chọn)
update_gist - Cập nhật Gist
Phạm vi OAuth Bắt buộc: gist
content: Nội dung cho tệp (chuỗi, bắt buộc)
description: Mô tả đã cập nhật của gist (chuỗi, tùy chọn)
filename: Tên tệp để cập nhật hoặc tạo mới (chuỗi, bắt buộc)
gist_id: ID của gist cần cập nhật (chuỗi, bắt buộc)
Git
get_repository_tree - Lấy cây kho lưu trữ
Phạm vi OAuth Bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tổ chức) (chuỗi, bắt buộc)
path_filter: Tiền tố đường dẫn tùy chọn để lọc kết quả cây (ví dụ: 'src/' để chỉ hiển thị các tệp trong thư mục src) (chuỗi, tùy chọn)
recursive: Đặt tham số này thành true sẽ trả về các đối tượng hoặc cây con được tham chiếu bởi cây. Mặc định là false (boolean, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
tree_sha: Giá trị SHA1 hoặc tên ref (nhánh hoặc thẻ) của cây. Mặc định là nhánh mặc định của kho lưu trữ (chuỗi, tùy chọn)
Vấn đề
add_issue_comment - Thêm bình luận vào vấn đề hoặc yêu cầu kéo
Phạm vi OAuth Bắt buộc: repo
body: Nội dung bình luận. Bắt buộc trừ khi phản ứng được cung cấp. (chuỗi, tùy chọn)
comment_id: ID số của bình luận vấn đề hoặc yêu cầu kéo để phản ứng. Sử dụng điều này cho các phản ứng đối với bình luận; bỏ qua nó để phản ứng với chính vấn đề hoặc yêu cầu kéo. Không thể kết hợp với body. (số, tùy chọn)
issue_number: Số vấn đề hoặc yêu cầu kéo để bình luận hoặc phản ứng. (số, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
reaction: Phản ứng emoji để thêm. Bắt buộc trừ khi body được cung cấp. (chuỗi, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
get_label - Lấy một nhãn cụ thể từ kho lưu trữ
Phạm vi OAuth bắt buộc: repo
name: Tên nhãn. (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tên tổ chức) (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
issue_read - Lấy chi tiết vấn đề
Phạm vi OAuth bắt buộc: repo
issue_number: Số của vấn đề (số, bắt buộc)
method: Thao tác đọc cần thực hiện trên một vấn đề.
Các tùy chọn là:
get - Lấy chi tiết vấn đề. Cũng trả về các cờ phân cấp theo nỗ lực tốt nhất (has_parent, has_children); parent và sub_issues_summary là các bản tóm tắt quan hệ tùy chọn.
get_comments - Lấy bình luận của vấn đề.
get_sub_issues - Lấy các vấn đề con (con) của vấn đề.
get_parent - Lấy vấn đề cha, nếu vấn đề này là vấn đề con của một vấn đề khác.
get_labels - Lấy các nhãn được gán cho vấn đề.
(chuỗi, bắt buộc)
owner: Chủ sở hữu của kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên của kho lưu trữ (chuỗi, bắt buộc)
issue_write - Tạo hoặc cập nhật vấn đề/yêu cầu kéo
Phạm vi OAuth bắt buộc: repo
assignees: Tên người dùng cần gán cho vấn đề này (chuỗi[], tùy chọn)
body: Nội dung thân vấn đề (chuỗi, tùy chọn)
duplicate_of: Số vấn đề mà vấn đề này là bản sao của. Chỉ được sử dụng khi state_reason là 'duplicate'. (số, tùy chọn)
issue_fields: Giá trị trường vấn đề cần đặt hoặc xóa. Mỗi mục yêu cầu 'field_name' và chính xác một trong 'value', 'field_option_name', hoặc 'delete: true'. (đối tượng[], tùy chọn)
issue_number: Số vấn đề cần cập nhật (số, tùy chọn)
labels: Nhãn cần áp dụng cho vấn đề này (chuỗi[], tùy chọn)
method: Thao tác ghi cần thực hiện trên một vấn đề.
Các tùy chọn là:
'create' - tạo một vấn đề mới.
'update' - cập nhật một vấn đề hiện có.
(chuỗi, bắt buộc)
milestone: Số cột mốc (số, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
state: Trạng thái mới (chuỗi, tùy chọn)
state_reason: Lý do thay đổi trạng thái. Bị bỏ qua trừ khi trạng thái được thay đổi. (chuỗi, tùy chọn)
title: Tiêu đề vấn đề (chuỗi, tùy chọn)
type: Loại của vấn đề này. Chỉ sử dụng nếu loại vấn đề được bật cho kho lưu trữ này. Sử dụng công cụ list_issue_types để lấy giá trị loại hợp lệ cho kho lưu trữ này hoặc tổ chức chủ sở hữu của nó. Nếu kho lưu trữ không hỗ trợ loại vấn đề, hãy bỏ qua tham số này. (chuỗi, tùy chọn)
list_issue_fields - Liệt kê các trường vấn đề
Phạm vi OAuth bắt buộc (bất kỳ): repo, read:org
Phạm vi OAuth được chấp nhận: admin:org, read:org, repo, write:org
owner: Chủ sở hữu tài khoản của kho lưu trữ hoặc tổ chức. Tên không phân biệt chữ hoa chữ thường. (chuỗi, bắt buộc)
repo: Tên của kho lưu trữ. Khi được cung cấp, trả về các trường cho kho lưu trữ cụ thể này (được kế thừa từ tổ chức của nó). Khi bị bỏ qua, trả về trực tiếp các trường cấp tổ chức. (chuỗi, tùy chọn)
list_issue_types - Liệt kê các loại vấn đề có sẵn
Phạm vi OAuth bắt buộc (bất kỳ): repo, read:org
Phạm vi OAuth được chấp nhận: admin:org, read:org, repo, write:org
owner: Chủ sở hữu tài khoản của kho lưu trữ hoặc tổ chức. (chuỗi, bắt buộc)
repo: Tên của kho lưu trữ. Khi được cung cấp, trả về các loại vấn đề cho kho lưu trữ cụ thể này. Khi bị bỏ qua, trả về trực tiếp các loại vấn đề cấp tổ chức. (chuỗi, tùy chọn)
list_issues - Liệt kê các vấn đề
Phạm vi OAuth bắt buộc: repo
after: Con trỏ cho phân trang. Sử dụng con trỏ từ phản hồi trước đó. (chuỗi, tùy chọn)
direction: Hướng sắp xếp. Nếu được cung cấp, 'orderBy' cũng cần được cung cấp. (chuỗi, tùy chọn)
field_filters: Lọc theo giá trị trường vấn đề tùy chỉnh. Mỗi mục nhập lấy một field_name và một value; máy chủ tra cứu trường và ép kiểu giá trị thành kiểu của nó (tên tùy chọn chọn đơn, văn bản, số hoặc ngày YYYY-MM-DD). (đối tượng[], tùy chọn)
labels: Lọc theo nhãn (chuỗi[], tùy chọn)
orderBy: Sắp xếp vấn đề theo trường. Nếu được cung cấp, 'direction' cũng cần được cung cấp. (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
since: Lọc theo ngày (dấu thời gian ISO 8601) (chuỗi, tùy chọn)
state: Lọc theo trạng thái, theo mặc định cả vấn đề mở và đóng đều được trả về khi không được cung cấp (chuỗi, tùy chọn)
search_issues - Tìm kiếm vấn đề
Phạm vi OAuth bắt buộc: repo
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ tùy chọn. Nếu được cung cấp cùng với repo, chỉ các vấn đề cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm sử dụng cú pháp tìm kiếm vấn đề GitHub (chuỗi, bắt buộc)
repo: Tên kho lưu trữ tùy chọn. Nếu được cung cấp cùng với chủ sở hữu, chỉ các vấn đề cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
sort: Sắp xếp trường theo số lượng kết quả khớp của các danh mục, mặc định là kết quả khớp tốt nhất (chuỗi, tùy chọn)
sub_issue_write - Thay đổi vấn đề con
Phạm vi OAuth bắt buộc: repo
after_id: ID của vấn đề con cần được ưu tiên sau (nên chỉ định after_id HOẶC before_id) (số, tùy chọn)
before_id: ID của vấn đề con cần được ưu tiên trước (nên chỉ định after_id HOẶC before_id) (số, tùy chọn)
issue_number: Số của vấn đề cha (số, bắt buộc)
method: Hành động cần thực hiện trên một vấn đề con
Các tùy chọn là:
'add' - thêm một vấn đề con vào vấn đề cha trong kho lưu trữ GitHub.
'remove' - xóa một vấn đề con khỏi vấn đề cha trong kho lưu trữ GitHub.
'reprioritize' - thay đổi thứ tự của các vấn đề con trong một vấn đề cha trong kho lưu trữ GitHub. Sử dụng 'after_id' hoặc 'before_id' để chỉ định vị trí mới.
Ghi phân cấp vấn đề. Để di chuyển một vấn đề con sang cha mới, hãy sử dụng add với replace_parent=true; không có trường cha có thể ghi.
(chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
replace_parent: Khi true, thay thế vấn đề cha hiện tại của vấn đề con. Chỉ sử dụng với phương thức 'add'. (boolean, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sub_issue_id: ID của vấn đề con cần thêm. ID không giống với số vấn đề (số, bắt buộc)
Nhãn
get_label - Lấy một nhãn cụ thể từ kho lưu trữ
Phạm vi OAuth bắt buộc: repo
name: Tên nhãn. (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tên tổ chức) (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
label_write - Thao tác ghi trên nhãn kho lưu trữ
Phạm vi OAuth bắt buộc: repo
color: Màu nhãn dưới dạng mã hex 6 ký tự không có tiền tố '#' (ví dụ: 'f29513'). Bắt buộc cho 'create', tùy chọn cho 'update'. (chuỗi, tùy chọn)
description: Văn bản mô tả nhãn. Tùy chọn cho 'create' và 'update'. (chuỗi, tùy chọn)
method: Thao tác cần thực hiện: 'create', 'update', hoặc 'delete' (chuỗi, bắt buộc)
name: Tên nhãn - bắt buộc cho tất cả các thao tác (chuỗi, bắt buộc)
new_name: Tên mới cho nhãn (chỉ sử dụng với phương thức 'update' để đổi tên) (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tên tổ chức) (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
list_label - Liệt kê nhãn từ kho lưu trữ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tên tổ chức) - bắt buộc cho tất cả các thao tác (chuỗi, bắt buộc)
repo: Tên kho lưu trữ - bắt buộc cho tất cả các thao tác (chuỗi, bắt buộc)
Thông báo
dismiss_notification - Bỏ qua thông báo
Phạm vi OAuth bắt buộc: notifications
state: Trạng thái mới của thông báo (read/done) (chuỗi, bắt buộc)
threadID: ID của luồng thông báo (chuỗi, bắt buộc)
get_notification_details - Lấy chi tiết thông báo
Phạm vi OAuth bắt buộc: notifications
notificationID: ID của thông báo (chuỗi, bắt buộc)
list_notifications - Liệt kê thông báo
Phạm vi OAuth bắt buộc: notifications
before: Chỉ hiển thị thông báo được cập nhật trước thời gian đã cho (định dạng ISO 8601) (chuỗi, tùy chọn)
filter: Lọc thông báo đến, sử dụng mặc định trừ khi được chỉ định. Thông báo đã đọc là những thông báo đã được người dùng xác nhận. Thông báo tham gia là những thông báo mà người dùng trực tiếp tham gia, chẳng hạn như các vấn đề hoặc yêu cầu kéo mà họ đã bình luận hoặc tạo. (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ tùy chọn. Nếu được cung cấp cùng với repo, chỉ thông báo cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ tùy chọn. Nếu được cung cấp cùng với chủ sở hữu, chỉ thông báo cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
since: Chỉ hiển thị thông báo được cập nhật sau thời gian đã cho (định dạng ISO 8601) (chuỗi, tùy chọn)
manage_notification_subscription - Quản lý đăng ký thông báo
Phạm vi OAuth bắt buộc: notifications
action: Hành động cần thực hiện: ignore, watch, hoặc delete đăng ký thông báo. (chuỗi, bắt buộc)
notificationID: ID của luồng thông báo. (chuỗi, bắt buộc)
manage_repository_notification_subscription - Quản lý đăng ký thông báo kho lưu trữ
Phạm vi OAuth bắt buộc: notifications
action: Hành động cần thực hiện: ignore, watch, hoặc delete đăng ký thông báo kho lưu trữ. (chuỗi, bắt buộc)
owner: Chủ sở hữu tài khoản của kho lưu trữ. (chuỗi, bắt buộc)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
mark_all_notifications_read - Đánh dấu tất cả thông báo là đã đọc
Phạm vi OAuth bắt buộc: notifications
lastReadAt: Mô tả thời điểm cuối cùng thông báo được kiểm tra (tùy chọn). Mặc định: Hiện tại (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ tùy chọn. Nếu được cung cấp cùng với repo, chỉ thông báo cho kho lưu trữ này được đánh dấu là đã đọc. (chuỗi, tùy chọn)
repo: Tên kho lưu trữ tùy chọn. Nếu được cung cấp cùng với chủ sở hữu, chỉ thông báo cho kho lưu trữ này được đánh dấu là đã đọc. (chuỗi, tùy chọn)
Tổ chức
search_orgs - Tìm kiếm tổ chức
Phạm vi OAuth bắt buộc: read:org
Phạm vi OAuth được chấp nhận: admin:org, read:org, write:org
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm tổ chức. Ví dụ: 'microsoft', 'location:california', 'created:>=2025-01-01'. Tìm kiếm tự động giới hạn trong type:org. (chuỗi, bắt buộc)
sort: Trường sắp xếp theo danh mục (chuỗi, tùy chọn)
Dự án
projects_get - Lấy chi tiết tài nguyên GitHub Projects
Phạm vi OAuth bắt buộc: read:project
Phạm vi OAuth được chấp nhận: project, read:project
field_id: ID của trường. Bắt buộc cho phương thức 'get_project_field'. (số, tùy chọn)
field_names: Danh sách cụ thể các tên trường để bao gồm trong phản hồi khi lấy một mục dự án (ví dụ: ["Status", "Priority"]). Được phân giải phía máy chủ thành ID trường — truyền tham số này thay vì 'fields' khi bạn chỉ biết tên dễ đọc. Loại trừ lẫn nhau với 'fields' — chỉ cung cấp một trong hai. Chỉ dùng cho phương thức 'get_project_item'. (mảng chuỗi, tùy chọn)
fields: Danh sách cụ thể các ID trường để bao gồm trong phản hồi khi lấy một mục dự án (ví dụ: ["102589", "985201", "169875"]). Nếu không cung cấp 'fields' hoặc 'field_names', chỉ có trường tiêu đề được bao gồm. Loại trừ lẫn nhau với 'field_names' — chỉ cung cấp một trong hai. Chỉ dùng cho phương thức 'get_project_item'. (mảng chuỗi, tùy chọn)
item_id: ID của mục. Bắt buộc cho phương thức 'get_project_item'. (số, tùy chọn)
method: Phương thức cần thực thi (chuỗi, bắt buộc)
owner: Chủ sở hữu (tên đăng nhập người dùng hoặc tổ chức). Tên không phân biệt chữ hoa chữ thường. (chuỗi, tùy chọn)
owner_type: Loại chủ sở hữu (user hoặc org). Nếu không được cung cấp, sẽ tự động phát hiện. (chuỗi, tùy chọn)
project_number: Số của dự án. (số, tùy chọn)
status_update_id: ID nút của cập nhật trạng thái dự án. Bắt buộc cho phương thức 'get_project_status_update'. (chuỗi, tùy chọn)
projects_list - Liệt kê tài nguyên GitHub Projects
Phạm vi OAuth bắt buộc: read:project
Phạm vi OAuth được chấp nhận: project, read:project
after: Con trỏ phân trang tiến từ pageInfo.nextCursor trước đó. (chuỗi, tùy chọn)
before: Con trỏ phân trang lùi từ pageInfo.prevCursor trước đó (hiếm khi dùng). (chuỗi, tùy chọn)
field_names: Tên trường để bao gồm khi liệt kê các mục dự án (ví dụ: ["Status", "Priority"]). Được phân giải phía máy chủ thành ID trường — truyền tham số này thay vì 'fields' khi bạn chỉ biết tên dễ đọc. Tên không phân giải được sẽ trả về lỗi có cấu trúc. Loại trừ lẫn nhau với 'fields' — chỉ cung cấp một trong hai. Chỉ dùng cho phương thức 'list_project_items'. (mảng chuỗi, tùy chọn)
fields: ID trường để bao gồm khi liệt kê các mục dự án (ví dụ: ["102589", "985201"]). QUAN TRỌNG: Luôn cung cấp để nhận giá trị trường. Nếu không có tham số này (và không có 'field_names'), chỉ có tiêu đề được trả về. Loại trừ lẫn nhau với 'field_names' — chỉ cung cấp một trong hai. Chỉ dùng cho phương thức 'list_project_items'. (mảng chuỗi, tùy chọn)
method: Hành động cần thực hiện (chuỗi, bắt buộc)
owner: Chủ sở hữu (tên đăng nhập người dùng hoặc tổ chức). Tên không phân biệt chữ hoa chữ thường. (chuỗi, bắt buộc)
owner_type: Loại chủ sở hữu (user hoặc org). Nếu không được cung cấp, sẽ tự động thử cả hai. (chuỗi, tùy chọn)
project_number: Số của dự án. Bắt buộc cho các phương thức 'list_project_fields', 'list_project_items', và 'list_project_status_updates'. (số, tùy chọn)
query: Chuỗi lọc/truy vấn. Đối với list_projects: lọc theo văn bản tiêu đề và trạng thái (ví dụ: "roadmap is:open"). Đối với list_project_items: lọc nâng cao sử dụng cú pháp lọc dự án của GitHub. (chuỗi, tùy chọn)
projects_write - Quản lý GitHub Projects
Phạm vi OAuth bắt buộc: project
body: Nội dung của cập nhật trạng thái (markdown). Dùng cho phương thức 'create_project_status_update'. (chuỗi, tùy chọn)
field_name: Tên của trường lặp (ví dụ: 'Sprint'). Bắt buộc cho phương thức 'create_iteration_field'. (chuỗi, tùy chọn)
issue_number: Số issue. Bắt buộc cho 'add_project_item' khi item_type là 'issue'. Cũng được chấp nhận bởi 'update_project_item' để phân giải mục theo số issue (kết hợp với item_owner và item_repo). (số, tùy chọn)
item_id: ID mục dự án. Bắt buộc cho 'delete_project_item'. Đối với 'update_project_item', cung cấp item_id, hoặc (item_owner + item_repo + issue_number) để phân giải mục theo issue. (số, tùy chọn)
item_owner: Chủ sở hữu (người dùng hoặc tổ chức) của kho lưu trữ chứa issue hoặc pull request. Bắt buộc cho phương thức 'add_project_item'. Cũng được chấp nhận bởi 'update_project_item' khi phân giải mục theo số issue. (chuỗi, tùy chọn)
item_repo: Tên của kho lưu trữ chứa issue hoặc pull request. Bắt buộc cho phương thức 'add_project_item'. Cũng được chấp nhận bởi 'update_project_item' khi phân giải mục theo số issue. (chuỗi, tùy chọn)
item_type: Loại của mục, issue hoặc pull_request. Bắt buộc cho phương thức 'add_project_item'. (chuỗi, tùy chọn)
iteration_duration: Thời lượng theo ngày cho các lần lặp của trường (ví dụ: 7 cho hàng tuần, 14 cho hai tuần một lần). Bắt buộc cho phương thức 'create_iteration_field'. (số, tùy chọn)
iterations: Các lần lặp tùy chỉnh cho phương thức 'create_iteration_field'. Chỉ đặt tham số này khi bạn cần các lần lặp có thời lượng khác nhau, có khoảng nghỉ giữa chúng, hoặc tiêu đề cụ thể. Nếu không, hãy bỏ qua: GitHub tự động tạo ba lần lặp với 'iteration_duration' ngày bắt đầu từ 'start_date', đây là lựa chọn phù hợp cho hầu hết các trường hợp. (mảng đối tượng, tùy chọn)
method: Phương thức cần thực thi (chuỗi, bắt buộc)
owner: Chủ sở hữu dự án (tên đăng nhập người dùng hoặc tổ chức). Tên không phân biệt chữ hoa chữ thường. (chuỗi, bắt buộc)
owner_type: Loại chủ sở hữu (user hoặc org). Bắt buộc cho phương thức 'create_project'. Nếu không được cung cấp cho các phương thức khác, sẽ tự động phát hiện. (chuỗi, tùy chọn)
project_number: Số của dự án. Bắt buộc cho tất cả các phương thức ngoại trừ 'create_project'. (số, tùy chọn)
pull_request_number: Số pull request (dùng khi item_type là 'pull_request' cho phương thức 'add_project_item'). Cung cấp issue_number hoặc pull_request_number. (số, tùy chọn)
start_date: Ngày bắt đầu theo định dạng YYYY-MM-DD. Dùng cho các phương thức 'create_project_status_update' và 'create_iteration_field'. (chuỗi, tùy chọn)
status: Trạng thái của dự án. Dùng cho phương thức 'create_project_status_update'. (chuỗi, tùy chọn)
target_date: Ngày mục tiêu của cập nhật trạng thái theo định dạng YYYY-MM-DD. Dùng cho phương thức 'create_project_status_update'. (chuỗi, tùy chọn)
title: Tiêu đề dự án. Bắt buộc cho phương thức 'create_project'. (chuỗi, tùy chọn)
updated_field: Đối tượng mô tả trường cần cập nhật và giá trị mới của nó. Bắt buộc cho 'update_project_item'. Chấp nhận hai dạng: (1) theo ID — {"id": 123456, "value": "..."}; (2) theo tên — {"name": "Status", "value": "In Progress"}. Đối với trường chọn đơn, phân giải tên tùy chọn yêu cầu dạng theo tên; với dạng theo ID, truyền ID tùy chọn. Đặt value thành null để xóa trường. (đối tượng, tùy chọn)
Pull Requests
add_comment_to_pending_review - Thêm bình luận đánh giá vào đánh giá pull request đang chờ xử lý mới nhất của người yêu cầu
Phạm vi OAuth bắt buộc: repo
body: Văn bản của bình luận đánh giá (chuỗi, bắt buộc)
line: Dòng của blob trong diff pull request mà bình luận áp dụng. Đối với bình luận nhiều dòng, là dòng cuối cùng của phạm vi (số, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
path: Đường dẫn tương đối đến tệp cần bình luận (chuỗi, bắt buộc)
pullNumber: Số pull request (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
side: Phía của diff để bình luận. LEFT chỉ trạng thái trước đó, RIGHT chỉ trạng thái mới (chuỗi, tùy chọn)
startLine: Đối với bình luận nhiều dòng, dòng đầu tiên của phạm vi mà bình luận áp dụng (số, tùy chọn)
startSide: Đối với bình luận nhiều dòng, phía bắt đầu của diff mà bình luận áp dụng. LEFT chỉ trạng thái trước đó, RIGHT chỉ trạng thái mới (chuỗi, tùy chọn)
subjectType: Cấp độ mà bình luận được nhắm mục tiêu (chuỗi, bắt buộc)
add_reply_to_pull_request_comment - Thêm trả lời vào bình luận pull request
Phạm vi OAuth bắt buộc: repo
body: Văn bản trả lời. Bắt buộc trừ khi reaction được cung cấp. (chuỗi, tùy chọn)
commentId: ID số của bình luận đánh giá pull request cần trả lời hoặc phản ứng. Sử dụng số từ neo #discussion_r..., không phải ID nút luồng GraphQL (PRRT_...). (số, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số pull request. Bắt buộc khi body được cung cấp. (số, tùy chọn)
reaction: Phản ứng emoji để thêm. Bắt buộc trừ khi body được cung cấp. (chuỗi, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
create_pull_request - Mở pull request mới
Phạm vi OAuth bắt buộc: repo
base: Nhánh để hợp nhất vào (chuỗi, bắt buộc)
body: Mô tả PR (chuỗi, tùy chọn)
draft: Tạo dưới dạng PR nháp (boolean, tùy chọn)
head: Nhánh chứa các thay đổi (chuỗi, bắt buộc)
maintainer_can_modify: Cho phép người bảo trì chỉnh sửa (boolean, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
reviewers: Tên người dùng GitHub hoặc người đánh giá nhóm ORG/team-slug để yêu cầu đánh giá (mảng chuỗi, tùy chọn)
title: Tiêu đề PR (chuỗi, bắt buộc)
list_pull_requests - Liệt kê pull requests
Phạm vi OAuth bắt buộc: repo
base: Lọc theo nhánh cơ sở (chuỗi, tùy chọn)
direction: Hướng sắp xếp (chuỗi, tùy chọn)
head: Lọc theo người dùng/tổ chức head và nhánh (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sort: Sắp xếp theo (chuỗi, tùy chọn)
state: Lọc theo trạng thái (chuỗi, tùy chọn)
merge_pull_request - Hợp nhất pull request
Phạm vi OAuth bắt buộc: repo
commit_message: Chi tiết bổ sung cho commit hợp nhất (chuỗi, tùy chọn)
commit_title: Tiêu đề cho commit hợp nhất (chuỗi, tùy chọn)
merge_method: Phương thức hợp nhất (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số pull request (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
pull_request_read - Lấy thông tin chi tiết của một pull request
Phạm vi OAuth bắt buộc: repo
after: Con trỏ dùng cho phân trang, chỉ được sử dụng bởi phương thức get_review_comments. Truyền endCursor từ PageInfo của trang trước để lấy trang tiếp theo. (chuỗi, tùy chọn)
method: Hành động để chỉ định dữ liệu pull request nào cần được lấy từ GitHub.
Các tùy chọn khả dụng:
get - Lấy thông tin chi tiết của một pull request cụ thể.
get_diff - Lấy diff của một pull request.
get_status - Lấy trạng thái commit kết hợp của commit đầu trong một pull request.
get_files - Lấy danh sách các tệp đã thay đổi trong một pull request. Sử dụng với các tham số phân trang để kiểm soát số lượng kết quả trả về.
get_commits - Lấy danh sách các commit trên một pull request. Sử dụng với các tham số phân trang để kiểm soát số lượng kết quả trả về.
get_review_comments - Lấy các luồng đánh giá trên một pull request. Mỗi luồng chứa các bình luận đánh giá được nhóm logic được tạo trên cùng một vị trí mã trong quá trình đánh giá pull request. Trả về các luồng với siêu dữ liệu (isResolved, isOutdated, isCollapsed) và các bình luận liên quan của chúng. Sử dụng phân trang dựa trên con trỏ (perPage, after) để kiểm soát kết quả.
get_reviews - Lấy các đánh giá trên một pull request. Khi được yêu cầu bình luận đánh giá, hãy sử dụng phương thức get_review_comments. Sử dụng với các tham số phân trang để kiểm soát số lượng kết quả trả về.
get_comments - Lấy bình luận trên một pull request. Sử dụng phương thức này nếu người dùng không yêu cầu cụ thể bình luận đánh giá. Sử dụng với các tham số phân trang để kiểm soát số lượng kết quả trả về.
get_check_runs - Lấy các lần chạy kiểm tra cho commit đầu của một pull request. Các lần chạy kiểm tra là các công việc và kiểm tra CI/CD riêng lẻ chạy trên PR.
(chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
pullNumber: Số pull request (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
pull_request_review_write - Thao tác ghi (tạo, gửi, xóa) trên các đánh giá pull request
Phạm vi OAuth bắt buộc: repo
body: Văn bản bình luận đánh giá (chuỗi, tùy chọn)
commitID: SHA của commit cần đánh giá (chuỗi, tùy chọn)
event: Hành động đánh giá cần thực hiện. (chuỗi, tùy chọn)
method: Thao tác ghi cần thực hiện trên đánh giá pull request. (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số pull request (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
threadId: ID nút của luồng đánh giá (ví dụ: PRRT_kwDOxxx). Bắt buộc cho các phương thức resolve_thread và unresolve_thread. Lấy ID luồng từ pull_request_read với phương thức get_review_comments. (chuỗi, tùy chọn)
search_pull_requests - Tìm kiếm pull request
Phạm vi OAuth bắt buộc: repo
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ tùy chọn. Nếu được cung cấp cùng với repo, chỉ các pull request cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm sử dụng cú pháp tìm kiếm pull request của GitHub (chuỗi, bắt buộc)
repo: Tên kho lưu trữ tùy chọn. Nếu được cung cấp cùng với chủ sở hữu, chỉ các pull request cho kho lưu trữ này được liệt kê. (chuỗi, tùy chọn)
sort: Trường sắp xếp theo số lượng kết quả khớp của các danh mục, mặc định là kết quả khớp tốt nhất (chuỗi, tùy chọn)
update_pull_request - Chỉnh sửa pull request
Phạm vi OAuth bắt buộc: repo
base: Tên nhánh cơ sở mới (chuỗi, tùy chọn)
body: Mô tả mới (chuỗi, tùy chọn)
draft: Đánh dấu pull request là bản nháp (true) hoặc sẵn sàng để đánh giá (false) (boolean, tùy chọn)
maintainer_can_modify: Cho phép người bảo trì chỉnh sửa (boolean, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số pull request cần cập nhật (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
reviewers: Tên người dùng GitHub hoặc người đánh giá nhóm ORG/team-slug để yêu cầu đánh giá (mảng chuỗi, tùy chọn)
state: Trạng thái mới (chuỗi, tùy chọn)
title: Tiêu đề mới (chuỗi, tùy chọn)
update_pull_request_branch - Cập nhật nhánh pull request
Phạm vi OAuth bắt buộc: repo
expectedHeadSha: SHA dự kiến của tham chiếu HEAD của pull request (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
pullNumber: Số pull request (số, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
Kho lưu trữ
create_branch - Tạo nhánh
Phạm vi OAuth bắt buộc: repo
branch: Tên cho nhánh mới (chuỗi, bắt buộc)
from_branch: Nhánh nguồn (mặc định là nhánh mặc định của kho lưu trữ) (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
create_or_update_file - Tạo hoặc cập nhật tệp
Phạm vi OAuth bắt buộc: repo
branch: Nhánh để tạo/cập nhật tệp (chuỗi, bắt buộc)
content: Nội dung của tệp (chuỗi, bắt buộc)
message: Thông điệp commit (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tổ chức) (chuỗi, bắt buộc)
path: Đường dẫn nơi tạo/cập nhật tệp (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sha: SHA blob của tệp đang được thay thế. Bắt buộc nếu tệp đã tồn tại. (chuỗi, tùy chọn)
create_repository - Tạo kho lưu trữ
Phạm vi OAuth bắt buộc: repo
autoInit: Khởi tạo với README (boolean, tùy chọn)
description: Mô tả kho lưu trữ (chuỗi, tùy chọn)
name: Tên kho lưu trữ (chuỗi, bắt buộc)
organization: Tổ chức để tạo kho lưu trữ trong đó (bỏ qua để tạo trong tài khoản cá nhân của bạn) (chuỗi, tùy chọn)
private: Kho lưu trữ có nên ở chế độ riêng tư hay không. Mặc định là true (riêng tư) khi bỏ qua. (boolean, tùy chọn)
delete_file - Xóa tệp
Phạm vi OAuth bắt buộc: repo
branch: Nhánh để xóa tệp khỏi đó (chuỗi, bắt buộc)
message: Thông điệp commit (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tổ chức) (chuỗi, bắt buộc)
path: Đường dẫn đến tệp cần xóa (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
fork_repository - Fork kho lưu trữ
Phạm vi OAuth bắt buộc: repo
organization: Tổ chức để fork đến (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
get_commit - Lấy chi tiết commit
Phạm vi OAuth bắt buộc: repo
detail: Mức độ chi tiết cần bao gồm cho các tệp đã thay đổi. "none" bỏ qua hoàn toàn số liệu thống kê và tệp. "stats" (mặc định) bao gồm siêu dữ liệu mỗi tệp: tên tệp, trạng thái và số dòng mã (thêm, xóa, thay đổi), không có nội dung vá. "full_patch" bao gồm thêm nội dung diff thống nhất cho mỗi tệp và có thể rất lớn. (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sha: SHA commit, tên nhánh hoặc tên thẻ (chuỗi, bắt buộc)
get_file_contents - Lấy nội dung tệp hoặc thư mục
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (tên người dùng hoặc tổ chức) (chuỗi, bắt buộc)
path: Đường dẫn đến tệp/thư mục (chuỗi, tùy chọn)
ref: Chấp nhận các tham chiếu git tùy chọn như refs/tags/{tag}, refs/heads/{branch} hoặc refs/pull/{pr_number}/head (chuỗi, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sha: Chấp nhận SHA commit tùy chọn. Nếu được chỉ định, nó sẽ được sử dụng thay vì ref (chuỗi, tùy chọn)
get_latest_release - Lấy bản phát hành mới nhất
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
get_release_by_tag - Lấy bản phát hành theo tên thẻ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
tag: Tên thẻ (ví dụ: 'v1.0.0') (chuỗi, bắt buộc)
get_tag - Lấy chi tiết thẻ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
tag: Tên thẻ (chuỗi, bắt buộc)
list_branches - Liệt kê các nhánh
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
list_commits - Liệt kê các commit
Phạm vi OAuth bắt buộc: repo
author: Tên người dùng hoặc địa chỉ email của tác giả để lọc commit (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
path: Chỉ các commit chứa đường dẫn tệp này mới được trả về (chuỗi, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
sha: SHA commit, tên nhánh hoặc thẻ để liệt kê các commit. Nếu không được cung cấp, sử dụng nhánh mặc định của kho lưu trữ. Nếu SHA commit được cung cấp, sẽ liệt kê các commit cho đến SHA đó. (chuỗi, tùy chọn)
since: Chỉ các commit sau ngày này mới được trả về (định dạng ISO 8601: YYYY-MM-DDTHH:MM:SSZ hoặc YYYY-MM-DD) (chuỗi, tùy chọn)
until: Chỉ các commit trước ngày này mới được trả về (định dạng ISO 8601: YYYY-MM-DDTHH:MM:SSZ hoặc YYYY-MM-DD) (chuỗi, tùy chọn)
list_releases - Liệt kê các bản phát hành
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
list_repository_collaborators - Liệt kê cộng tác viên của kho lưu trữ
Phạm vi OAuth bắt buộc: repo
affiliation: Lọc theo mối liên kết. Có thể là một trong: 'outside' (cộng tác viên bên ngoài), 'direct' (tất cả có quyền bất kể tư cách thành viên tổ chức), 'all' (tất cả cộng tác viên). Mặc định: 'all' (chuỗi, tùy chọn)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang cho phân trang (mặc định 1, tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang cho phân trang (mặc định 30, tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
list_tags - Liệt kê thẻ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
push_files - Đẩy tệp lên kho lưu trữ
Phạm vi OAuth bắt buộc: repo
branch: Nhánh để đẩy lên (chuỗi, bắt buộc)
files: Mảng các đối tượng tệp để đẩy, mỗi đối tượng có đường dẫn (chuỗi) và nội dung (chuỗi) (object[], bắt buộc)
message: Thông điệp commit (chuỗi, bắt buộc)
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
search_code - Tìm kiếm mã
Phạm vi OAuth bắt buộc: repo
order: Thứ tự sắp xếp kết quả (chuỗi, tùy chọn)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm (REST tìm kiếm mã GitHub). Ngầm định AND giữa các từ; hỗ trợ OR, NOT, và "quoted phrase" cho khớp chính xác. Bộ định tính: repo:owner/repo, org:, user:, language:, path:dir (khớp tiền tố), filename:exact.ext, extension:, in:file, in:path, size:, is:archived, is:fork. Tối đa 256 ký tự. Ví dụ: WithContext language:go org:github; "package main" repo:o/r; func extension:go path:cmd repo:o/r; NOT TODO language:go repo:o/r. (chuỗi, bắt buộc)
sort: Trường sắp xếp (chỉ 'indexed') (chuỗi, tùy chọn)
search_commits - Tìm kiếm commit
Phạm vi OAuth bắt buộc: repo
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm commit (REST tìm kiếm commit GitHub). Chỉ tìm kiếm thông điệp commit trên nhánh mặc định. Giới hạn phạm vi tìm kiếm với repo:owner/repo, org:, hoặc user: (truy vấn không có bộ định tính phạm vi sẽ khớp trên toàn bộ GitHub và thường không phải là điều bạn muốn). Các bộ định tính khác: author:, committer:, author-name:, committer-name:, author-email:, committer-email:, author-date:, committer-date: (hỗ trợ >, <, >=, <=, và phạm vi YYYY-MM-DD..YYYY-MM-DD), merge:true|false, hash:, tree:, parent:, is:public. Ví dụ: repo:owner/repo fix panic; org:github author:defunkt committer-date:>=2024-01-01; "refactor cache" repo:o/r; hash:abc1234 repo:o/r. (chuỗi, bắt buộc)
sort: Sắp xếp theo ngày tác giả hoặc người commit (mặc định là khớp tốt nhất) (chuỗi, tùy chọn)
search_repositories - Tìm kiếm kho lưu trữ
Phạm vi OAuth bắt buộc: repo
minimal_output: Trả về thông tin kho lưu trữ tối thiểu (mặc định: true). Khi false, trả về đối tượng kho lưu trữ đầy đủ của GitHub API. (boolean, tùy chọn)
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm kho lưu trữ. Ví dụ: 'machine learning in:name stars:>1000 language:python', 'topic:react', 'user:facebook'. Hỗ trợ cú pháp tìm kiếm nâng cao để lọc chính xác. (chuỗi, bắt buộc)
sort: Sắp xếp kho lưu trữ theo trường, mặc định là khớp tốt nhất (chuỗi, tùy chọn)
Bảo vệ Bí mật
get_secret_scanning_alert - Lấy cảnh báo quét bí mật
Phạm vi OAuth bắt buộc: security_events
Phạm vi OAuth được chấp nhận: repo, security_events
alertNumber: Số của cảnh báo. (số, bắt buộc)
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
list_secret_scanning_alerts - Liệt kê cảnh báo quét bí mật
Phạm vi OAuth bắt buộc: security_events
Phạm vi OAuth được chấp nhận: repo, security_events
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
resolution: Lọc theo giải pháp (chuỗi, tùy chọn)
secret_type: Danh sách các loại bí mật được phân tách bằng dấu phẩy để trả về. Tất cả các mẫu bí mật mặc định được trả về. Để trả về các mẫu chung, hãy truyền (các) tên token trong tham số. (chuỗi, tùy chọn)
state: Lọc theo trạng thái (chuỗi, tùy chọn)
Tư vấn Bảo mật
get_global_security_advisory - Lấy tư vấn bảo mật toàn cầu
Phạm vi OAuth bắt buộc: security_events
Phạm vi OAuth được chấp nhận: repo, security_events
ghsaId: ID Tư vấn Bảo mật GitHub (định dạng: GHSA-xxxx-xxxx-xxxx). (chuỗi, bắt buộc)
list_global_security_advisories - Liệt kê tư vấn bảo mật toàn cầu
Phạm vi OAuth bắt buộc: security_events
Phạm vi OAuth được chấp nhận: repo, security_events
affects: Lọc tư vấn theo gói hoặc phiên bản bị ảnh hưởng (ví dụ: "package1,package2@1.0.0"). (chuỗi, tùy chọn)
cveId: Lọc theo ID CVE. (chuỗi, tùy chọn)
cwes: Lọc theo ID Liệt kê Điểm yếu Phổ biến (ví dụ: ["79", "284", "22"]). (string[], tùy chọn)
ecosystem: Lọc theo hệ sinh thái gói. (chuỗi, tùy chọn)
ghsaId: Lọc theo ID Tư vấn Bảo mật GitHub (định dạng: GHSA-xxxx-xxxx-xxxx). (chuỗi, tùy chọn)
isWithdrawn: Có chỉ trả về các tư vấn đã bị thu hồi hay không. (boolean, tùy chọn)
modified: Lọc theo ngày xuất bản hoặc cập nhật hoặc phạm vi ngày (ngày ISO 8601 hoặc phạm vi). (chuỗi, tùy chọn)
published: Lọc theo ngày xuất bản hoặc phạm vi ngày (ngày ISO 8601 hoặc phạm vi). (chuỗi, tùy chọn)
severity: Lọc theo mức độ nghiêm trọng. (chuỗi, tùy chọn)
type: Loại tư vấn. (chuỗi, tùy chọn)
updated: Lọc theo ngày cập nhật hoặc phạm vi ngày (ngày ISO 8601 hoặc phạm vi). (chuỗi, tùy chọn)
list_org_repository_security_advisories - Liệt kê tư vấn bảo mật kho lưu trữ của tổ chức
Phạm vi OAuth bắt buộc: security_events
Phạm vi OAuth được chấp nhận: repo, security_events
direction: Hướng sắp xếp. (chuỗi, tùy chọn)
org: Tên đăng nhập tổ chức. (chuỗi, bắt buộc)
sort: Trường sắp xếp. (chuỗi, tùy chọn)
state: Lọc theo trạng thái tư vấn. (chuỗi, tùy chọn)
Phạm vi OAuth được chấp nhận: repo, security_events
direction: Hướng sắp xếp. (chuỗi, tùy chọn)
owner: Chủ sở hữu của kho lưu trữ. (chuỗi, bắt buộc)
repo: Tên của kho lưu trữ. (chuỗi, bắt buộc)
sort: Trường sắp xếp. (chuỗi, tùy chọn)
state: Lọc theo trạng thái tư vấn. (chuỗi, tùy chọn)
Người gắn sao
list_starred_repositories - Liệt kê kho lưu trữ đã gắn sao
Phạm vi OAuth bắt buộc: repo
direction: Hướng sắp xếp kết quả. (chuỗi, tùy chọn)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
sort: Cách sắp xếp kết quả. Có thể là 'created' (khi kho lưu trữ được gắn sao) hoặc 'updated' (khi kho lưu trữ được đẩy lên lần cuối). (chuỗi, tùy chọn)
username: Tên người dùng để liệt kê kho lưu trữ đã gắn sao. Mặc định là người dùng đã xác thực. (chuỗi, tùy chọn)
star_repository - Gắn sao kho lưu trữ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
unstar_repository - Bỏ gắn sao kho lưu trữ
Phạm vi OAuth bắt buộc: repo
owner: Chủ sở hữu kho lưu trữ (chuỗi, bắt buộc)
repo: Tên kho lưu trữ (chuỗi, bắt buộc)
Người dùng
search_users - Tìm kiếm người dùng
Phạm vi OAuth bắt buộc: repo
order: Thứ tự sắp xếp (chuỗi, tùy chọn)
page: Số trang để phân trang (tối thiểu 1) (số, tùy chọn)
perPage: Kết quả mỗi trang để phân trang (tối thiểu 1, tối đa 100) (số, tùy chọn)
query: Truy vấn tìm kiếm người dùng. Ví dụ: 'john smith', 'location:seattle', 'followers:>100'. Tìm kiếm tự động được giới hạn phạm vi thành type:user. (chuỗi, bắt buộc)
sort: Sắp xếp người dùng theo số lượng người theo dõi hoặc kho lưu trữ, hoặc thời điểm người đó tham gia GitHub. (chuỗi, tùy chọn)
Công cụ Bổ sung trong Máy chủ GitHub MCP Từ xa
Copilot
create_pull_request_with_copilot - Thực hiện tác vụ với tác nhân mã hóa GitHub Copilot
owner: Chủ sở hữu kho lưu trữ. Bạn có thể đoán chủ sở hữu, nhưng hãy xác nhận với người dùng trước khi tiếp tục. (chuỗi, bắt buộc)
repo: Tên kho lưu trữ. Bạn có thể đoán tên kho lưu trữ, nhưng hãy xác nhận với người dùng trước khi tiếp tục. (chuỗi, bắt buộc)
problem_statement: Mô tả chi tiết về tác vụ cần thực hiện (ví dụ: 'Triển khai tính năng X', 'Sửa lỗi Y', v.v.) (chuỗi, bắt buộc)
title: Tiêu đề cho pull request sẽ được tạo (chuỗi, bắt buộc)
base_ref: Tham chiếu Git (ví dụ: nhánh) mà tác nhân sẽ bắt đầu công việc từ đó. Nếu không được chỉ định, mặc định là nhánh mặc định của kho lưu trữ (chuỗi, tùy chọn)
Không gian Copilot
Ghi chú xác thực
PAT chi tiết không bị ẩn bởi lọc phạm vi PAT cổ điển, vì vậy các công cụ này vẫn có thể xuất hiện ngay cả khi token không thể sử dụng chúng.
Đối với không gian thuộc sở hữu tổ chức, PAT chi tiết phải được cài đặt trên tổ chức sở hữu và bao gồm organization_copilot_spaces: read.
Nếu không gian thuộc sở hữu tổ chức chứa tài nguyên được hỗ trợ bởi kho lưu trữ, token cũng phải có quyền truy cập vào mọi kho lưu trữ được tham chiếu nếu không không gian có thể được coi là không tìm thấy.
get_copilot_space - Lấy Không gian Copilot
owner: Chủ sở hữu của không gian. (chuỗi, bắt buộc)
name: Tên của không gian. (chuỗi, bắt buộc)
list_copilot_spaces - Liệt kê Không gian Copilot
Tìm kiếm Tài liệu Hỗ trợ GitHub
- **github_support_docs_search** - Truy xuất tài liệu liên quan để trả lời các câu hỏi về sản phẩm và hỗ trợ của GitHub. Các chủ đề hỗ trợ bao gồm: GitHub Actions Workflows, Xác thực, Yêu cầu Hỗ trợ GitHub, Thực hành Pull Request, Bảo trì Kho lưu trữ, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
- `query`: Đầu vào từ người dùng về câu hỏi họ cần được trả lời. Đây là tin nhắn thô mới nhất chưa chỉnh sửa của người dùng. Bạn LUÔN LUÔN nên giữ nguyên tin nhắn của người dùng, không bao giờ sửa đổi nó. (chuỗi, bắt buộc)
Chế độ Chỉ đọc
Để chạy máy chủ ở chế độ chỉ đọc, bạn có thể sử dụng cờ --read-only. Điều này sẽ chỉ cung cấp các công cụ chỉ đọc, ngăn chặn mọi sửa đổi đối với kho lưu trữ, vấn đề, pull request, v.v.
./github-mcp-server --read-only
Khi sử dụng Docker, bạn có thể truyền chế độ chỉ đọc dưới dạng biến môi trường:
Chế độ khóa giới hạn nội dung mà máy chủ sẽ hiển thị từ các kho lưu trữ công khai. Khi được bật, máy chủ sẽ kiểm tra xem tác giả của mỗi mục có quyền push vào kho lưu trữ hay không. Các kho lưu trữ riêng tư không bị ảnh hưởng và cộng tác viên vẫn có toàn quyền truy cập vào nội dung của chính họ.
./github-mcp-server --lockdown-mode
Khi chạy với Docker, hãy đặt biến môi trường tương ứng:
Bạn cũng có thể sử dụng biến môi trường để ghi đè mô tả. Tên biến môi trường
giống với khóa trong tệp JSON, được thêm tiền tố
GITHUB_MCP_ và viết hoa toàn bộ.
Ví dụ, để ghi đè công cụ TOOL_ADD_ISSUE_COMMENT_DESCRIPTION, bạn có thể
đặt biến môi trường sau:
export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"
Ghi đè Tên và Tiêu đề Máy chủ
Cơ chế ghi đè tương tự có thể được sử dụng để tùy chỉnh các trường name và
title của máy chủ MCP trong phản hồi khởi tạo. Điều này hữu ích khi chạy
nhiều phiên bản GitHub MCP Server (ví dụ: một cho github.com và một cho
GitHub Enterprise Server) để các tác nhân có thể phân biệt giữa chúng.
Khóa
Biến Môi trường
Mặc định
SERVER_NAME
GITHUB_MCP_SERVER_NAME
github-mcp-server
SERVER_TITLE
GITHUB_MCP_SERVER_TITLE
GitHub MCP Server
Ví dụ, để cấu hình một phiên bản máy chủ cho GitHub Enterprise Server:
API Go được xuất của mô-đun này hiện nên được coi là không ổn định và có thể có những thay đổi phá vỡ. Trong tương lai, chúng tôi có thể cung cấp sự ổn định; vui lòng gửi một vấn đề nếu có trường hợp sử dụng mà điều này có giá trị.
Đóng góp
Chúng tôi hoan nghênh các đóng góp. Trước khi mở một pull request, vui lòng đọc hướng dẫn đóng góp để biết hướng dẫn thiết lập, kiểm thử, linting và tạo tài liệu.
Hỗ trợ
Để được trợ giúp sử dụng GitHub MCP Server, hãy xem hướng dẫn hỗ trợ. Nếu bạn đã tìm thấy lỗi hoặc muốn yêu cầu một tính năng, vui lòng tìm kiếm các vấn đề hiện có trước khi mở một vấn đề mới.
Bảo mật
Vui lòng không báo cáo lỗ hổng bảo mật thông qua các vấn đề công khai. Làm theo hướng dẫn trong chính sách bảo mật để báo cáo lỗ hổng một cách có trách nhiệm.
Giấy phép
Dự án này được cấp phép theo các điều khoản của giấy phép mã nguồn mở MIT. Vui lòng tham khảo MIT để biết các điều khoản đầy đủ.