@cyanheads/noaa-marine-mcp-server 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/AGENTS.md +387 -0
  2. package/CLAUDE.md +387 -0
  3. package/Dockerfile +99 -0
  4. package/LICENSE +201 -0
  5. package/README.md +300 -0
  6. package/changelog/0.1.x/0.1.1.md +28 -0
  7. package/changelog/template.md +127 -0
  8. package/dist/config/server-config.d.ts +12 -0
  9. package/dist/config/server-config.d.ts.map +1 -0
  10. package/dist/config/server-config.js +20 -0
  11. package/dist/config/server-config.js.map +1 -0
  12. package/dist/index.d.ts +7 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +40 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/mcp-server/resources/definitions/noaa-marine-station.resource.d.ts +9 -0
  17. package/dist/mcp-server/resources/definitions/noaa-marine-station.resource.d.ts.map +1 -0
  18. package/dist/mcp-server/resources/definitions/noaa-marine-station.resource.js +96 -0
  19. package/dist/mcp-server/resources/definitions/noaa-marine-station.resource.js.map +1 -0
  20. package/dist/mcp-server/tools/definitions/noaa-marine-find-stations.tool.d.ts +105 -0
  21. package/dist/mcp-server/tools/definitions/noaa-marine-find-stations.tool.d.ts.map +1 -0
  22. package/dist/mcp-server/tools/definitions/noaa-marine-find-stations.tool.js +338 -0
  23. package/dist/mcp-server/tools/definitions/noaa-marine-find-stations.tool.js.map +1 -0
  24. package/dist/mcp-server/tools/definitions/noaa-marine-get-conditions.tool.d.ts +40 -0
  25. package/dist/mcp-server/tools/definitions/noaa-marine-get-conditions.tool.d.ts.map +1 -0
  26. package/dist/mcp-server/tools/definitions/noaa-marine-get-conditions.tool.js +164 -0
  27. package/dist/mcp-server/tools/definitions/noaa-marine-get-conditions.tool.js.map +1 -0
  28. package/dist/mcp-server/tools/definitions/noaa-marine-get-currents.tool.d.ts +59 -0
  29. package/dist/mcp-server/tools/definitions/noaa-marine-get-currents.tool.d.ts.map +1 -0
  30. package/dist/mcp-server/tools/definitions/noaa-marine-get-currents.tool.js +227 -0
  31. package/dist/mcp-server/tools/definitions/noaa-marine-get-currents.tool.js.map +1 -0
  32. package/dist/mcp-server/tools/definitions/noaa-marine-get-tide-predictions.tool.d.ts +60 -0
  33. package/dist/mcp-server/tools/definitions/noaa-marine-get-tide-predictions.tool.d.ts.map +1 -0
  34. package/dist/mcp-server/tools/definitions/noaa-marine-get-tide-predictions.tool.js +180 -0
  35. package/dist/mcp-server/tools/definitions/noaa-marine-get-tide-predictions.tool.js.map +1 -0
  36. package/dist/mcp-server/tools/definitions/noaa-marine-get-water-level.tool.d.ts +65 -0
  37. package/dist/mcp-server/tools/definitions/noaa-marine-get-water-level.tool.d.ts.map +1 -0
  38. package/dist/mcp-server/tools/definitions/noaa-marine-get-water-level.tool.js +232 -0
  39. package/dist/mcp-server/tools/definitions/noaa-marine-get-water-level.tool.js.map +1 -0
  40. package/dist/services/coops/coops-service.d.ts +74 -0
  41. package/dist/services/coops/coops-service.d.ts.map +1 -0
  42. package/dist/services/coops/coops-service.js +217 -0
  43. package/dist/services/coops/coops-service.js.map +1 -0
  44. package/dist/services/coops/types.d.ts +66 -0
  45. package/dist/services/coops/types.d.ts.map +1 -0
  46. package/dist/services/coops/types.js +6 -0
  47. package/dist/services/coops/types.js.map +1 -0
  48. package/dist/services/ndbc/ndbc-service.d.ts +28 -0
  49. package/dist/services/ndbc/ndbc-service.d.ts.map +1 -0
  50. package/dist/services/ndbc/ndbc-service.js +213 -0
  51. package/dist/services/ndbc/ndbc-service.js.map +1 -0
  52. package/dist/services/ndbc/types.d.ts +60 -0
  53. package/dist/services/ndbc/types.d.ts.map +1 -0
  54. package/dist/services/ndbc/types.js +6 -0
  55. package/dist/services/ndbc/types.js.map +1 -0
  56. package/package.json +105 -0
  57. package/server.json +113 -0
