Skip to main content
Glama

DevHub MCP Gateway

Unified MCP gateway on k3s. All developer tools exposed as a single MCP endpoint.

Architecture

main.py                    — Master gateway (single MCP process)
mcp_servers/
  middleware.py            — Aggregates local sub-server tools into hub
  proxy.py                 — Proxies remote MCP servers into hub
  gerrit.py                — OpenDev/Gerrit (direct API)
  jenkins.py               — Jenkins CI (direct API)
  jira.py                  — Jira (direct API)
  confluence.py            — Confluence (direct API)

Tool Sources

Source

Tools

Method

Gerrit/Gitea

21

Direct API calls

Jenkins

17

Direct API calls

Jira

19

Direct API calls

Confluence

11

Direct API calls

Excalidraw

5

Proxied from remote MCP server

healthz

1

Built-in

Total

74

Related MCP server: Gerrit MCP Server

Secrets

Create secrets_rc (gitignored) with all tokens:

export GERRIT_USER="your-user"
export GERRIT_HTTP_PASSWORD="your-pass"
export JENKINS_URL="http://jenkins.example.com/"
export JENKINS_USER="your-user"
export JENKINS_API_TOKEN="your-token"
export JIRA_URL="https://jira.example.com"
export JIRA_TOKEN="your-pat"
export CONFLUENCE_URL="https://confluence.example.com"
export CONFLUENCE_TOKEN="your-pat"

Deployment (k3s)

Build and Deploy

# Build image
docker build -t devhub-mcp:latest .

# Import into k3s
docker save devhub-mcp:latest | sudo k3s ctr images import -

# Create namespace and apply manifests
kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/configmap.yaml
kubectl apply -f k8s/secret.yaml
kubectl apply -f k8s/deployment.yaml
kubectl apply -f k8s/service.yaml

# Wait for rollout
kubectl -n devhub rollout status deployment/devhub-gateway

Populate Secrets

After applying the template, patch with real values:

source secrets_rc
kubectl -n devhub patch secret devhub-secrets --type merge -p "{\"stringData\":{
  \"GERRIT_USER\":\"$GERRIT_USER\",
  \"GERRIT_HTTP_PASSWORD\":\"$GERRIT_HTTP_PASSWORD\",
  \"JENKINS_URL\":\"$JENKINS_URL\",
  \"JENKINS_USER\":\"$JENKINS_USER\",
  \"JENKINS_API_TOKEN\":\"$JENKINS_API_TOKEN\",
  \"JIRA_URL\":\"$JIRA_URL\",
  \"JIRA_TOKEN\":\"$JIRA_TOKEN\",
  \"CONFLUENCE_URL\":\"$CONFLUENCE_URL\",
  \"CONFLUENCE_TOKEN\":\"$CONFLUENCE_TOKEN\"
}}"

Redeploy After Code Changes

docker build -t devhub-mcp:latest .
docker save devhub-mcp:latest | sudo k3s ctr images import -
kubectl -n devhub rollout restart deployment/devhub-gateway

Service Access

NodePort exposes the gateway on port 30080:

http://yow-ajaiswal-lx2.corp.ad.wrs.com:30080/mcp

Verify

kubectl -n devhub get pods -l app=devhub-gateway
kubectl -n devhub logs deployment/devhub-gateway

MCP Client Config

Kiro (~/.kiro/settings/mcp.json)

{
  "mcpServers": {
    "gateway": {
      "url": "http://yow-ajaiswal-lx2.corp.ad.wrs.com:30080/mcp"
    }
  }
}

Adding a New Sub-Server

Local (direct API):

  1. Create mcp_servers/myservice.py with mcp = FastMCP("myservice") and @mcp.tool() functions

  2. In main.py: load_subserver(hub_mcp, myservice_mcp)

Remote (proxy from existing MCP server):

  1. In main.py, add URL+token to REMOTE_SERVERS dict

  2. Tools are discovered and proxied automatically

Standalone Mode

Each local sub-server runs independently for testing:

source secrets_rc
python mcp_servers/gerrit.py
python mcp_servers/jenkins.py
python mcp_servers/jira.py
python mcp_servers/confluence.py

Troubleshooting

  • SSL errors: Internal WRS endpoints use corporate CA. The container uses verify=False for these.

  • Stale session after redeploy: Restart Kiro session to get a fresh MCP session ID.

  • Tool timeout: Check pod logs — kubectl -n devhub logs deployment/devhub-gateway

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A MCP server built for developers enabling Git based project management with project and personal…

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • MCP server exposing the Backtest360 engine API as tools for AI agents.

View all MCP Connectors

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/jabhishek87/devhub-mcp'

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