Releases: cyanheads/ourairports-mcp-server
Release list
v0.2.2: mcp-ts-core 0.12.3 maintenance
mcp-ts-core 0.12.3 maintenance
- SDK v2 serves current and legacy clients with strict root inputs and structured errors
- Public cache hints and explicit stateless HTTP sessions
- Current tooling, packaging, contract coverage, and community health files
- deps: @cyanheads/mcp-ts-core ^0.10.14 → ^0.12.3
v0.2.1: stream CSV parse — cut setup RSS peak ~40% (#9)
stream CSV parse — cut setup RSS peak ~40% (#9)
Streaming the setup() CSV parse and loading the six source files one at a time cuts the transient RSS peak, lowering startup OOM risk on memory-constrained deployments. Parse output is byte-for-byte unchanged.
Fixed:
- Streaming
forEachRowvisitor replaces the array-materializingparseCsv— one row at a time into a reused cell buffer, sosetup()never holds every file's parsed rows live at once (#9) load()reads/parses/drops the six CSVs one at a time instead of buffering all six raw strings- Guarded
Bun.gc(true)at end ofload()returns transient parse pages to the OS promptly (no-op off Bun)
Setup-time RSS peak ~40% lower (~871 → ~525 MiB on the test machine); steady-state footprint unchanged (~55 MiB).
107 tests pass; bun run devcheck clean.
v0.2.0: search_runways — cross-airport runway search
search_runways — cross-airport runway search
Adds ourairports_search_runways: filter runways across the corpus by airport facets (country, region, type) and runway facets (surface, min length/width, lighting), one flat airport-plus-runway row per match (#8). Tool count 5 → 6.
107 tests pass; bun run devcheck clean.
v0.1.5: Definition fixes and mcp-ts-core ^0.10.14 maintenance
Definition fixes and mcp-ts-core ^0.10.14 maintenance
Three definition fixes (#5–#7) plus a framework bump with supply-chain install guards.
Fixed:
includedfield on get_airport disambiguates a relation omitted by include from one with genuinely no records (#5)- find_navaids resolves unknown_code at the tool boundary with its declared recovery hint, mirroring get_airport (#6)
- code, airport_code, and country/region facets trim whitespace at the schema boundary; whitespace-only now fails validation (#7)
Changed:
- Supply-chain install guards: bunfig minimumReleaseAge + @socketsecurity/bun-security-scanner; Dockerfile pins oven/bun:1.3.14
Dependency bumps:
@cyanheads/mcp-ts-core^0.10.10 → ^0.10.14@biomejs/biome2.5.1 → 2.5.4
88 tests pass; bun run devcheck clean.
v0.1.4: search and lookup fixes; find limit honors the configured default
search and lookup fixes; find limit honors the configured default
Forward-only token-prefix matching, an ident-priority code index, and a no-searchable-terms notice; find_airports/find_navaids honor OURAIRPORTS_DEFAULT_SEARCH_LIMIT clamped to 50.
Fixed:
- hasTokenPrefix is forward-only, so a gibberish query no longer matches via a bare single-letter token (#1)
- code index built in global ident-first priority passes, so a globally-unique ident is never shadowed by an earlier row's national code (#2)
- a non-blank stopword/punctuation-only query returns zero with a distinct no-searchable-terms notice (#3)
- find_airports honors OURAIRPORTS_DEFAULT_SEARCH_LIMIT (default 20); both find tools clamp the default to max 50 (#4)
Changed:
- framework skills re-synced (api-utils parsing, polish-docs-meta readme)
Dependency bumps:
- @cyanheads/mcp-ts-core ^0.10.9 → ^0.10.10
- @biomejs/biome 2.5.0 → 2.5.1
- @types/node 26.0.0 → 26.0.1
Security:
- transitive js-yaml DoS advisory GHSA-h67p-54hq-rp68 (CVE-2026-53550, medium) cleared via lock re-resolve to 3.15.0
78 tests pass; bun run devcheck clean.
v0.1.3: mcp-ts-core ^0.10.9 maintenance
mcp-ts-core ^0.10.9 maintenance
Framework-only upkeep across the 0.10.7–0.10.9 delta — no server behavior change.
Dependency bumps:
@cyanheads/mcp-ts-core^0.10.6 → ^0.10.9@types/node25.9.3 → 26.0.0
Added:
check-dependency-specifiersdevcheck step — rejects floating specifiers (latest/*/dist-tags) in package.json deps and bun.lock workspaces (cyanheads/mcp-ts-core#246)- Plugin marketplace manifest checks in lint:packaging via devcheck.config.json
packaging.pluginManifests(cyanheads/mcp-ts-core#240)
Changed:
- Framework skills re-synced (api-context 1.8 → 1.9 documents ctx.content) (cyanheads/mcp-ts-core#238)
- Fresh-scaffold devcheck guards adopted into build-changelog / check-framework-antipatterns / check-skill-versions / devcheck
63 tests pass; bun run devcheck clean.
v0.1.2: Hosted endpoint at ourairports.caseyjhand.com
Hosted endpoint at ourairports.caseyjhand.com
Public Streamable HTTP instance now live — no installation required.
Added:
-
Public hosted endpoint at https://ourairports.caseyjhand.com/mcp (Streamable HTTP)
-
server.json remotes[] entry for registry discovery
-
README hosted endpoint block and Getting started subsection
Dependency bumps:
- vitest ^4.1.8 → ^4.1.9
63 tests pass; bun run devcheck clean.
v0.1.1: Metadata fixes
Metadata fixes
Changed:
- README
now reads @cyanheads/ourairports-mcp-server, matching the published npm package name.
Fixed:
- manifest.json gains a repository field linking to the GitHub source.
63 tests pass; bun run devcheck clean.
v0.1.0: Initial release — offline OurAirports aviation reference
Initial release — offline OurAirports aviation reference
Static, bundled airport/runway/navaid/frequency data — no API key, no rate limit, no runtime network.
Added:
- 5 read-only tools: ourairports_search_airports, ourairports_get_airport, ourairports_find_airports, ourairports_find_navaids, ourairports_list_countries
- airport://{code} resource — stable-URI twin of get_airport
- airport-data service: six OurAirports CSVs loaded into in-memory indices at setup() — five-space code resolution (IATA/ICAO/GPS/local/ident) and haversine nearest-neighbour geo
- build:data bundles the public-domain CSVs at build time; the Docker image bakes them in
63 tests pass; bun run devcheck clean.