Skip to main content
Glama
bpmiranda3099

Github CLI MCP Server

Github CLI MCP Server

PyPI License Visitors

MCP server that wraps the GitHub CLI (gh) into two generic tools — similar to how aws-api-mcp-server wraps the AWS CLI.

Why?

Most GitHub MCP servers expose 25+ individual tools — one per API operation. That's a lot of tools for something the gh CLI already handles in a single binary.

aws-api-mcp-server solved this for AWS by wrapping the entire AWS CLI into one call_aws tool. This project does the same for GitHub — two tools instead of dozens:

  • call_gh — run any gh command

  • suggest_gh_commands — get help with syntax

No need for a dedicated tool per operation. The gh CLI already covers repos, issues, PRs, workflows, releases, and more. This just gives MCP clients a way to execute those commands directly.

Related MCP server: GitHub MCP Server

Why not just use gh through a shell tool?

You can — it works. This server just cleans things up:

  • Parses gh output into structured JSON when possible, instead of raw terminal text

  • Handles timeouts so commands don't hang forever

  • Includes a suggest_gh_commands tool for when you're unsure about syntax

  • Shows up as a dedicated "github" capability instead of generic shell access

Same gh CLI underneath, just a smoother wrapper for MCP clients to work with.

Tools

  • call_gh — Execute any gh CLI command and get structured output

  • suggest_gh_commands — Get command suggestions from a natural language query

Prerequisites

  • GitHub CLI installed and authenticated (gh auth login)

  • uv (recommended, for running with uvx)

Installation

pip install gh-cli-mcp-server

Usage with MCP clients

{
  "mcpServers": {
    "github": {
      "command": "uvx",
      "args": ["gh-cli-mcp-server"]
    }
  }
}

Examples

Just ask your MCP client naturally — it'll use call_gh under the hood:

You say

What runs

"List my repos"

gh repo list --limit 30

"Show open issues on my project"

gh issue list --repo owner/repo --state open

"Create a PR from this branch to main"

gh pr create --title '...' --body '...' --base main

"What workflows does this repo have?"

gh workflow list --repo owner/repo

"Show me the last 5 CI runs"

gh run list --repo owner/repo --limit 5

"Who am I logged in as?"

gh auth status

If the client isn't sure which command to use, it can call suggest_gh_commands with your prompt to get suggestions first.

Related MCP Connectors

Related MCP Servers