io. github. cyanheads/ faa-aircraft-registry-mcp-server
by cyanheads · remote · local (npm) · no sign-in to list tools · v0.1.12 · published by GitHub user cyanheads
Offline, keyless lookup of the US civil aircraft registry — decode N-numbers, search records.
5 tools: 1 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things1Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http faa-aircraft-registry https://faa-aircraft-registry.caseyjhand.com/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "faa_get_aircraft_type" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true,"openWorldHint":false}; The name "faa_get_aircraft_type" says "get": 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.
5 tools
Changes things 1Claude Code: ask
faa_get_aircraft_typeDecode a 6–7-character FAA manufacturer/model/series code to aircraft specifications — manufacturer, model, aircraft category, aircraft type, engine type, number of engines, number…1 finding
Why it is in this group
- The name "faa_get_aircraft_type" says "get": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "faa_get_aircraft_type" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true,"openWorldHint":false}; The name "faa_get_aircraft_type" says "get": a word for reading.
Description, as the server wrote it Decode a 6–7-character FAA manufacturer/model/series code to aircraft specifications — manufacturer, model, aircraft category, aircraft type, engine type, number of engines, number of seats, weight class, cruise speed, and type-certificate data sheet/holder. Use faa_search_aircraft_types first to discover a code by manufacturer or model name.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
- openWorldHint: false
Only reads 4Claude Code: allow
faa_get_registration_statusResolve whether a US civil aircraft N-number is active, deregistered, reserved, or unknown, including the available registration and airworthiness status.No findings
Why it is in this group
- The name "faa_get_registration_status" says "get": a word for reading.
Description, as the server wrote it Resolve whether a US civil aircraft N-number is active, deregistered, reserved, or unknown, including the available registration and airworthiness status. Use this rather than faa_lookup_registration when a number may be inactive. A number that was never issued returns recordType "unknown" — a valid, informative answer, not an error. Accepts "N12345" or "12345".
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
- openWorldHint: false
faa_lookup_registrationDecode one US civil aircraft N-number to its full registration record — aircraft make/model, engine, year manufactured, airworthiness, registration status, Mode S (ICAO 24-bit) cod…No findings
Why it is in this group
- The name "faa_lookup_registration" says "lookup": a word for reading.
Description, as the server wrote it Decode one US civil aircraft N-number to its full registration record — aircraft make/model, engine, year manufactured, airworthiness, registration status, Mode S (ICAO 24-bit) code, and registered owner (when owner-PII redaction is off). Accepts "N12345" or "12345" (the leading N is optional). Returns ownerRedacted: true when owner details were withheld. A number that is known but inactive (deregistered or reserved) is not found here — use faa_get_registration_status for its current state.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
- openWorldHint: false
faa_search_aircraft_typesSearch FAA aircraft types by manufacturer/model name, aircraft type code, or category code to discover 6–7-character manufacturer/model/series codes and browse specifications.No findings
Why it is in this group
- The name "faa_search_aircraft_types" says "search": a word for reading.
Description, as the server wrote it Search FAA aircraft types by manufacturer/model name, aircraft type code, or category code to discover 6–7-character manufacturer/model/series codes and browse specifications. Pass a code to faa_get_aircraft_type for specs or faa_search_registrations as manufacturerModelCode for exact registration matches, then faa_lookup_registration for details. At least one filter is required. Every response reports totalCount (all matches, not just this page); when more remain, it returns nextOffset — pass it back as offset to page forward.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
- openWorldHint: false
faa_search_registrationsSearch active US civil aircraft registrations by owner name, make/model, exact manufacturerModelCode, state, aircraft type, or Mode S (hex) code.No findings
Why it is in this group
- The name "faa_search_registrations" says "search": a word for reading.
Description, as the server wrote it Search active US civil aircraft registrations by owner name, make/model, exact manufacturerModelCode, state, aircraft type, or Mode S (hex) code. Discover codes with faa_search_aircraft_types, search registrations by manufacturerModelCode, then drill into N-numbers via faa_lookup_registration. Filters are AND-combined; at least one is required. Owner-name search is unavailable when this deployment redacts owner PII — use the other filters instead. Every response reports totalCount (all matches, not just this page); when more remain, it returns nextOffset — pass it back as offset to page forward.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
- openWorldHint: false
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 0.1.12. Values in angle brackets are yours to fill in.
claude mcp add --transport http faa-aircraft-registry https://faa-aircraft-registry.caseyjhand.com/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__faa-aircraft-registry__faa_lookup_registration",
"mcp__faa-aircraft-registry__faa_search_registrations",
"mcp__faa-aircraft-registry__faa_search_aircraft_types",
"mcp__faa-aircraft-registry__faa_get_registration_status"
],
"ask": [
"mcp__faa-aircraft-registry__faa_get_aircraft_type"
],
"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 faa-aircraft-registry. Review it before you use it.
