One Python file, server.py, built on the official MCP Python SDK. It implements the Model Context Protocol spec 2025-11-25 over Streamable HTTP, serving on a /mcp endpoint. It exposes four tools: repo_readme_summary(owner, repo) fetches the repo README through the public GitHub API and returns an extractive summary. repo_open_issues(owner, repo, limit) counts open issues (pull requests excluded) and lists the most recent ones with titles. repo_info(owner, repo) returns description, stars, forks, main language, license. summarize_text(text, max_sentences) is an extractive summary of any text, no network needed. The summarizer is a small frequency-based extractive summarizer written for this project, shared by the README tool and the text tool. An MCP client connects to the server, runs the standard initialize handshake, lists the tools, and calls them with JSON arguments. The GitHub tools call the public GitHub API at runtime (httpx, async), so results are live. The server runs stateless over Streamable HTTP, binds localhost by default, and can be put on any host with the HOST and PORT env vars. It runs with two commands: pip install from requirements.txt, then python server.py. Local verification (initialize, tools/list, tools/call with real output) is recorded in VERIFY.md in the repo. Developers constantly context-switch to GitHub to answer simple questions: what is this repo, is it active, what is broken right now. Putting those answers behind MCP tools means a voice or chat assistant can answer them in one step, with live data, from any repo. The server is tiny and generic, so adding a new research tool is a few lines of Python.

Built With

Share this project:

Updates

Submission history