package/package.json ADDED
@@ -0,0 +1,105 @@
1
+ {
2
+ "name": "@cyanheads/noaa-marine-mcp-server",
3
+ "version": "0.1.1",
4
+ "mcpName": "io.github.cyanheads/noaa-marine-mcp-server",
5
+ "description": "Find NOAA tide stations and NDBC buoys, fetch tide predictions, water levels, tidal currents, and live buoy conditions via MCP. STDIO or Streamable HTTP.",
6
+ "type": "module",
7
+ "main": "dist/index.js",
8
+ "types": "dist/index.d.ts",
9
+ "bin": {
10
+ "noaa-marine-mcp-server": "dist/index.js"
11
+ },
12
+ "files": [
13
+ "changelog/",
14
+ "dist/",
15
+ "README.md",
16
+ "LICENSE",
17
+ "CLAUDE.md",
18
+ "AGENTS.md",
19
+ "Dockerfile",
20
+ "server.json"
21
+ ],
22
+ "scripts": {
23
+ "build": "bun run scripts/build.ts",
24
+ "rebuild": "bun run scripts/clean.ts && bun run scripts/build.ts",
25
+ "clean": "bun run scripts/clean.ts",
26
+ "devcheck": "bun run scripts/devcheck.ts",
27
+ "audit:refresh": "rm -f bun.lock && bun install && bun audit",
28
+ "tree": "bun run scripts/tree.ts",
29
+ "list-skills": "bun run scripts/list-skills.ts",
30
+ "format": "biome check --write .",
31
+ "format:unsafe": "biome check --write --unsafe .",
32
+ "lint:mcp": "bun run scripts/lint-mcp.ts",
33
+ "lint:packaging": "bun run scripts/lint-packaging.ts",
34
+ "bundle": "npm run build && npx -y @anthropic-ai/mcpb pack . dist/noaa-marine-mcp-server.mcpb",
35
+ "changelog:build": "bun run scripts/build-changelog.ts",
36
+ "changelog:check": "bun run scripts/build-changelog.ts --check",
37
+ "release:github": "bun run scripts/release-github.ts",
38
+ "publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish",
39
+ "test": "vitest run",
40
+ "start": "node dist/index.js",
41
+ "start:stdio": "MCP_TRANSPORT_TYPE=stdio node dist/index.js",
42
+ "start:http": "MCP_TRANSPORT_TYPE=http node dist/index.js"
43
+ },
44
+ "keywords": [
45
+ "noaa",
46
+ "marine",
47
+ "tides",
48
+ "ndbc",
49
+ "buoy",
50
+ "co-ops",
51
+ "water-level",
52
+ "currents",
53
+ "coastal",
54
+ "mcp",
55
+ "mcp-server",
56
+ "model-context-protocol",
57
+ "typescript",
58
+ "bun",
59
+ "stdio",
60
+ "streamable-http",
61
+ "ai-agent"
62
+ ],
63
+ "repository": {
64
+ "type": "git",
65
+ "url": "git+https://github.com/cyanheads/noaa-marine-mcp-server.git"
66
+ },
67
+ "bugs": {
68
+ "url": "https://github.com/cyanheads/noaa-marine-mcp-server/issues"
69
+ },
70
+ "homepage": "https://github.com/cyanheads/noaa-marine-mcp-server#readme",
71
+ "author": "cyanheads <casey@caseyjhand.com> (https://github.com/cyanheads/noaa-marine-mcp-server#readme)",
72
+ "funding": [
73
+ {
74
+ "type": "github",
75
+ "url": "https://github.com/sponsors/cyanheads"
76
+ },
77
+ {
78
+ "type": "buy_me_a_coffee",
79
+ "url": "https://www.buymeacoffee.com/cyanheads"
80
+ }
81
+ ],
82
+ "license": "Apache-2.0",
83
+ "packageManager": "bun@1.3.11",
84
+ "engines": {
85
+ "bun": ">=1.3.0",
86
+ "node": ">=24.0.0"
87
+ },
88
+ "publishConfig": {
89
+ "access": "public"
90
+ },
91
+ "dependencies": {
92
+ "@cyanheads/mcp-ts-core": "^0.9.21",
93
+ "pino-pretty": "^13.1.3",
94
+ "zod": "^4.4.3"
95
+ },
96
+ "devDependencies": {
97
+ "@biomejs/biome": "^2.4.16",
98
+ "@types/node": "^25.9.1",
99
+ "depcheck": "^1.4.7",
100
+ "ignore": "^7.0.5",
101
+ "tsc-alias": "^1.8.17",
102
+ "typescript": "^6.0.3",
103
+ "vitest": "^4.1.8"
104
+ }
105
+ }
package/server.json ADDED
@@ -0,0 +1,113 @@
1
+ {
2
+ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
+ "name": "io.github.cyanheads/noaa-marine-mcp-server",
4
+ "description": "Find NOAA tide stations and NDBC buoys, fetch tide predictions, currents, and live conditions.",
5
+ "repository": {
6
+ "url": "https://github.com/cyanheads/noaa-marine-mcp-server",
7
+ "source": "github"
8
+ },
9
+ "version": "0.1.1",
10
+ "packages": [
11
+ {
12
+ "registryType": "npm",
13
+ "registryBaseUrl": "https://registry.npmjs.org",
14
+ "identifier": "@cyanheads/noaa-marine-mcp-server",
15
+ "runtimeHint": "bun",
16
+ "version": "0.1.1",
17
+ "packageArguments": [
18
+ {
19
+ "type": "positional",
20
+ "value": "run"
21
+ },
22
+ {
23
+ "type": "positional",
24
+ "value": "start:stdio"
25
+ }
26
+ ],
27
+ "environmentVariables": [
28
+ {
29
+ "name": "NOAA_APPLICATION_ID",
30
+ "description": "Courtesy identifier sent as application= on CO-OPS requests. Defaults to noaa-marine-mcp-server.",
31
+ "format": "string",
32
+ "isRequired": false,
33
+ "default": "noaa-marine-mcp-server"
34
+ },
35
+ {
36
+ "name": "MCP_LOG_LEVEL",
37
+ "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
38
+ "format": "string",
39
+ "isRequired": false,
40
+ "default": "info"
41
+ }
42
+ ],
43
+ "transport": {
44
+ "type": "stdio"
45
+ }
46
+ },
47
+ {
48
+ "registryType": "npm",
49
+ "registryBaseUrl": "https://registry.npmjs.org",
50
+ "identifier": "@cyanheads/noaa-marine-mcp-server",
51
+ "runtimeHint": "bun",
52
+ "version": "0.1.1",
53
+ "packageArguments": [
54
+ {
55
+ "type": "positional",
56
+ "value": "run"
57
+ },
58
+ {
59
+ "type": "positional",
60
+ "value": "start:http"
61
+ }
62
+ ],
63
+ "environmentVariables": [
64
+ {
65
+ "name": "NOAA_APPLICATION_ID",
66
+ "description": "Courtesy identifier sent as application= on CO-OPS requests. Defaults to noaa-marine-mcp-server.",
67
+ "format": "string",
68
+ "isRequired": false,
69
+ "default": "noaa-marine-mcp-server"
70
+ },
71
+ {
72
+ "name": "MCP_HTTP_HOST",
73
+ "description": "The hostname for the HTTP server.",
74
+ "format": "string",
75
+ "isRequired": false,
76
+ "default": "127.0.0.1"
77
+ },
78
+ {
79
+ "name": "MCP_HTTP_PORT",
80
+ "description": "The port to run the HTTP server on.",
81
+ "format": "string",
82
+ "isRequired": false,
83
+ "default": "3010"
84
+ },
85
+ {
86
+ "name": "MCP_HTTP_ENDPOINT_PATH",
87
+ "description": "The endpoint path for the MCP server.",
88
+ "format": "string",
89
+ "isRequired": false,
90
+ "default": "/mcp"
91
+ },
92
+ {
93
+ "name": "MCP_AUTH_MODE",
94
+ "description": "Authentication mode to use: 'none', 'jwt', or 'oauth'.",
95
+ "format": "string",
96
+ "isRequired": false,
97
+ "default": "none"
98
+ },
99
+ {
100
+ "name": "MCP_LOG_LEVEL",
101
+ "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
102
+ "format": "string",
103
+ "isRequired": false,
104
+ "default": "info"
105
+ }
106
+ ],
107
+ "transport": {
108
+ "type": "streamable-http",
109
+ "url": "http://localhost:3010/mcp"
110
+ }
111
+ }
112
+ ]
113
+ }