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

# Model Context Protocol (MCP)

> Connect Claude, Cursor, and other AI tools directly to Finvera's financial data — earnings-call transcripts, fundamentals, news, analyst ratings, and market data — through the Finvera MCP server.

The **Finvera MCP server** lets any [Model Context Protocol](https://modelcontextprotocol.io) client — Claude, Claude Code, Cursor, and others — pull Finvera's financial data directly into your model's context. Ask for an earnings-call summary, a company's fundamentals, the latest analyst ratings, or recent quotes, and the model fetches it live through the tools below.

|                    |                                 |
| ------------------ | ------------------------------- |
| **Server URL**     | `https://mcp.finvera.ai/`       |
| **Transport**      | Streamable HTTP                 |
| **Authentication** | OAuth 2.1 — no API key required |

<Tip>
  There are **no API keys to paste**. The MCP server uses OAuth 2.1: the first time your client connects, it opens the Finvera login page in your browser. Sign in with your Finvera account (create one free at the [Dashboard](https://dashboard.finvera.ai/sign-up)) and the connection is authorized automatically.
</Tip>

## Connecting

Add `https://mcp.finvera.ai/` as a remote (custom) MCP connector in your tool of choice. On first connect you'll be sent through the Finvera login flow — no headers or keys to configure.

<Tabs>
  <Tab title="Claude Code">
    Add the server with the CLI:

    ```bash theme={null}
    claude mcp add --transport http finvera https://mcp.finvera.ai/
    ```

    On first use, Claude Code opens the Finvera login page in your browser. After you sign in, the Finvera tools become available in your session. Run `/mcp` to check the connection status or re-authenticate.
  </Tab>

  <Tab title="Claude (Desktop & Web)">
    1. Open **Settings → Connectors**.
    2. Click **Add custom connector**.
    3. Enter a name (e.g. `Finvera`) and the URL `https://mcp.finvera.ai/`.
    4. Save, then click **Connect** and sign in with your Finvera account when the login page appears.

    The Finvera tools will then be available from the connectors menu in any chat.
  </Tab>

  <Tab title="Cursor">
    Add the server to your `mcp.json` (Cursor Settings → MCP → Add new MCP server):

    ```json theme={null}
    {
      "mcpServers": {
        "finvera": {
          "url": "https://mcp.finvera.ai/"
        }
      }
    }
    ```

    Cursor will prompt you to authenticate through the Finvera login page on first connect.
  </Tab>

  <Tab title="Other clients">
    Any MCP client that supports **remote servers over HTTP with OAuth** can connect. Point it at:

    ```json theme={null}
    {
      "mcpServers": {
        "finvera": {
          "transport": "http",
          "url": "https://mcp.finvera.ai/"
        }
      }
    }
    ```

    The client discovers the Finvera authorization server automatically and walks you through login on first connect.
  </Tab>
</Tabs>

## How authentication works

The Finvera MCP server is an OAuth 2.1 **resource server** — it never accepts API keys as parameters. The standard MCP authorization flow runs end to end with zero manual setup:

1. Your client connects with no token and receives a `401` pointing at Finvera's protected-resource metadata.
2. The client discovers the **Finvera authorization server**, registers itself dynamically, and opens the login page.
3. You sign in. The authorization server issues a short-lived access token scoped to the MCP server.
4. Your client calls the server with that token on every request. The server verifies it (signature, issuer, audience, expiry) and serves your data.

Tokens are short-lived and tied to your Finvera account, so your client may prompt you to re-authenticate periodically.

## Available tools

The server exposes the following tools. Your AI client calls them automatically based on your request — you don't invoke them by hand.

### Earnings calls, transcripts & summaries

| Tool                  | Description                                                                                                             |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `list_earnings_calls` | List earnings conference calls (most recent first). Filter by `symbol`; shows which transcripts are available per call. |
| `fetch_transcript`    | Full transcript **text** for a call. Choose `LIVE` (real-time) or `NON_LIVE` (higher-confidence, post-processed).       |
| `get_call_details`    | Call metadata: participants, recording, AI summary, and which transcripts exist (no transcript text).                   |
| `list_call_summaries` | List AI-generated call summaries over a date range.                                                                     |
| `get_call_summary`    | AI summary and sentiment for a single call.                                                                             |

<Tip>
  For transcripts, start with `list_earnings_calls` to find a call, then use `fetch_transcript` for the full text or `get_call_summary` for the AI summary.
</Tip>

### Fundamentals, news & ratings

| Tool                    | Description                                                                                                                                                |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `get_fundamentals`      | Company fundamentals — `lite` (revenue, net income, EPS, assets/liabilities, equity) or `enhanced` (adds margins, cash-flow, and ratios like P/E and ROE). |
| `fetch_news`            | Curated "catalyst" news for a symbol — a headline plus a generated explanation of why the stock is moving.                                                 |
| `fetch_press_releases`  | Structured newswire press releases from GlobeNewswire, PR Newswire, Newsfile, or Accesswire.                                                               |
| `fetch_analyst_ratings` | Analyst rating actions — upgrades/downgrades, ratings, and price targets. Filter by symbol, company, firm, exchange, or date.                              |

<Note>
  `get_fundamentals` requires a Finvera account entitled to the fundamentals data set. Without that entitlement the server returns an "access to route not allowed" error.
</Note>

### Market & reference data

| Tool                  | Description                                                                                             |
| --------------------- | ------------------------------------------------------------------------------------------------------- |
| `fetch_quotes`        | Recent NBBO quotes (best bid/ask price and size) for a symbol.                                          |
| `fetch_trades`        | Recent tick-level executed trades (price, size, exchange) for a symbol.                                 |
| `fetch_ohlc_bars`     | Historical OHLC(V) aggregate bars over a date range, at minute/hour/day/week/month resolution.          |
| `search_securities`   | Resolve tickers and identifiers (FIGI, ISIN, CUSIP, CIK, and more) through the Finvera security master. |
| `fetch_company_logos` | Company logo URLs (PNG/SVG) for a symbol.                                                               |

## Example prompts

Once connected, just ask in natural language. Your client picks the right tools automatically:

* *"Summarize Apple's most recent earnings call."*
* *"What did analysts say about NVDA this week — any upgrades or downgrades?"*
* *"Pull Microsoft's enhanced fundamentals for FY2024."*
* *"Show me the latest catalyst news for TSLA and why it's moving."*
* *"Get daily OHLC bars for AMZN over the last three months."*

## Troubleshooting

<AccordionGroup>
  <Accordion title="The login page never appears / connection fails">
    Confirm your client supports **remote MCP servers over HTTP with OAuth** and that you used the exact URL `https://mcp.finvera.ai/`. In Claude Code, run `/mcp` to retry authentication.
  </Accordion>

  <Accordion title="“Access to route not allowed” when fetching fundamentals">
    The `get_fundamentals` tool requires an account entitled to the fundamentals data set. Check your plan on the [Dashboard](https://dashboard.finvera.ai/sign-up) or contact support.
  </Accordion>

  <Accordion title="Tools stopped working after a while">
    Access tokens are short-lived. Reconnect or re-authenticate (in Claude Code, `/mcp`) to get a fresh token.
  </Accordion>
</AccordionGroup>

Need help? Email [hey@finvera.ai](mailto:hey@finvera.ai).
