Circulus Map - air route calculation with projected map
Use this skill when the task is about aviation route planning, map projections, airport lookup, ETOPS, or generating shareable SVG route maps through a local Circulus Map setup.
Hosted destination (next release)
Quick start
- Before using tools, make sure the local app is running with
npm run devand the MCP worker is running withnpm run mcp:dev. - Expect the local MCP endpoint at
http://127.0.0.1:8788/mcp. - For simple requests, call
map.solve_querywith shorthand input likeJFK-LHRor800nm@DEN. - For advanced requests, build a
MapSpecV1object and callmap.solve_spec. - Use
map.search_locationsbefore solving when the user is unsure about codes or city names. - Use
map.get_airportwhen you need a single airport record with coordinates and runway metadata. - Use
map.render_svgonly after the route/spec is stable.
Tool selection
map.search_locations: best first step for ambiguous airport/city input.map.solve_query: fastest path for route-only requests and simple range rings.map.solve_spec: use when the user cares about projection, ETOPS, labels, markers, or multiple paths.map.list_scenarios: use when the user asks for examples or wants a starting point.map.render_svg: use for final export-ready output, not exploration.
Resources
- Read
circulus://mapspec/schemabefore authoring a non-trivialMapSpecV1. - Read
circulus://projection/guidefor projection choices. - Read
circulus://scenario/catalogandcirculus://api/exampleswhen you need examples quickly.
References
- For local setup details and offline packaging expectations, read references/local-setup.md.
- For quick query and spec-writing guidance, read references/mapspec.md.
- For sample payloads, inspect
assets/exampleswhen bundled with this skill package.
Guardrails
- Stay within the MCP tool surface; do not invent unsupported write operations.
- Do not ask the MCP server to proxy arbitrary URLs or tile providers.
- Prefer
map.solve_queryovermap.solve_specunless explicit control is needed. - If the local MCP server is unreachable, help the user restore the local app and worker before retrying tool calls.