Cosmic's Coast Map
by brendoncampbell · remote · no sign-in to list tools · v1.0.0 · published by GitHub user brendoncampbell
Tides, currents, marine forecasts and warnings for paddlers, anglers and small boats, 26 countries.
11 tools: 10 change things and 1 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things10Claude Code: ask: see these tools
- Only reads1Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http coast-map https://coast.cosmicotter.ca/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "start_pass_purchase" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "start_pass_purchase" says "start": a word for a change.
- Warnpass_status
The server marks "pass_status" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "pass_status" says "status": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
11 tools
Changes things 10Claude Code: ask
best_low_tidesThe lowest daylight low tides over the next days (default 30, up to 90 with a pass key), marking the good ones for clamming, foraging and tide pools.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it The lowest daylight low tides over the next days (default 30, up to 90 with a pass key), marking the good ones for clamming, foraging and tide pools.
Annotations the server declares
- title: Best daylight low tides for foraging and tide pools
- readOnlyHint: true
- openWorldHint: true
coast_map_passWhat the Coast Map Pass adds over the free map (offline regions for trips with no signal; longer tide and current ranges for assistants), its prices (CA$5 a month or CA$55 a year),…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it What the Coast Map Pass adds over the free map (offline regions for trips with no signal; longer tide and current ranges for assistants), its prices (CA$5 a month or CA$55 a year), whether it is on sale yet, and the purchase or support links. Covers offline use, longer tide ranges and upgrading.
Annotations the server declares
- title: Coast Map Pass: what it adds and how to get it
- readOnlyHint: true
- openWorldHint: true
currentsSlack water and maximum flood/ebb times and speeds at a current station, in local time.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Slack water and maximum flood/ebb times and speeds at a current station, in local time. Up to 7 days free; longer with a Coast Map Pass key.
Annotations the server declares
- title: Tidal current times (slack water, max flood and ebb)
- readOnlyHint: true
- openWorldHint: true
marine_forecastHourly wind and gusts (knots), direction, temperature, rain, fog and thunder risk for the next 48 hours, plus wave height and period, from Environment Canada (HRDPS/GDWPS), the US …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Hourly wind and gusts (knots), direction, temperature, rain, fog and thunder risk for the next 48 hours, plus wave height and period, from Environment Canada (HRDPS/GDWPS), the US National Weather Service or MET Norway.
Annotations the server declares
- title: Wind, waves and weather on the water (48 h)
- readOnlyHint: true
- openWorldHint: true
marine_warningsMarine warnings (gale, storm, small craft…) in effect for the marine forecast area at a point.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Marine warnings (gale, storm, small craft…) in effect for the marine forecast area at a point.
Annotations the server declares
- title: Marine warnings in effect
- readOnlyHint: true
- openWorldHint: true
pass_statusChecks whether the payment for a purchase reference has completed.1 finding
Why it is in this group
- The name "pass_status" says "status": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
Findings
- Warn
The server marks "pass_status" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "pass_status" says "status": a word for reading.
Description, as the server wrote it Checks whether the payment for a purchase reference has completed. Returns pending (with a retry interval) or paid with the pass key, which is sent as "Authorization: Bearer <key>" from then on, plus a link that activates the pass in the user's own map.
Annotations the server declares
- title: Collect the pass key after the user has paid
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
plan_paddleOne call that answers "what will the water be like at this spot?": the nearest tide station with 2 days of highs and lows, currents nearby, the next 24 h of wind, gusts and waves w…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it One call that answers "what will the water be like at this spot?": the nearest tide station with 2 days of highs and lows, currents nearby, the next 24 h of wind, gusts and waves with the maxima, warnings in effect, water temperature and sunrise/sunset, with the important heads_up lines listed first.
Annotations the server declares
- title: Everything for one launch in one call
- readOnlyHint: true
- openWorldHint: true
start_pass_purchaseBegin a Coast Map Pass purchase without leaving the conversation: returns checkout links (CA$5 a month or CA$55 a year, Stripe, no account) tagged with a purchase reference, or say…1 finding
Why it is in this group
- The name "start_pass_purchase" says "start": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "start_pass_purchase" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "start_pass_purchase" says "start": a word for a change.
Description, as the server wrote it Begin a Coast Map Pass purchase without leaving the conversation: returns checkout links (CA$5 a month or CA$55 a year, Stripe, no account) tagged with a purchase reference, or says the pass is not on sale yet. The user pays in their browser; the reference identifies that payment afterwards.
Annotations the server declares
- title: Start buying the Coast Map Pass in this conversation
- readOnlyHint: true
- openWorldHint: true
tide_timesHigh and low tides with heights, in the station's local time.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it High and low tides with heights, in the station's local time. Up to 7 days ahead free; longer ranges (up to 90 days) need the user's Coast Map Pass key.
Annotations the server declares
- title: High and low tide times
- readOnlyHint: true
- openWorldHint: true
water_temperatureWater temperature from the nearest buoy within 40 km, otherwise satellite sea surface temperature.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Water temperature from the nearest buoy within 40 km, otherwise satellite sea surface temperature.
Annotations the server declares
- title: Sea surface temperature
- readOnlyHint: true
- openWorldHint: true
Only reads 1Claude Code: allow
find_stationsNearest tide stations (high/low times) and current stations (slack water, max flood/ebb) to a point, with distance and time zone.No findings
Why it is in this group
- The name "find_stations" says "find": a word for reading.
Description, as the server wrote it Nearest tide stations (high/low times) and current stations (slack water, max flood/ebb) to a point, with distance and time zone. Coverage: Canada, the US, Norway, Ireland, the Netherlands, New Zealand, Australia (Queensland) and modelled tides elsewhere.
Annotations the server declares
- title: Tide and current stations near a point
- readOnlyHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http coast-map https://coast.cosmicotter.ca/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__coast-map__find_stations"
],
"ask": [
"mcp__coast-map__plan_paddle",
"mcp__coast-map__tide_times",
"mcp__coast-map__currents",
"mcp__coast-map__best_low_tides",
"mcp__coast-map__marine_forecast",
"mcp__coast-map__marine_warnings",
"mcp__coast-map__coast_map_pass",
"mcp__coast-map__start_pass_purchase",
"mcp__coast-map__pass_status",
"mcp__coast-map__water_temperature"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as coast-map. Review it before you use it.
