{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.WYRE-AI/kpn-mcp","description":"KPN IRMA on Grexx: address checks, prequalification, customers, orders, mobile and line tools.","title":"KPN Grexx","repository":{"url":"https://github.com/WYRE-AI/kpn-mcp","source":"github"},"version":"2.2.1","websiteUrl":"https://github.com/WYRE-AI/kpn-mcp","packages":[{"registryType":"oci","identifier":"ghcr.io/wyre-ai/kpn-mcp:v2.2.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"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.","isRequired":true,"format":"string","name":"KPN_GREXX_USERNAME"},{"description":"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.","isRequired":true,"format":"string","isSecret":true,"name":"KPN_GREXX_PASSWORD"},{"description":"Grexx interface root, without /realtime. Env only — never a gateway header. No default; acceptatie and production differ.","isRequired":true,"format":"string","name":"KPN_GREXX_BASE_URL"},{"description":"OAuth token endpoint. Env only — never a gateway header. Production will differ from acceptatie.","format":"string","default":"https://service-accept.grexx.today/oauth/access_token","name":"KPN_GREXX_TOKEN_URL"},{"description":"Set to 1 to also register the developer.kpn.com tools (disturbances, availability, SIM swap, MSM). Default is Grexx only.","format":"string","name":"KPN_LEGACY_DEVELOPER_API"},{"description":"Legacy developer.kpn.com project client ID. Used only when KPN_LEGACY_DEVELOPER_API=1.","format":"string","name":"KPN_CLIENT_ID"},{"description":"Legacy developer.kpn.com project client secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_CLIENT_ID.","format":"string","isSecret":true,"name":"KPN_CLIENT_SECRET"},{"description":"Optional legacy MSM app ID. Used only when KPN_LEGACY_DEVELOPER_API=1. Must be paired with KPN_MSM_CLIENT_SECRET.","format":"string","name":"KPN_MSM_CLIENT_ID"},{"description":"Optional legacy MSM app secret. Used only when KPN_LEGACY_DEVELOPER_API=1, together with KPN_MSM_CLIENT_ID.","format":"string","isSecret":true,"name":"KPN_MSM_CLIENT_SECRET"},{"description":"Legacy developer.kpn.com base URL. Env only. Used only when KPN_LEGACY_DEVELOPER_API=1.","format":"string","default":"https://api-prd.kpn.com","name":"KPN_BASE_URL"},{"description":"Transport mode. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.","format":"string","default":"stdio","name":"MCP_TRANSPORT"},{"description":"Credential source: 'env' reads KPN_GREXX_* locally, 'gateway' expects X-KPN-Grexx-Username and X-KPN-Grexx-Password. Base URL and token URL stay env-only.","format":"string","default":"env","name":"AUTH_MODE"},{"description":"Log verbosity: debug, info, warn, error","format":"string","default":"info","name":"LOG_LEVEL"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-09T18:58:50.455716Z","publishedAt":"2026-10-09T18:58:50.455716Z","updatedAt":"2026-10-09T18:58:50.455716Z","isLatest":true}}}
