Offline, keyless lookup of the US civil aircraft registry — decode N-numbers, search records.
Faa MCP server is a hosted integration for AI assistants that speak the Model Context Protocol. Offline, keyless lookup of the US civil aircraft registry — decode N-numbers, search records.
@cyanheads/faa-aircraft-registry-mcp-server Decode N-numbers to aircraft, engine, status, and owner; search the US civil aircraft registry by owner, type, or state; resolve active/deregistered/reserved status — offline via MCP. STDIO or Streamable HTTP. 5 Tools • 1 Resource
The entire US civil aircraft registry as an offline lookup server. Resolve a tail number to its aircraft, make/model, engine, year, and registered owner; search by owner, type, or state; decode manufacturer and engine codes to specs; and resolve registration status across active, deregistered, and reserved records.
Being a remote server, there is no local install. You register the endpoint with your client, authorise it once, and the tools appear.
Once Faa is connected, these are the calls the assistant has available:
faa_lookup_registration — Decode one N-number to its full pre-joined active record — aircraft make/model, engine, year, airworthiness, registration status, Mode S code, andfaa_get_registration_status — Resolve an N-number across all three status files (active, deregistered, reserved) in priority order, returning a definitive recordTypefaa_search_registrations — Search active registrations by owner name, make/model, state, aircraft type, or Mode S codefaa_search_aircraft_types — Search the aircraft reference table by manufacturer/model name, type, or category to discover manufacturer-model codesfaa_get_aircraft_type — Decode a 6–7-character manufacturer/model/series code to aircraft specs — category, type, engine, seats, weight class, cruise speed, type-certificatePrerequisites — The Prerequisites tool exposed by this serverInstallation — 4. Build the index (see First-run setup):You will need 5 environment variables: MCP_TRANSPORT_TYPE, MCP_LOG_LEVEL, FAA_MIRROR_PATH, FAA_DATABASE_URL, MCP_HTTP_ENDPOINT_PATH. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
bun:sqlite is built into Bun; a Node-only deployment adds better-sqlite3 (already declared as an optional peer dependency). - Disk space for the built index (a few hundred MB) at FAA_MIRROR_PATH. - Network access at mirror:init / mirror:refresh time to download the FAA ZIP. Not needed at query time.This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Faa's toolset — faa_lookup_registration, faa_get_registration_status, faa_search_registrations and 4 more — is a fair guide to whether it matches your workflow. It is maintained by cyanheads; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Faa's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| faa_lookup_registration | Decode one N-number to its full pre-joined active record — aircraft make/model, engine, year, airworthiness, registration status, Mode S code, and registered owner (when redaction is off). |
| faa_get_registration_status | Resolve an N-number across all three status files (active, deregistered, reserved) in priority order, returning a definitive recordType. |
| faa_search_registrations | Search active registrations by owner name, make/model, state, aircraft type, or Mode S code. |
| faa_search_aircraft_types | Search the aircraft reference table by manufacturer/model name, type, or category to discover manufacturer-model codes. |
| faa_get_aircraft_type | Decode a 6–7-character manufacturer/model/series code to aircraft specs — category, type, engine, seats, weight class, cruise speed, type-certificate data. |
| Prerequisites | The Prerequisites tool exposed by this server. |
| Installation | 4. **Build the index** (see [First-run setup](#first-run-setup)): |
{
"mcpServers": {
"faa-aircraft-registry-mcp-server": {
"type": "streamable-http",
"url": "https://faa-aircraft-registry.caseyjhand.com/mcp"
}
}
}Configuration as documented by the project. Restart the client after saving.
bun:sqlite is built into Bun; a Node-only deployment adds better-sqlite3 (already declared as an optional peer dependency). - Disk space for the built index (a few hundred MB) at FAA_MIRROR_PATH. - Network access at mirror:init / mirror:refresh time to download the FAA ZIP. Not needed at query time.| Variable | Description | Required |
|---|---|---|
| MCP_TRANSPORT_TYPE | Configuration value read at startup. | Optional |
| MCP_LOG_LEVEL | Configuration value read at startup. | Optional |
| FAA_MIRROR_PATH | Filesystem location the server is allowed to use. | Optional |
| FAA_DATABASE_URL | Endpoint or connection string the server talks to. | Yes |
| MCP_HTTP_ENDPOINT_PATH | Filesystem location the server is allowed to use. | Optional |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.