Labsco
MCP SERVER

MCP GitHub Enterprise

by vipink1203

Ask about GitHub Enterprise license usage — consumed seats, per-user org memberships, enterprise roles and 2FA status.

Git Hosting & Code Review
Summary
Seat questions answered by name, not by spreadsheet export.

"How many licenses are we using" and "is this person an owner" are the two questions that drive most enterprise admin work, and both are one call here. The SSE transport is what lets the same server sit behind an n8n workflow rather than only a desktop client.

What it is

A Python MCP server that queries GitHub Enterprise license data through the `/consumed-licenses` endpoint. It answers seat questions and per-user questions, handles pagination across large enterprises automatically, and runs over stdio or SSE.

What you get
  • list_consumed_licenses — summarise licenses, optionally including the users behind them
  • get_user_organizations — a user's org memberships
  • get_user_enterprise_roles — a user's enterprise roles
  • get_user_detail — full license detail for one user, including 2FA and SAML identity
  • Resources addressable by URI: `github://consumed-licenses/{dummy}` for full usage plus user details, and `github://user/{username}/roles`
  • Two transports: stdio for direct MCP, SSE for HTTP — which is what makes it usable from n8n or a Kubernetes deployment
Requirements

Python 3.9+, a GitHub Enterprise Cloud tenant, and a personal access token with `read:enterprise` and license scopes. Set `GITHUB_TOKEN` and `GITHUB_ENTERPRISE_URL` — the latter is the enterprise API path, `https://api.github.com/enterprises/{enterprise_name}`. `TRANSPORT` selects `stdio` or `sse`; SSE listens on `PORT`, with 8050 used in the published Docker and n8n examples.

Setup effort

Build from source — clone the repository and build it, then point your client at the binary