Clearspar Part 135 MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Clearspar Part 135 MCPHow concentrated is Alaska's Part 135 charter market?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Clearspar Part 135 MCP
An MCP server that turns Claude into a US Part 135 market analyst over my live Clearspar FAA operator dataset — 1,890 active Part 135 charter certificate holders scraped from the official FAA xlsx (fleet size derived from tail counts, state-mapped).
It wraps my real, key-gated endpoint GET /api/prospects on clearspar.binnacleai.com. The tools compute — concentration ratios, HHI, fleet distributions, rankings — they don't just dump rows. Ask "How concentrated is Alaska's Part 135 charter market?" and Claude pulls all 303 Alaska operators live and answers with real math.
This is a thin analyst layer over my own production data — not a public FAA API. It's read-only and key-gated.
What it is (honest scope)
The dataset reliably populates three dimensions: operator name, state (2-letter USPS), and fleetSize (FAA tail count), plus a crmStatus pipeline field. Every tool here is built on those. Sparse/empty fields (email, phone, website, style, certificate dates, aircraft type, lat/lng) are deliberately not exposed as tools — see "Not built" below — so the server never fabricates a metric it can't back with data.
Related MCP server: beast-baseball
Tools
Tool | What it computes |
| Operator count, total tails, avg & median fleet, largest operator, top-5 tail share, HHI concentration, top operators. |
| Operators ranked by fleet size. State-scoped or the full ~1,890 universe. |
| Side-by-side of 2+ operators (state, fleet, certNo, CRM status); who's largest, shared state. |
| Fleet-size distribution buckets, top-1/3/5 concentration, HHI with plain-English read, market leaders. |
| Live counts across CRM stages (NEW/CONTACTED/REPLIED/DEMO/CLOSED/DEAD). |
Not built (data doesn't support it)
Proximity / radius / "operators near X" — there is no lat/lng, base-airport, or ICAO field. Geography is state-level only.
Operator-type segmentation (bush vs scheduled vs tour) — the
stylefield exists but isNULLin 100% of records.Contact / email / phone outreach tools — email, phone, and website are populated on ~0.5% of records (known enrichment gap).
Certificate-age / aircraft-make-model tools — no cert-issue-date or aircraft-type field exists; only a derived
fleetSizeinteger.
Install
cd clearspar-part135-mcp
npm install
npm run buildConfigure
Copy .env.example and fill in the key:
cp .env.example .envCLEARSPAR_BASE_URL=https://clearspar.binnacleai.com
CLEARSPAR_API_KEY=<the DIGEST_API_KEY value>The endpoint is key-gated (returns 401 without a valid key — that gate is verified). The key is the DIGEST_API_KEY env var on the takeoff-app Docker container (host 144.202.116.229):
# retrieve without printing it into history/logs
docker exec takeoff-app printenv DIGEST_API_KEYCLEARSPAR_API_KEY is required — the server refuses to call the API without it.
Claude Desktop config
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"clearspar-part135": {
"command": "node",
"args": ["/Users/johnthomasair/code/clearspar-part135-mcp/build/index.js"],
"env": {
"CLEARSPAR_BASE_URL": "https://clearspar.binnacleai.com",
"CLEARSPAR_API_KEY": "<the DIGEST_API_KEY value>"
}
}
}
}Restart Claude Desktop. The five tools appear under the plug icon.
Demo prompts
"How concentrated is Alaska's Part 135 charter market?"
"Give me a market summary for Hawaii's Part 135 operators."
"Rank the top 15 Part 135 operators nationwide by fleet size."
"Compare Grant Aviation and Bering Air."
"What's the competitive landscape in Texas — is it fragmented or dominated by a few?"
"Where does my CRM pipeline stand for Alaska?"
How it talks to the API
GET /api/prospects?state=&crmStatus=&limit=&offset=with headerX-API-Key.Response:
{ "total": <count of matching ACTIVE rows>, "rows": [ <Prospect> ] }. The server always filtersstatus: 'ACTIVE'.limitis hard-capped at 500 server-side. Any tool needing full coverage paginates byoffsetuntil it has alltotalrows, and caches the ~1,890-row universe for the process lifetime (the data only changes when the FAA scraper re-runs).There is no free-text search param, so
compare_operatorsmatches names client-side.Read-only: only
GETis ever called (the route also hasPOST/PATCH, which this server never uses).
Live data sanity (as of build)
total = 1890 active operators · AK = 303 · HI = 28 · all certType = "135" · all crmStatus = "NEW". Verified against the live endpoint; fleetSize ranges 1–386 nationwide (1–42 in AK).
Work with me
I'm John Thomas — I run BlueWave Projects, an AI build studio. I ship production MCP servers, Claude agents, and LLM-in-the-loop pipelines — usually in days, not months — over real, often regulated data (FAA Part 135, maritime AIS, Hawaii property records). USCG Master Captain; deep in aviation, maritime, and construction operations.
Want Claude wired into your own data or workflow? john@binnacleai.com · https://bluewaveprojects.com
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/portofcams/clearspar-part135-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server