"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.
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.
- 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
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.
Build from source — clone the repository and build it, then point your client at the binary
