Install the Flyra MCP server
The Flyra MCP server gives any MCP-compatible agent — Claude Desktop, Claude Code, Cursor, ChatGPT in developer mode — native access to your Flyra org. Pick your client below, paste the snippet, restart.
1Generate an API key
Org admins can mint a scoped key at Settings → Developer. Pick the permissions you want the agent to have — read-only for safe experiments, write/SMS if you trust it.
2Install in your MCP client
Open ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows). Add Flyra to mcpServers:
{
"mcpServers": {
"flyra": {
"url": "https://mcp.flyra.io/mcp",
"headers": {
"Authorization": "Bearer flr_live_<your_key>"
}
}
}
}Restart Claude Desktop. The Flyra tools (search, create, schedule, send) will appear in the connector tray.
One command from any project:
claude mcp add flyra https://mcp.flyra.io/mcp \ --transport http \ --header "Authorization: Bearer flr_live_<your_key>"
Run claude mcp list to confirm. Tools become available in the next session.
Edit ~/.cursor/mcp.json:
{
"mcpServers": {
"flyra": {
"url": "https://mcp.flyra.io/mcp",
"headers": {
"Authorization": "Bearer flr_live_<your_key>"
}
}
}
}3Smoke test (optional)
Run Anthropic's MCP Inspector to verify the server, your key, and the tool catalog from any terminal:
npx @modelcontextprotocol/inspector https://mcp.flyra.io/mcp # Then set the Authorization header to "Bearer flr_live_<your_key>" and click Connect.
Tool catalog
A curated set of tools, namespaced flyra_*. Each carries a required scope; calls from a key that lacks the scope return a coaching error explaining what to ask the admin for.
| Tool | Scope |
|---|---|
| flyra_search_customers | customers:read |
| flyra_get_customer | customers:read |
| flyra_create_customer | customers:write |
| flyra_update_customer | customers:write |
| flyra_search_jobs | jobs:read |
| flyra_get_job | jobs:read |
| flyra_create_job | jobs:write |
| flyra_update_job | jobs:write |
| flyra_cancel_job | jobs:write |
| flyra_transition_job_status | jobs:write |
| flyra_job_assign_employee | jobs:write |
| flyra_job_unassign_employee | jobs:write |
| flyra_list_services | services:read |
| flyra_list_employees | employees:read |
| flyra_get_employee_availability | employees:read |
| flyra_set_employee_availability | employees:write |
| flyra_list_subscriptions | subscriptions:read |
| flyra_list_subscription_templates | subscriptions:read |
| flyra_create_subscription | subscriptions:write |
| flyra_cancel_subscription | subscriptions:write |
| flyra_send_sms | sms:send |
| flyra_charge_invoice | invoices:write |
| flyra_refund_payment | invoices:write |
Claude.ai and ChatGPT sign in with OAuth.
The server supports OAuth 2.1 with dynamic client registration, so no API key is needed there. Add a custom connector (Claude) or custom app (ChatGPT) with the URL https://mcp.flyra.io/mcp, set authentication to OAuth, and leave the client ID and secret blank. You will be sent to Flyra to sign in and approve access. Choosing “No authentication” makes the tool list come back empty. The Bearer key above is for clients configured by file, like Claude Desktop, Claude Code and Cursor.
Need help? info@flyra.io · Issues? REST API reference covers the same surface from a different angle.
Back to API docs