> ## Documentation Index
> Fetch the complete documentation index at: https://data.ornn.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Ornn MCP

> Connect Claude, ChatGPT, and any other MCP client to live Ornn GPU, memory, token, and workload market data.

The Ornn MCP server exposes the Ornn Data API as tools an AI assistant can call directly. Once connected, you can ask for a GPU price index, a history series, volatility, memory prices, or the token price index in plain language, and your assistant queries Ornn for the answer instead of guessing.

It is a **read-only** server. Every tool fetches data; none of them write, change, or delete anything in your Ornn account.

<Note>
  Endpoint: `https://data.ornn.com/mcp` — streamable HTTP, OAuth 2.1 with browser sign-in.
</Note>

## What MCP can access

| Data                                                            | Available           |
| --------------------------------------------------------------- | ------------------- |
| GPU price indices, daily settled index, index history           | Yes                 |
| Token price index (OTPI), tracked labs and memory types         | Yes                 |
| Market index, price history, volatility, volume metrics         | Yes, on a paid plan |
| Memory prices, LLM coding index, workload cost, forward curve   | Yes, on a paid plan |
| Neocloud datacenter sites and aggregates                        | Full plans only     |
| Anything in your account — keys, settings, billing, other users | No                  |

Access follows the same tiers as the REST API:

| Account                                | What the tools return                                                                                                                                                                                                                  |
| -------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Any signed-in Ornn account**         | The public tools, shaped to the free tier — free-tier GPU types, the free OTPI labs, and trailing public windows                                                                                                                       |
| **Trial or premium**                   | The public tools plus the paid market-index tools, **capped at daily granularity** and reaching the complete daily history. An hourly or `auto` request is served at daily. Neocloud site data and `get_gpu_price_at` are not included |
| **Full**                               | Every tool, full depth, all tracked types                                                                                                                                                                                              |
| **API key** (`sk_live_` or `sk_prem_`) | Same as the key itself allows on the REST API — a `sk_prem_` key carries the daily cap with it                                                                                                                                         |

<Info>
  Tools resolve access at call time from the account you signed in with. If your access changes, the next tool call reflects it — there is nothing to reconnect.
</Info>

<Note>
  Paid tools need your **own** grant. Access you hold only through your organization covers the product and the public tools, but not programmatic access — write to [data@ornn.com](mailto:data@ornn.com) for an individual grant.
</Note>

## Set-up guide

**Before you start, you need:**

