Skip to main content
Glama

MCP GITHUB ENTERPRISE πŸŒ‰

Python >=3.9
MCP Protocol
GitHub API

A Model Context Protocol (MCP) server that lets AI agents (Claude, ChatGPT, etc.) query your GitHub Enterprise license data. Securely fetch license summaries, per-user details, org memberships, and enterprise roles via the /consumed-licenses endpoint.


πŸ“Š Capabilities & Example Prompts

  • License Summary
    β€’ "Show me our GitHub Enterprise license summary"
    β€’ "How many licenses are we currently using?"

  • Detailed License Usage
    β€’ "List all consumed GitHub licenses"
    β€’ "Do we have any unused GitHub licenses?"

  • User Lookup
    β€’ "What GitHub orgs does johndoe belong to?"
    β€’ "What enterprise roles does johndoe have?"
    β€’ "Is johndoe an owner in our enterprise?"
    β€’ "Get detailed info about johndoe"
    β€’ "Does johndoe have 2FA enabled?"


Related MCP server: GitHub MCP Server

🌟 Features

  • License Analytics: Total vs. consumed seats

  • User Lookup: Org memberships, roles, 2FA, SAML ID

  • Pagination: Handles large enterprises automatically

  • Dual Transports: stdio for direct MCP, SSE for HTTP

  • Kubernetes-Ready: Deploy on EKS/GKE or any K8s cluster


πŸ“‹ Prerequisites

  • Python 3.9+

  • GitHub PAT with read:enterprise / license scopes

  • GitHub Enterprise Cloud tenant


πŸš€ Quick Start

1. Clone & Install

git clone https://github.com/vipink1203/mcp-github-enterprise.git cd mcp-github-enterprise python -m venv .venv source .venv/bin/activate pip install -r requirements.txt

2. Configure

cp .env.example .env # Edit .env: set GITHUB_TOKEN and GITHUB_ENTERPRISE_URL

3. Run

stdio transport

export TRANSPORT=stdio python main.py

SSE transport

export TRANSPORT=sse PORT=8050 python main.py

🐳 Docker & n8n

Add this service to your docker-compose.yml alongside n8n:

services: github-mcp: image: ghcr.io/vipink1203/mcp-github-enterprise:latest environment: - GITHUB_TOKEN=${GITHUB_TOKEN} - GITHUB_ENTERPRISE_URL=${GITHUB_ENTERPRISE_URL} - TRANSPORT=sse - PORT=8050 ports: - "8050:8050" restart: unless-stopped networks: - n8n-network

In n8n's UI, enable the MCP client:

πŸ”Œ Client Configuration

Claude Desktop / Windsurf / Cursor

Add this configuration to your Claude Desktop settings:

{ "mcpServers": { "github-ent": { "command": "/path/to/your/venv/python", "args": ["/path/to/main.py"], "env": { "GITHUB_TOKEN": "", "GITHUB_ENTERPRISE_URL": "https://api.github.com/enterprises/{enterprise_name}", "TRANSPORT": "stdio" } } }

SSE Configuration

{ "mcpServers": { "github": { "transport": "sse", "url": "http://localhost:8050/sse" } } }

πŸ“Š Example Use Cases

  • Enterprise User Management: Automate user onboarding and offboarding

  • License Monitoring: Get alerts when licenses are close to expiration

  • Organization Analysis: Analyze organization structures and relationships

  • User Access Auditing: Track user permissions and access levels

  • AI-powered GitHub Insights: Let AI analyze your enterprise GitHub data

πŸ”Œ MCP Tools & Resources

Tools

Name

Description

list_consumed_licenses

Summarize licenses, optionally include users

get_user_organizations

List a user's GitHub org memberships

get_user_enterprise_roles

List a user's enterprise roles

get_user_detail

Full license detail for a user

Resources

URI

Description

github://consumed-licenses/{dummy}

Full license usage + user details

github://user/{username}/roles

Org & enterprise roles for a user

πŸ”’ Security Considerations

  • Store your GitHub token securely

  • Use appropriate scopes for your GitHub token

  • For production, consider using AWS Secrets Manager or similar

  • Implement network policies in Kubernetes deployments

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add some amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgements


Built with ❀️ for seamless AI ↔️ GitHub Enterprise integration.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vipink1203/github-mcp-bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server