@ultra-network/mcp
v0.1.0
Published
Ultra Network MCP server — exposes every Ultra Public API v1 operation as an MCP tool. Spec-driven; new endpoints become new tools with zero code changes.
Maintainers
Readme
@ultra-network/mcp
An MCP server that exposes every Ultra Network Public API v1 operation as a tool. Drop it into Claude Code, Cursor, Windsurf, or any MCP-compatible client and the LLM can read trips, manage suppliers, create bookings — anything the API can do.
Spec-driven: new endpoints become new tools automatically on next server start. Zero MCP code changes.
Install
npm install -g @ultra-network/mcpOr invoke without installing via the configuration below.
Configure Claude Code
Add to ~/.claude.json (user-scope) or .mcp.json in your project root:
{
"mcpServers": {
"ultra": {
"command": "npx",
"args": ["-y", "@ultra-network/mcp"],
"env": {
"ULTRA_API_KEY": "ulk_yourkey"
}
}
}
}Restart Claude Code. Type /mcp to confirm. Tools surface as mcp__ultra__list_trips, mcp__ultra__create_booking, etc.
Get an API key at ultranetwork.co/contact.
Configure Cursor / Windsurf / Zed
Each editor has its own MCP config panel. The shape is the same — a command + args + env block. Point command at npx (or the installed ultra-mcp bin) and pass ULTRA_API_KEY in env.
Environment
| Var | Default | Purpose |
|---|---|---|
| ULTRA_API_KEY | (required) | Bearer key. Without it, tool calls return 401. |
| ULTRA_API_SPEC | https://ultranetwork.co/api/v1/openapi.json | OpenAPI source — point at a preview deploy or local file for testing. |
| ULTRA_API_BASE_URL | spec.servers[0].url | HTTP base URL override. |
| ULTRA_API_TAGS | (empty) | Comma-separated tag filter — only expose tools matching these tags (e.g. Trips,Suppliers for read-only). |
How it works
boot → fetch /api/v1/openapi.json → extract operations → register one MCP tool each
│
tool call → substitute path params → build query → JSON body if any
↓
fetch https://ultranetwork.co/api/v1/<path>
↓
return { status, request_id, body } as MCP contentThe server is dumb-pipe by design — business logic stays in the API, this layer just translates MCP RPC ↔ HTTP. When the v1 surface grows, restart the server and the new endpoints appear as new tools.
Docs
- Developer docs — auth, API reference, CLI, errors, pagination
- MCP guide — install + troubleshooting
- Live API reference — interactive Scalar UI
Licence
MIT
