{"_id":"@dstotijn/knmi-mcp","_rev":"4-3936da126305151fb26fc080ff0cf2a2","name":"@dstotijn/knmi-mcp","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@dstotijn/knmi-mcp","version":"0.1.0","keywords":["mcp","model-context-protocol","knmi","weather","climate"],"author":{"name":"David Stotijn","email":"dstotijn@gmail.com"},"license":"Apache-2.0","_id":"@dstotijn/knmi-mcp@0.1.0","maintainers":[{"name":"dstotijn","email":"dstotijn@gmail.com"}],"homepage":"https://github.com/dstotijn/knmi-mcp#readme","bugs":{"url":"https://github.com/dstotijn/knmi-mcp/issues"},"dist":{"shasum":"9ec640b13286d07e01586216ed9bfd7e226c77d9","tarball":"https://registry.npmjs.org/@dstotijn/knmi-mcp/-/knmi-mcp-0.1.0.tgz","fileCount":30,"integrity":"sha512-cuKMSk3OKmCZYS3vhnRnhLdEjffbzKBnTbskV4+j2ZS72Rbyc6s3iGgL/IKNs+bYBdYNvZuHmOgL1o0R33AldA==","signatures":[{"sig":"MEUCIHto7nb7mJwkJUgcXJu5+F3P25trzwgRXn1PTq+3GoV6AiEAgMUkcxhQeB5AVcchRWMOZMtFMVj5GupWzf1s/M6jml8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1036773},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"bbcf245cfe2b865fe6571aba889eb78a4d416a38","scripts":{"dev":"tsx src/index.ts","build":"tsc","clean":"rimraf dist","start":"node dist/index.js","prebuild":"npm run clean","biome:fix":"biome check --write","dev:watch":"tsx watch src/index.ts","typecheck":"tsc --noEmit","generate:types":"openapi-typescript https://gitlab.com/KNMI-OSS/KNMI-App/knmi-app-openapi-spec/-/raw/main/openapi.yml --output src/types/knmi-api.ts"},"_npmUser":{"name":"dstotijn","email":"dstotijn@gmail.com"},"repository":{"url":"git+https://github.com/dstotijn/knmi-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"KNMI Model Context Protocol (MCP) server","directories":{},"_nodeVersion":"22.17.0","dependencies":{"openapi-fetch":"^0.14.0","@modelcontextprotocol/sdk":"^1.15.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","rimraf":"^6.0.1","typescript":"^5.8.3","@types/node":"^24.0.14","@biomejs/biome":"^2.1.1","openapi-typescript":"^7.8.0"},"_npmOperationalInternal":{"tmp":"tmp/knmi-mcp_0.1.0_1752765094457_0.1216200494185744","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@dstotijn/knmi-mcp","version":"0.1.1","keywords":["mcp","model-context-protocol","knmi","weather","climate"],"author":{"name":"David Stotijn","email":"dstotijn@gmail.com"},"license":"Apache-2.0","_id":"@dstotijn/knmi-mcp@0.1.1","maintainers":[{"name":"dstotijn","email":"dstotijn@gmail.com"}],"homepage":"https://github.com/dstotijn/knmi-mcp#readme","bugs":{"url":"https://github.com/dstotijn/knmi-mcp/issues"},"bin":{"knmi-mcp":"dist/index.js"},"dist":{"shasum":"c1d9fe155a7b448fbef7d7069e6ba01bd0127663","tarball":"https://registry.npmjs.org/@dstotijn/knmi-mcp/-/knmi-mcp-0.1.1.tgz","fileCount":30,"integrity":"sha512-MzaprUC1FCWk4jCunSW4eb8sLkextApP5Q6BlctqTObCLApk6s3hGSzVlkNIOMS51DlWy20pB3f6XpvwgCrFlw==","signatures":[{"sig":"MEYCIQDOPbhAieURPXrTFSHzdvsFW2pN96VUQjgOlWv//2P2XAIhAMOK3Tc6OHopsYo7UkeqHRhwjcX2VGFjzWSE4HtkctL1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1036819},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"bbabfc3546a60997ef9b63df05c935c07c9dd59f","scripts":{"dev":"tsx src/index.ts","build":"tsc","clean":"rimraf dist","start":"node dist/index.js","prebuild":"npm run clean","biome:fix":"biome check --write","dev:watch":"tsx watch src/index.ts","typecheck":"tsc --noEmit","generate:types":"openapi-typescript https://gitlab.com/KNMI-OSS/KNMI-App/knmi-app-openapi-spec/-/raw/main/openapi.yml --output src/types/knmi-api.ts"},"_npmUser":{"name":"dstotijn","email":"dstotijn@gmail.com"},"repository":{"url":"git+https://github.com/dstotijn/knmi-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"KNMI Model Context Protocol (MCP) server","directories":{},"_nodeVersion":"22.17.0","dependencies":{"openapi-fetch":"^0.14.0","@modelcontextprotocol/sdk":"^1.15.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","rimraf":"^6.0.1","typescript":"^5.8.3","@types/node":"^24.0.14","@biomejs/biome":"^2.1.1","openapi-typescript":"^7.8.0"},"_npmOperationalInternal":{"tmp":"tmp/knmi-mcp_0.1.1_1752765290255_0.9693132353652587","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@dstotijn/knmi-mcp","version":"0.1.2","keywords":["mcp","model-context-protocol","knmi","weather","climate"],"author":{"name":"David Stotijn","email":"dstotijn@gmail.com"},"license":"Apache-2.0","_id":"@dstotijn/knmi-mcp@0.1.2","maintainers":[{"name":"dstotijn","email":"dstotijn@gmail.com"}],"homepage":"https://github.com/dstotijn/knmi-mcp#readme","bugs":{"url":"https://github.com/dstotijn/knmi-mcp/issues"},"bin":{"knmi-mcp":"dist/index.js"},"dist":{"shasum":"8645bf8b97ef6225da96d466ce46b93617c1d5d5","tarball":"https://registry.npmjs.org/@dstotijn/knmi-mcp/-/knmi-mcp-0.1.2.tgz","fileCount":30,"integrity":"sha512-7KZFCngiV2uGoHRVsdAnOmMhzBPi/TkDnY4b0I2flic2+4NRhO/HVy6rFqGqiLjRDZSDnxi71mWqvPGe6r9Xnw==","signatures":[{"sig":"MEYCIQC2cKlBm8c5ap23yPCOK+8Fpj7sk0Iuy6Cg7dw6z3jBHwIhAO5qe2xWRdN61MXzcB5IzOtuEOaqfm1Fpwed7PfCR1kq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1143347},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"6af24e72ba92e43a23250a79bafe8f55ef4550c0","scripts":{"dev":"tsx src/index.ts","build":"tsc","clean":"rimraf dist","start":"node dist/index.js","prebuild":"npm run clean","biome:fix":"biome check --write","dev:watch":"tsx watch src/index.ts","typecheck":"tsc --noEmit","generate:types":"openapi-typescript https://gitlab.com/KNMI-OSS/KNMI-App/knmi-app-openapi-spec/-/raw/main/openapi.yml --output src/types/knmi-api.ts"},"_npmUser":{"name":"dstotijn","email":"dstotijn@gmail.com"},"repository":{"url":"git+https://github.com/dstotijn/knmi-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"KNMI Model Context Protocol (MCP) server","directories":{},"_nodeVersion":"22.17.0","dependencies":{"openapi-fetch":"^0.14.0","@modelcontextprotocol/sdk":"^1.15.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","rimraf":"^6.0.1","typescript":"^5.8.3","@types/node":"^24.0.14","@biomejs/biome":"^2.1.1","openapi-typescript":"^7.8.0"},"_npmOperationalInternal":{"tmp":"tmp/knmi-mcp_0.1.2_1752765689248_0.6645530155630399","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@dstotijn/knmi-mcp","version":"0.1.3","type":"module","description":"KNMI Model Context Protocol (MCP) server","author":{"name":"David Stotijn","email":"dstotijn@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/dstotijn/knmi-mcp.git"},"license":"Apache-2.0","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"bin":{"knmi-mcp":"dist/index.js"},"engines":{"node":">=22.0.0"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsx src/index.ts","dev:watch":"tsx watch src/index.ts","clean":"rimraf dist","prebuild":"npm run clean","typecheck":"tsc --noEmit","biome:fix":"biome check --write","generate:types":"openapi-typescript https://gitlab.com/KNMI-OSS/KNMI-App/knmi-app-openapi-spec/-/raw/main/openapi.yml --output src/types/knmi-api.ts"},"keywords":["mcp","model-context-protocol","knmi","weather","climate"],"devDependencies":{"@biomejs/biome":"^2.1.1","@types/node":"^24.0.14","openapi-typescript":"^7.8.0","rimraf":"^6.0.1","tsx":"^4.20.3","typescript":"^5.8.3"},"dependencies":{"@modelcontextprotocol/sdk":"^1.15.1","openapi-fetch":"^0.14.0"},"_id":"@dstotijn/knmi-mcp@0.1.3","gitHead":"03104ffa69cf53b272491cd6e2e358c3b1f30ced","bugs":{"url":"https://github.com/dstotijn/knmi-mcp/issues"},"homepage":"https://github.com/dstotijn/knmi-mcp#readme","_nodeVersion":"22.17.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-AMZa5pmlha23Dk5d34MDlQ5nWB4EdmtIZnnsesc1uzLavtMzFwaiwOj5lli+XCIr9x8JfXmArU+lo+bIKLI0Gg==","shasum":"2528615c805e07dc50c8c9cf176d15f49c487271","tarball":"https://registry.npmjs.org/@dstotijn/knmi-mcp/-/knmi-mcp-0.1.3.tgz","fileCount":30,"unpackedSize":1143345,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHebSJ8WUa0yoFEsbEioj/waOyVViPgBfAeaxj9A/nRTAiEAqnJsZVDHYSKOBF65P6rNMX+AgeaSo6q8CbVJvyszANY="}]},"_npmUser":{"name":"dstotijn","email":"dstotijn@gmail.com"},"directories":{},"maintainers":[{"name":"dstotijn","email":"dstotijn@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/knmi-mcp_0.1.3_1752766462743_0.3549875138572032"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-17T15:11:34.320Z","modified":"2025-07-17T15:34:23.102Z","0.1.0":"2025-07-17T15:11:34.700Z","0.1.1":"2025-07-17T15:14:51.293Z","0.1.2":"2025-07-17T15:21:29.471Z","0.1.3":"2025-07-17T15:34:22.927Z"},"bugs":{"url":"https://github.com/dstotijn/knmi-mcp/issues"},"author":{"name":"David Stotijn","email":"dstotijn@gmail.com"},"license":"Apache-2.0","homepage":"https://github.com/dstotijn/knmi-mcp#readme","keywords":["mcp","model-context-protocol","knmi","weather","climate"],"repository":{"type":"git","url":"git+https://github.com/dstotijn/knmi-mcp.git"},"description":"KNMI Model Context Protocol (MCP) server","maintainers":[{"name":"dstotijn","email":"dstotijn@gmail.com"}],"readme":"# KNMI MCP Server\n\nA [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server that\nprovides access to Dutch weather data via the KNMI (Royal Netherlands\nMeteorological Institute) API.\n\n## Overview\n\nThis MCP server enables AI assistants and applications to access comprehensive\nDutch weather information, including current conditions, forecasts, alerts, and\nhistorical data. It automatically handles location name resolution, converting\nhuman-readable Dutch city names into KNMI grid identifiers.\n\n## MCP Tools\n\n### `get_weather`\n\nGet comprehensive weather information for any Dutch location.\n\n**Parameters:**\n\n-   `location` (string, required): Dutch location name (e.g., \"Amsterdam\", \"De\n    Bilt\"). Will (fuzzy) matched to a well-known/mapped locality.\n-   `region` (number, optional): Region number (0-15) for additional regional\n    context\n\n**Returns:**\n\n-   Current weather conditions and temperature\n-   Hourly forecast (next 48 hours)\n-   Daily forecast (next 7 days)\n-   Weather alerts and warnings\n-   Wind conditions (speed, direction, gusts)\n-   Precipitation data (amount, chance)\n-   UV index information\n-   Sunrise and sunset times\n-   Weather backgrounds for visual representation\n\n## MCP Client Configuration\n\nAdd to your MCP host configuration (e.g. Claude Desktop, VS Code, etcetera):\n\n```json\n{\n\t\"knmi-weather\": {\n\t\t\"command\": \"npx\",\n\t\t\"args\": [\"-y\", \"@dstotijn/knmi-mcp\"]\n\t}\n}\n```\n\n## Weather Data Structure\n\n### Current Conditions\n\n-   Temperature (°C)\n-   Weather type code\n-   Wind speed, direction, and gusts\n-   Precipitation amount and probability\n-   UV index with safety recommendations\n\n### Forecasts\n\n-   **Hourly**: Next 48 hours with detailed conditions\n-   **Daily**: Next 7 days with min/max temperatures and precipitation\n\n### Alerts\n\n-   Alert levels: none, potential, yellow, orange, red\n-   Detailed descriptions and safety advice\n-   Affected regions and time periods\n\n### Additional Data\n\n-   Sunrise and sunset times\n-   Weather backgrounds for UI visualization\n-   Regional weather information\n-   Historical climate data context\n\n## License\n\n[Apache License, Version 2.0](LICENSE)\n\n---\n\n©️ 2025 David Stotijn\n","readmeFilename":"README.md"}