NestDaddy

KPN Grexx

io.github.WYRE-AI/kpn-mcp · v2.3.1

KPN IRMA on Grexx: address checks, prequalification, customers, orders, mobile and line tools.

Connect Runs on your machine

Terminal
claude mcp add kpn-mcp -e KPN_GREXX_USERNAME=<KPN_GREXX_USERNAME> -e KPN_GREXX_PASSWORD=<KPN_GREXX_PASSWORD> -e KPN_GREXX_BASE_URL=<KPN_GREXX_BASE_URL> -e KPN_GREXX_TOKEN_URL=<KPN_GREXX_TOKEN_URL> -e KPN_LEGACY_DEVELOPER_API=<KPN_LEGACY_DEVELOPER_API> -e KPN_CLIENT_ID=<KPN_CLIENT_ID> -e KPN_CLIENT_SECRET=<KPN_CLIENT_SECRET> -e KPN_MSM_CLIENT_ID=<KPN_MSM_CLIENT_ID> -e KPN_MSM_CLIENT_SECRET=<KPN_MSM_CLIENT_SECRET> -e KPN_BASE_URL=<KPN_BASE_URL> -e MCP_TRANSPORT=<MCP_TRANSPORT> -e AUTH_MODE=<AUTH_MODE> -e LOG_LEVEL=<LOG_LEVEL> -- docker run -i --rm ghcr.io/wyre-ai/kpn-mcp:v2.3.1
claude_desktop_config.json
{
  "mcpServers": {
    "kpn-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/wyre-ai/kpn-mcp:v2.3.1"
      ],
      "env": {
        "KPN_GREXX_USERNAME": "<KPN_GREXX_USERNAME>",
        "KPN_GREXX_PASSWORD": "<KPN_GREXX_PASSWORD>",
        "KPN_GREXX_BASE_URL": "<KPN_GREXX_BASE_URL>",
        "KPN_GREXX_TOKEN_URL": "<KPN_GREXX_TOKEN_URL>",
        "KPN_LEGACY_DEVELOPER_API": "<KPN_LEGACY_DEVELOPER_API>",
        "KPN_CLIENT_ID": "<KPN_CLIENT_ID>",
        "KPN_CLIENT_SECRET": "<KPN_CLIENT_SECRET>",
        "KPN_MSM_CLIENT_ID": "<KPN_MSM_CLIENT_ID>",
        "KPN_MSM_CLIENT_SECRET": "<KPN_MSM_CLIENT_SECRET>",
        "KPN_BASE_URL": "<KPN_BASE_URL>",
        "MCP_TRANSPORT": "<MCP_TRANSPORT>",
        "AUTH_MODE": "<AUTH_MODE>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "kpn-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/wyre-ai/kpn-mcp:v2.3.1"
      ],
      "env": {
        "KPN_GREXX_USERNAME": "<KPN_GREXX_USERNAME>",
        "KPN_GREXX_PASSWORD": "<KPN_GREXX_PASSWORD>",
        "KPN_GREXX_BASE_URL": "<KPN_GREXX_BASE_URL>",
        "KPN_GREXX_TOKEN_URL": "<KPN_GREXX_TOKEN_URL>",
        "KPN_LEGACY_DEVELOPER_API": "<KPN_LEGACY_DEVELOPER_API>",
        "KPN_CLIENT_ID": "<KPN_CLIENT_ID>",
        "KPN_CLIENT_SECRET": "<KPN_CLIENT_SECRET>",
        "KPN_MSM_CLIENT_ID": "<KPN_MSM_CLIENT_ID>",
        "KPN_MSM_CLIENT_SECRET": "<KPN_MSM_CLIENT_SECRET>",
        "KPN_BASE_URL": "<KPN_BASE_URL>",
        "MCP_TRANSPORT": "<MCP_TRANSPORT>",
        "AUTH_MODE": "<AUTH_MODE>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "kpn-mcp": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/wyre-ai/kpn-mcp:v2.3.1"
      ],
      "env": {
        "KPN_GREXX_USERNAME": "<KPN_GREXX_USERNAME>",
        "KPN_GREXX_PASSWORD": "<KPN_GREXX_PASSWORD>",
        "KPN_GREXX_BASE_URL": "<KPN_GREXX_BASE_URL>",
        "KPN_GREXX_TOKEN_URL": "<KPN_GREXX_TOKEN_URL>",
        "KPN_LEGACY_DEVELOPER_API": "<KPN_LEGACY_DEVELOPER_API>",
        "KPN_CLIENT_ID": "<KPN_CLIENT_ID>",
        "KPN_CLIENT_SECRET": "<KPN_CLIENT_SECRET>",
        "KPN_MSM_CLIENT_ID": "<KPN_MSM_CLIENT_ID>",
        "KPN_MSM_CLIENT_SECRET": "<KPN_MSM_CLIENT_SECRET>",
        "KPN_BASE_URL": "<KPN_BASE_URL>",
        "MCP_TRANSPORT": "<MCP_TRANSPORT>",
        "AUTH_MODE": "<AUTH_MODE>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
KPN_GREXX_USERNAME
Required
Grexx API username. Passed to the SDK as the OAuth client_id (portal: API Gegevens). The SDK sends it with HTTP Basic on the token endpoint. This server does not mint the token.
KPN_GREXX_PASSWORD
Required, secret
Grexx API password. Passed to the SDK as the OAuth client_secret (scope=all). The SDK sends it with HTTP Basic on the token endpoint.
KPN_GREXX_BASE_URL
Required
Grexx interface root, without /realtime. No default; acceptatie and production differ. In gateway mode a connection may override it with X-Grexx-Api-Url (together with X-Grexx-Token-Url, allowlisted Grexx hosts only).
KPN_GREXX_TOKEN_URL
Optional
OAuth token endpoint. Production differs from acceptatie. In gateway mode a connection may override it with X-Grexx-Token-Url (together with X-Grexx-Api-Url).
KPN_LEGACY_DEVELOPER_API
Optional
Set to 1 to also register the developer.kpn.com tools (disturbances, availability, SIM swap, MSM). Default is Grexx only.
KPN_CLIENT_ID
Optional
Legacy developer.kpn.com project client ID. Used only when KPN_LEGACY_DEVELOPER_API=1.
KPN_CLIENT_SECRET
Optional, secret
Legacy developer.kpn.com project client secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_CLIENT_ID.
KPN_MSM_CLIENT_ID
Optional
Optional legacy MSM app ID. Used only when KPN_LEGACY_DEVELOPER_API=1. Must be paired with KPN_MSM_CLIENT_SECRET.
KPN_MSM_CLIENT_SECRET
Optional, secret
Optional legacy MSM app secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_MSM_CLIENT_ID.
KPN_BASE_URL
Optional
Legacy developer.kpn.com base URL. Env only. Used only when KPN_LEGACY_DEVELOPER_API=1.
MCP_TRANSPORT
Optional
Transport mode. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODE
Optional
Credential source: 'env' reads KPN_GREXX_* locally, 'gateway' expects X-KPN-Grexx-Username and X-KPN-Grexx-Password, plus optional X-Grexx-Api-Url and X-Grexx-Token-Url per connection.
LOG_LEVEL
Optional
Log verbosity: debug, info, warn, error

Details

Packageghcr.io/wyre-ai/kpn-mcp:v2.3.1 (OCI, stdio)
First published22 Oct 2026
Last updated22 Oct 2026
Registry nameio.github.WYRE-AI/kpn-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.