KPN IRMA on Grexx: address checks, prequalification, customers, orders, mobile and line tools.
Connect Runs on your machine
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
{
"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>"
}
}
}
}
{
"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>"
}
}
}
}
{
"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
| Name | Description |
|---|---|
KPN_GREXX_USERNAMERequired | 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_PASSWORDRequired, 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_URLRequired | 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_URLOptional | 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_APIOptional | Set to 1 to also register the developer.kpn.com tools (disturbances, availability, SIM swap, MSM). Default is Grexx only. |
KPN_CLIENT_IDOptional | Legacy developer.kpn.com project client ID. Used only when KPN_LEGACY_DEVELOPER_API=1. |
KPN_CLIENT_SECRETOptional, secret | Legacy developer.kpn.com project client secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_CLIENT_ID. |
KPN_MSM_CLIENT_IDOptional | Optional legacy MSM app ID. Used only when KPN_LEGACY_DEVELOPER_API=1. Must be paired with KPN_MSM_CLIENT_SECRET. |
KPN_MSM_CLIENT_SECRETOptional, secret | Optional legacy MSM app secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_MSM_CLIENT_ID. |
KPN_BASE_URLOptional | Legacy developer.kpn.com base URL. Env only. Used only when KPN_LEGACY_DEVELOPER_API=1. |
MCP_TRANSPORTOptional | Transport mode. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting. |
AUTH_MODEOptional | 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_LEVELOptional | Log verbosity: debug, info, warn, error |
Details
| Package | ghcr.io/wyre-ai/kpn-mcp:v2.3.1 (OCI, stdio) |
| First published | 22 Oct 2026 |
| Last updated | 22 Oct 2026 |
| Registry name | io.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.