* An Ornn account at [data.ornn.com](https://data.ornn.com). Signing up is self-service.
* An AI tool that supports MCP, such as Claude or ChatGPT.
* A paid plan (trial, premium, or full), or an [API key](/docs/manage-api-keys), if you want the paid tools. The public tools work on any account.

<Note>
  Official Ornn connectors in Anthropic's connector directory and OpenAI's app directory are **coming soon**. Until they land, add Ornn yourself with the endpoint below — the steps take about a minute and give you the same tools.
</Note>

### How to connect

<AccordionGroup>
  <Accordion title="Claude">
    1. Open **Settings → Connectors** in Claude (web or desktop).
    2. Click **Add custom connector**.
    3. Name it `Ornn` and enter the URL `https://data.ornn.com/mcp`.
    4. Click **Connect**, sign in to Ornn in the browser window that opens, and approve access.
    5. Start a new chat and enable **Ornn** from the tools menu.
  </Accordion>

  <Accordion title="ChatGPT">
    1. Open **Settings → Connectors**.
    2. Click **Create** to add a custom connector.
    3. Name it `Ornn`, enter the URL `https://data.ornn.com/mcp`, and choose **OAuth** authentication.
    4. Click **Create**, then sign in to Ornn in the browser window that opens.
    5. In a chat, reference the connector with `@Ornn` or just ask a market-data question.
  </Accordion>

  <Accordion title="Claude Code">
    1. Run the following in your terminal:

       ```bash theme={null}
       claude mcp add ornn --transport http https://data.ornn.com/mcp
       ```

    2. Start Claude Code and run `/mcp`.

    3. Select **ornn** and choose **Authenticate**.

    4. Sign in to Ornn in the browser window that opens and approve access.

    5. Run `/mcp` again — **ornn** should read `connected`.
  </Accordion>

  <Accordion title="Other MCP clients">
    Any MCP client can connect to `https://data.ornn.com/mcp` as a custom or remote server. The client needs:

    * **Streamable HTTP** transport (the server is stateless and POST-only).
    * **OAuth 2.1** with authorization code + PKCE and dynamic client registration, using the browser to sign in.

    Clients that cannot do the OAuth flow but can send headers may authenticate with an API key instead — `sk_live_` on a full plan, `sk_prem_` on trial or premium:

    ```json theme={null}
    {
      "mcpServers": {
        "ornn": {
          "type": "http",
          "url": "https://data.ornn.com/mcp",
          "headers": { "Authorization": "Bearer YOUR_API_KEY" }
        }
      }
    }
    ```

    <Info>
      Prefer plain HTTP? Every tool here maps to a REST endpoint you can call yourself — see the [Quickstart](/docs/quickstart) and [API reference](/docs/api-reference/current-prices/get-current-price-for-one-gpu).
    </Info>
  </Accordion>
</AccordionGroup>

## Tools and descriptions

Tools marked **Paid** need a paid plan (trial, premium, or full) or an API key; on trial and premium they are served at daily granularity, across the complete history. Tools marked **Full only** need a full plan. The rest work on any signed-in account, returning free-tier data.

### GPU prices

| Tool                       | Description                                                   | Access    |
| -------------------------- | ------------------------------------------------------------- | --------- |
| `list_gpu_types`           | The GPU types with a published price index                    | Any       |
| `get_gpu_price`            | Latest \$/hr price index for one GPU type                     | Any       |
| `get_gpu_index_history`    | Daily price index series for one GPU type                     | Any       |
| `get_daily_index`          | Settled daily index over the trailing 7 settled days          | Any       |
| `get_daily_index_snapshot` | Latest settled daily index for every tracked GPU, in one call | Any       |
| `get_market_index`         | The live Ornn compute market index for one GPU type           | Paid      |
| `get_gpu_price_history`    | Prices over a date range, daily or hourly                     | Paid      |
| `get_gpu_price_at`         | The price nearest a specific datetime                         | Full only |
| `get_gpu_rolling_average`  | Rolling 24-hour average price, current or as a series         | Paid      |
| `get_gpu_volatility`       | Rolling-window price volatility over a range                  | Paid      |
| `get_gpu_volume_metrics`   | Observed listing volume metrics over a range                  | Paid      |
| `get_forward_curve`        | Published forward curve marks for GPU compute                 | Paid      |

### Memory, tokens, and workloads

| Tool                       | Description                                                 | Access |
| -------------------------- | ----------------------------------------------------------- | ------ |
| `list_memory_types`        | DRAM, flash, and module types with published prices         | Any    |
| `list_token_types`         | Labs and models covered by the token price index            | Any    |
| `get_token_price_index`    | Settled \$/token by lab (OTPI)                              | Any    |
| `list_llm_coding_products` | Product IDs in the LLM coding index                         | Any    |
| `get_memory_index`         | Current memory price index — one type, one category, or all | Paid   |
| `get_memory_price_history` | Historical prices for one memory type                       | Paid   |
| `get_llm_coding_index`     | Current LLM coding index value for one product              | Paid   |
| `get_llm_coding_history`   | Daily LLM coding index history for one product              | Paid   |
| `get_workload_index`       | Daily workload cost: settled \$/request, index, intensity   | Paid   |

### Datacenters and discovery

| Tool                     | Description                                     | Access    |
| ------------------------ | ----------------------------------------------- | --------- |
| `search`                 | Find Ornn data series by name and get their ids | Any       |
| `fetch`                  | Retrieve the current value of one series by id  | Any       |
| `get_neocloud_sites`     | Neocloud GPU datacenter sites in one region     | Full only |
| `get_neocloud_aggregate` | Site counts and capacity by country or GPU type | Full only |

### Example prompts

* *"What's the current H100 SXM price index?"*
* *"Chart the A100 daily index for the last six months."*
* *"How volatile has H200 pricing been this quarter, on a 30-day window?"*
* *"Compare today's settled index across every GPU type Ornn tracks."*
* *"What's the token price index for Anthropic and OpenAI right now?"*
* *"Where are the neocloud sites running H100s in Virginia?"*

## Troubleshooting

<AccordionGroup>
  <Accordion title="A tool says it needs your own grant">
    Paid tools require your account's **own** grant — the same rule that governs creating API keys. Access you hold only through your organization does not include programmatic access. Check your status at [data.ornn.com](https://data.ornn.com), write to [data@ornn.com](mailto:data@ornn.com) for an individual grant, or connect with an API key instead.
  </Accordion>

  <Accordion title="A tool says it is not included in my plan">
    Trial and premium plans cover the market indices and the current forward curve, not the neocloud site data. `get_neocloud_sites` and `get_neocloud_aggregate` need a full plan, as does `get_gpu_price_at` — it answers with the nearest price print, which can be hourly, so it sits outside the daily-grain tier.
  </Accordion>

  <Accordion title="I asked for hourly and got daily">
    Expected on trial and premium: those plans are daily-grain at every range. The request is served rather than refused, and the response reports the granularity you were actually given — read that field rather than assuming you got what you asked for. In exchange there is no history window: daily reaches the complete record. Hourly and real-time data need a full subscription.
  </Accordion>

  <Accordion title="Unauthorized, or the client keeps asking me to sign in">
    Remove the connector and add it again so the sign-in flow runs fresh. Confirm the URL is exactly `https://data.ornn.com/mcp` with no trailing slash or path, and that you signed in with the Ornn account that holds your access.
  </Accordion>

  <Accordion title="No tools available">
    The client connected but has not listed tools yet. Restart the client, or in Claude Code run `/mcp` and confirm **ornn** reads `connected`. If it reads `needs authentication`, choose **Authenticate** and finish the browser sign-in.
  </Accordion>

  <Accordion title="Rate limited">
    Calls are limited per account: 60 per minute on the public tools and 600 per minute on the paid tools. Batched or looping requests count individually. Wait a minute and retry, or pull large series through the [REST API](/docs/quickstart) instead of one tool call per row.
  </Accordion>

  <Accordion title="A date range came back shorter than I asked for">
    Tools that can return unbounded history clamp an open-ended request to a trailing window — 180 days on the GPU series, less on the workload index — and derive a missing bound from the one you gave. Pass both `startDate` and `endDate` for a specific window.
  </Accordion>

  <Accordion title="A price came back for the wrong moment">
    `get_gpu_price_at` returns the *nearest* available point rather than erroring on an out-of-range datetime. Read `time_difference` and `is_exact` in the response, and quote the timestamp it returned rather than the one you asked for.
  </Accordion>
</AccordionGroup>

## FAQ

<AccordionGroup>
  <Accordion title="Can the MCP server change anything?">
    No. Every tool is read-only and annotated as such, so assistants can run them without a confirmation prompt for each call. There are no write, update, or delete tools.
  </Accordion>

  <Accordion title="Do I need an API key?">
    Not for the connector flow — signing in with your Ornn account is enough, and your account's access decides what the tools return. A key is useful for clients that cannot run a browser sign-in, or when you want a credential you can revoke on its own. Either key shape works here: a `sk_prem_` key reaches the same daily-grain surface its plan does.
  </Accordion>

  <Accordion title="Is my API key sent to the assistant?">
    Only if you configure one yourself in the client, as in **Other MCP clients** above. The OAuth path never exposes a key; the server resolves your access from the signed-in account.
  </Accordion>

  <Accordion title="Does this cost extra?">
    No. MCP access is included with your Ornn plan and draws on the same data and access tiers as the REST API. Trial and premium plans reach the paid tools at daily granularity; a full plan reaches everything.
  </Accordion>

  <Accordion title="Which data does it cover?">
    The same market data documented on this site: GPU price and market indices, history and analytics, memory prices, the token price index, the LLM coding index, workload cost, forward curve marks, and — on a full plan — neocloud sites.
  </Accordion>

  <Accordion title="Can I use it with my own agent or script?">
    Yes — point any MCP client at `https://data.ornn.com/mcp`. If you are writing the client yourself, calling the [REST API](/docs/quickstart) directly is usually simpler.
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Manage API keys" href="/docs/manage-api-keys">
    Create a key for clients that cannot run a browser sign-in.
  </Card>

  <Card title="Browse all endpoints" href="/docs/api-reference/current-prices/get-current-price-for-one-gpu">
    The REST surface behind every tool on this page.
  </Card>
</CardGroup>
