Skip to main content
Connect an MCP client to Farelint’s Streamable HTTP endpoint:
Use an API key from your Farelint dashboard. Authentication uses Authorization: Bearer YOUR_API_KEY on every request. Keys have the same workspace access and revocation behavior as the HTTP API. Keep the key in your environment or client secret storage.

Connect your client

Set FARELINT_API_KEY in the environment that launches Claude Code. Add this to your project’s .mcp.json:
Open /mcp in Claude Code to check the connection. See Claude Code’s MCP configuration guide.
For local development, use http://127.0.0.1:4188/mcp and a key from the matching local database. The endpoint accepts MCP POST requests and returns JSON. It is stateless: no MCP session ID, persistent SSE connection or separate MCP service is required. This integration supports clients that can supply a bearer API key. OAuth sign-in and app-directory listings are not implemented. Clients that require an OAuth connector cannot use an API key in its place.

Available tools

The search and details tools require idempotency_key and request.max_credits. Choose a new idempotency key for each intended operation and reuse the same key and payload for retries. A retry retrieves the existing job; it does not reserve credits again. A different payload with the same key is rejected. MCP uses the same plan requirements, capability validation, queues, concurrency and credit accounting as the HTTP API. Async tool calls have no synchronous surcharge. Technical partial and failed jobs release their reserved credits under the normal settlement rules.

Search, then poll

First call farelint_list_airlines to confirm the requested capability and credit rate, and farelint_get_usage to check your balance. Ask the traveller for missing dates, passenger details or airport codes before submitting a search. Example arguments for farelint_search_flights:
The example ceiling must cover the current rate returned by farelint_list_airlines; it does not lock in pricing or establish route availability. The response is a durable job. Pass its id as job_id to farelint_get_job; wait between polls rather than submitting another search. farelint_list_requests and farelint_get_usage accept the previous page’s next_cursor as cursor. farelint_get_offer_details accepts offer_id, an idempotency_key and a request containing max_credits plus an optional registered webhook_endpoint_id. Check that details are enabled for the source first. Search also supports the existing registered webhook endpoint field. Tool failures return isError: true with a structured error.code, message and retry_after_seconds. For HTTP authentication failures, correct the configured API key; do not keep submitting the same rejected credential.

Results and availability

Preserve original currencies, source timestamps, price basis, completeness and checkout_verified when presenting results. A queued job is not a fare quote; a partial result is not a completed search. Farelint observations do not book tickets or guarantee checkout availability. Collection workers must be enabled and available to process queued jobs. Adding MCP does not enable a source or start workers. Existing collection and retention limits still apply. Scheduled feeds, bulk exports, historical analytics, packaged agent skills and team invitations remain separate roadmap items. Completion webhooks are available through the existing HTTP API. Contact miguel@miguellabs.xyz for commercial source onboarding. Permitted display, analysis, retention and redistribution must be confirmed before public enablement.