skyaccess-mcp
OfficialClick on "Deploy 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., "@skyaccess-mcpFind empty-leg flights from Nice to London next Friday for 2 passengers"
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.
skyaccess-mcp
One command to add the SkyAccess private-jet MCP server to your AI client.
npx skyaccess-mcpThe server is public, anonymous, and read-mostly. It serves five tools:
Tool | Does |
| Find discounted empty-leg flights by route, date, pax |
| Re-read one leg by id |
| Get the customer-facing booking link for a leg |
| Indicative price range for a charter route |
| Submit a charter enquiry (the only tool that writes) |
Endpoint: https://mcp.skyaccess.com/mcp
Do you even need this package?
Often not, and that is the honest answer. Checked against vendor docs on 2026-08-28:
Client | Supports a remote URL natively? | What you actually do |
Claude.ai / Claude Desktop (Connectors) | Yes | Settings → Connectors → Add custom connector → paste the URL |
Claude Code | Yes |
|
Cursor | Yes | a |
| No — stdio only | needs a local process, i.e. the bridge in this package |
So this package does two things and nothing more:
Writes the config for clients that take a remote URL, so you do not have to hand-edit JSON.
Ships a stdio↔HTTP bridge for the one path that genuinely cannot take a URL — Claude Desktop's config file, and any other stdio-only client.
If you would rather paste a URL into a settings pane, do that. Nothing here is required.
Related MCP server: volo-mcp
Commands
npx skyaccess-mcp # register with every supported client found on this machine
npx skyaccess-mcp --dry-run # show what would be written, write nothing
npx skyaccess-mcp doctor # check the endpoint and list its tools
npx skyaccess-mcp bridge # the stdio<->HTTP bridge (clients spawn this; not for humans)Options: --url <url>, --client <cursor|claude-desktop>, --dry-run, --help.
doctor exits non-zero if the endpoint is unreachable or returns no tools, so it is usable in a
script.
What gets written
Cursor — ~/.cursor/mcp.json, remote, no local process:
{ "mcpServers": { "skyaccess": { "url": "https://mcp.skyaccess.com/mcp" } } }Claude Desktop config file — stdio, because that file rejects a url:
{
"mcpServers": {
"skyaccess": {
"command": "npx",
"args": ["-y", "skyaccess-mcp", "bridge", "--url", "https://mcp.skyaccess.com/mcp"]
}
}
}Safety rules the installer follows:
A client is only written to if its own directory already exists — running this will not create
~/.cursoron a machine with no Cursor.Every other key in the file is preserved; your other MCP servers survive verbatim.
A config that does not parse as JSON is left untouched and reported, never overwritten.
An existing entry is backed up to
<config>.skyaccess-backupbefore it is replaced.
Design notes
Zero runtime dependencies.
npxdownloads exactly this package and nothing else, so there is no transitive supply chain to audit for a one-shot installer. Node 20+ only.Plain ESM, no build step. What is published is what is in
src/.The bridge writes only JSON-RPC to stdout, one message per line; every diagnostic goes to stderr. A stray stdout write corrupts the protocol.
A notification answered with
202produces no stdout line — synthesising a reply the client never asked for is a protocol violation.A failed HTTP hop for a request is turned into a JSON-RPC error carrying the same
id, so the client fails fast instead of hanging forever.
Tests
pnpm --filter skyaccess-mcp test # offline: real local http server, no network
pnpm --filter skyaccess-mcp test:live # hits https://mcp.skyaccess.com/mcpThe live suite is opt-in (SKYACCESS_MCP_LIVE=1) and deliberately outside the CI gate: it
depends on DNS, the public internet and a 30-req/min rate limit, none of which say anything about
whether this code is correct.
Publishing
⚠️ Not published yet. registry.npmjs.org/skyaccess-mcp is a 404 and the name is unclaimed.
This is also the first non-private package in this monorepo — everything else is private: true.
To publish (requires an npm account with rights to the name):
cd packages/skyaccess-mcp
npm publish --access public # publishConfig.access is already set to publicThen verify the real path a user takes:
npx -y skyaccess-mcp@latest doctorThis server cannot be deployed
Maintenance
Related MCP Connectors
Search 5,000+ live empty leg flights, get charter estimates and booking links. Free, no API key.
Live flight prices and working booking links for AI agents and travel apps.
Flight search & booking for AI agents. 400+ airlines, $20-50 cheaper than OTAs.
Aircraft intelligence for AI agents: valuations with uncertainty bands, FAA registry lookups, cost of ownership, comparable aircraft, fleet search, airworthiness directives and STCs, market metrics and forecasts, verified value reports, pre-buy diligence checklists, logbook search and a watchlist. 38 tools; free tier with OAuth or a Windsock API key.
Related MCP Servers
- AlicenseAqualityFmaintenanceConnects AI agents to Google Flights data, enabling retrieval of flight information, cheapest options, time-filtered flights, and best recommendations.430MIT
- AlicenseAqualityCmaintenanceGive AI agents the ability to search private jets, compare aircraft, get quotes, and submit charter requests through natural language.714 npmMIT

AirLabs MCP Serverofficial
AlicenseAqualityDmaintenanceProvides AI assistants with access to real-time flight data, airport schedules, delays, and aviation reference databases through natural language queries.12181 npmMIT- AlicenseNot gradedqualityBmaintenanceEnables live flight search and pricing via the Duffel Flights API, allowing AI agents to query flight data and pricing.153 npmMIT