Skip to main content
Glama

MCP GitHub Agent

Overview

A tool-using agent that exposes GitHub-shaped tools in the style of the Model Context Protocol. GET /tools lists list_issues, get_pr and summarize, and POST /call invokes one of them. Merging a pull request through an apply action is refused, so the agent can read and summarize but not change a repository. A versioned /v1 ops API adds workspaces, tenant isolation, job approval and audit records.

  • Built with: Python, pytest, GitHub Actions

  • Scope: Local laptop lab with tests; it does not call a hosted model and refuses merges and production apply.

Related MCP server: github-pr-review

Project guide

Project architecture · Interview questions and answers

Use the architecture document for the component diagram, implementation boundaries, and verification entry points. The interview guide includes source-backed answers and project walkthroughs.

Implementation map

Component

Responsibility

src/mcpgh/main.py

HTTP handlers: GET /healthz, GET /tools, POST /call

src/mcpgh/mcp.py

Functions: list_tools, call

requirements.txt

Implementation or supporting configuration

src/mcpgh/__init__.py

Implementation or supporting configuration

tests/test_mcp.py

Executable checks and regression examples

.github/workflows/ci.yml

GitHub Actions job definitions

README.md

Project explanations or operating notes

Local setup and verification

From the repository root (the commands follow the checked-in manifests):

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
python -m pytest -q

To serve the FastAPI application locally, install the server separately if it is not already available:

python -m pip install uvicorn
PYTHONPATH=src python -m uvicorn mcpgh.main:app --reload

Level: 10 — MCP & Tool-Using Agents

Skills: Python, GitHub-shaped tools

Tools: list_issues, get_pr, summarize. Merge via apply is refused.

pip install -r requirements.txt
pytest -q

This is a local laptop proof. It does not call a hosted model and it does not apply production changes.

Ops plane

Workspaces, tenant isolation, job approval, and audit live under /v1. Production apply is refused. See docs/ARCHITECTURE.md.

Documentation checks

Project architecture, interview guides, and local source links are checked automatically on pushes and pull requests. Run the same check locally:

python3 .github/scripts/validate_project_docs.py

See service improvements and local run instructions.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol server that exposes read-only GitHub tools to LLM clients, enabling browsing of open issues, pull requests, issue details, and recent repository activity via natural language.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables local models to query GitHub read-only through nine compact tools that return small, capped results, such as repositories, issues, pull requests, commits, code search, and file contents.
    2
    MIT