# Orita MCP Server

Connect compatible AI agents (Claude, Cursor) to the Orita Provider Resolution API via MCP.

## Important: SSE Accept header required

The MCP server uses StreamableHTTP transport. All requests must include:

  Accept: application/json, text/event-stream

MCP-compatible clients (Claude Desktop, Cursor, MCP Inspector) send this automatically.
Raw HTTP clients (curl, fetch) must add it manually or they receive an empty response.

## Connection

{
  "mcpServers": {
    "orita": {
      "url": "https://orita.online/api/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_ORITA_API_KEY"
      }
    }
  }
}

## Tools

### resolve_scheduling

Search the authenticated application's own provider network and return eligible provider-time options.
Use when the provider is not already known.
Applies structured eligibility rules and availability checks.
This tool does not create or modify a booking.

### get_resolution

Retrieve a stored scheduling resolution, including ranked options, matched constraints, ranking factors, exclusion reasons, warnings, and expiration status.
This tool does not modify external state.

### hold_scheduling_option

Temporarily reserve one option from an existing scheduling resolution.
Use before final customer approval when the application needs to reduce the risk that the selected slot becomes unavailable.
This tool does not create a confirmed booking.

### release_scheduling_option

Release a previously held scheduling option.
Use when the customer rejects the option, changes requirements, or abandons the flow.

### confirm_scheduling_resolution

Confirm one previously resolved provider-time option and create the booking.
This changes external state.
Call only after the customer approves the provider, service, date, time, timezone, and customer details.
Requires an idempotency key and revalidates availability before confirmation.

### reschedule_booking

Move an existing booking to a new approved provider-time option.
This changes external state and requires customer approval.

### cancel_booking

Cancel an existing booking.
This changes external state and requires explicit customer approval.

## Safety rules

1. Resolution tools do not create bookings.
2. Never infer missing eligibility data.
3. Display provider, service, time, timezone, and cancellation policy before confirmation.
4. Use idempotency keys for every mutating request.

## Links

- https://orita.online/developers#mcp
- https://orita.online/developers/reference
