productivity
GitHub MCP, CLI, and Lua Integration for AI Agents
GitHub integration docs for AI agents: MCP gateway setup, GitHub CLI commands, Lua API reference, credentials, and function schemas.
30 functions 16 read 14 write API key auth
GitHub for agents
Credentials can be configured manually in web or CLI hosts.
Use this integration from Lua code mode, the headless integrations CLI, or the KosmoKrator MCP gateway. The same package metadata powers all three surfaces.
Machine-Readable Metadata
- integration_slug
github- route_slug
github- package
github- auth_strategy
api_keyAPI key- cli_setup_supported
true- cli_runtime_supported
true- mcp_gateway_supported
true- lua_supported
true- supports_multi_account
true
Quick Links
Lua APIAgent-facing namespace and function reference. GitHub CLIHeadless setup and direct function calls. GitHub MCPMCP gateway setup for external clients. Submit feedbackReport missing tools, auth problems, wrong docs, or runtime issues. ContributeAdd tools or improve metadata in the integrations repo.
GitHub MCP Client Matrix
Use these pages when a specific agent client or framework needs copy-pasteable MCP setup for GitHub.
Claude Code GitHub MCP setup for Claude Code. Cursor GitHub MCP setup for Cursor. Codex GitHub MCP setup for Codex. OpenAI Agents GitHub MCP setup for OpenAI Agents SDK. Claude Agent SDK GitHub MCP setup for Claude Agent SDK. Vercel AI SDK GitHub MCP setup for Vercel AI SDK. LangChain GitHub MCP setup for LangChain. LangGraph GitHub MCP setup for LangGraph. CrewAI GitHub MCP setup for CrewAI. MCP clients GitHub MCP setup for Generic MCP Clients.
GitHub CLI Matrix
Use these pages for direct GitHub CLI workflows in scripts, CI, cron, and agent wrappers.
CI GitHub CLI for CI. Cron Jobs GitHub CLI for cron jobs. Shell Scripts GitHub CLI for shell scripts. Headless Automation GitHub CLI for headless automation. Coding Agents GitHub CLI for coding agents.
Function Catalog
| Function | Type | Parameters | Description |
|---|---|---|---|
github.github_list_repos | Read read | 5 | List repositories for the authenticated GitHub user. Supports filtering by type (all, owner, public, private, member), sorting (created, updated, pushed, full_name), and direction. |
github.github_get_repo | Read read | 2 | Get detailed information about a specific GitHub repository, including description, stats, default branch, and more. |
github.github_create_repo | Write write | 4 | Create a new repository for the authenticated GitHub user. Optionally set description, visibility, and auto-initialize with a README. |
github.github_search_repos | Read read | 4 | Search for repositories on GitHub using keywords, language filters, stars, and more. Returns matching repositories with metadata. |
github.github_list_issues | Read read | 7 | List issues in a GitHub repository. Supports filtering by state (open, closed, all), labels, and sorting. |
github.github_get_issue | Read read | 3 | Get detailed information about a specific GitHub issue, including title, body, labels, assignees, milestone, and comments count. |
github.github_create_issue | Write write | 7 | Create a new issue in a GitHub repository. Requires a title. Optionally set body, assignees, labels, and milestone. |
github.github_update_issue | Write write | 9 | Update an existing issue in a GitHub repository. Can change title, body, state (open/closed), assignees, labels, and milestone. |
github.github_add_labels | Write write | 4 | Add one or more labels to a GitHub issue. Labels are specified by name. If a label does not exist in the repository, it will be created. |
github.github_create_issue_comment | Write write | 4 | Add a comment to a GitHub issue or pull request. The comment body supports GitHub Markdown. |
github.github_list_pull_requests | Read read | 6 | List pull requests in a GitHub repository. Supports filtering by state (open, closed, all) and sorting. |
github.github_get_pull_request | Read read | 3 | Get detailed information about a specific GitHub pull request, including title, body, branch info, merge status, and review status. |
github.github_create_pull_request | Write write | 7 | Create a new pull request in a GitHub repository. Requires a title, head branch (source), and base branch (target). |
github.github_update_pull_request | Write write | 7 | Update an existing pull request in a GitHub repository. Can change title, body, state (open/closed), and base branch. |
github.github_merge_pull_request | Write write | 6 | Merge a GitHub pull request. Supports merge commit, squash, or rebase merge methods. |
github.github_list_pull_request_reviews | Read read | 3 | List all reviews on a GitHub pull request, including review state (approved, changes_requested, commented, dismissed). |
github.github_create_review | Write write | 6 | Create a review on a GitHub pull request. Can approve, request changes, or comment. Optionally include inline review comments on specific lines. |
github.github_list_commits | Read read | 6 | List commits in a GitHub repository. Supports filtering by branch (SHA), file path, and author. |
github.github_get_commit | Read read | 3 | Get detailed information about a specific commit, including author, committer, message, and file changes. |
github.github_get_file_content | Read read | 4 | Get the content of a file or directory from a GitHub repository. Returns base64-encoded content for files, or a listing for directories. |
github.github_create_or_update_file | Write write | 7 | Create a new file or update an existing file in a GitHub repository. For updates, the SHA of the existing file is required. Content should be provided as plain text (it will be base64-encoded automatically). |
github.github_create_branch | Write write | 4 | Create a new branch in a GitHub repository. Requires a reference name (e.g. "refs/heads/my-feature") and the SHA of the commit to branch from. |
github.github_list_branches | Read read | 3 | List branches in a GitHub repository. Returns branch names and the SHA of each branch's latest commit. |
github.github_list_releases | Read read | 2 | List releases in a GitHub repository. Returns release tag, title, body, draft/prerelease status, and assets. |
github.github_create_release | Write write | 8 | Create a new release in a GitHub repository. Requires a tag name. Optionally set target commit, release name, body, draft, and prerelease flags. |
github.github_search_issues | Read read | 4 | Search for issues and pull requests across all of GitHub. Supports GitHub search syntax like "repo:owner/repo is:issue is:open label:bug". |
github.github_get_current_user | Read read | 0 | Get the authenticated GitHub user's profile information, including username, name, email, bio, public repos count, and more. |
github.github_create_gist | Write write | 3 | Create a new GitHub gist. Provide a description, a map of filenames to their content, and whether the gist should be public or secret. |
github.github_list_workflow_runs | Read read | 4 | List GitHub Actions workflow runs for a repository. Supports filtering by status (completed, in_progress, queued, etc.). |
github.github_dispatch_workflow | Write write | 5 | Trigger a GitHub Actions workflow dispatch event. The workflow must have a "workflow_dispatch" trigger in its YAML configuration. Requires the workflow ID or filename and a ref (branch or tag). |