Documentation
Connect OpenFilings to Claude, Cursor or ChatGPT
https://api.openfilings.org/mcp · Sign in
Your agent's financial analyst — Buy / Hold / Sell from earnings calls, plus verified KPIs — typically under a second once the filing is ready.
1Claude Desktop
Remote connectors are added from Settings, not by hand-editing a config file — the same mechanism as claude.ai:
- Claude Desktop → Settings → Connectors → + → Add custom connector
- Paste https://api.openfilings.org/mcp → Add
- Click Connect on OpenFilings → sign in via OAuth
Advanced: API key instead of OAuth
On the “Add custom connector” dialog, open Advanced settings and set the header below instead of connecting via OAuth:
{
"mcpServers": {
"openfilings": {
"type": "http",
"url": "https://api.openfilings.org/mcp",
"headers": {
"X-API-Key": "of_your_key_here"
}
}
}
}2Claude.ai
- claude.ai → Customize → Connectors → + → Add custom connector
- Paste https://api.openfilings.org/mcp → Add
- Click Connect on OpenFilings → sign in
- New chat → + → Connectors → enable OpenFilings
Team/Enterprise: an Owner adds it first via Organization settings → Connectors → Add → Custom → Web; members then connect from Customize → Connectors.
3ChatGPT
ChatGPT connects via a custom MCP connector in the web app (Plus, Pro, Business, or Enterprise). Enable developer connectors first, then add OpenFilings:
Settings → Apps & Connectors → Advanced— turn on Developer mode.Settings → Apps & Connectors → Create(custom connector).- Name:
OpenFilings— URL:https://api.openfilings.org/mcp - Authentication: OAuth 2.0 (recommended — same DCR flow as Claude.ai; sign in with your OpenFilings account when prompted). Or API key: header
X-API-Key, value yourof_…key. - In a new chat:
Tools → Use connectors— enable OpenFilings.
4API key (scripts, Cursor & fallbacks)
Sign in — then create an API key on My Page before connecting an agent.
Connector submissions may require our Privacy Policy and Terms.
5Cursor
Open Cursor Settings → MCP and add a remote server, or edit .cursor/mcp.json (OAuth — recommended):
{
"mcpServers": {
"openfilings": {
"type": "http",
"url": "https://api.openfilings.org/mcp"
}
}
}Reload MCP, then click Connect on openfilings and sign in. Modern clients use CIMD (Client ID Metadata Document — MCP spec 2026-07-28): the client ID is an https://… metadata URL fetched from discovery. Legacy clients still register via POST /oauth/register (RFC 7591 DCR). Redirect URIs: cursor://anysphere.cursor-mcp/oauth/callback (desktop) or https://www.cursor.com/agents/mcp/oauth/callback (web / agents).
API key fallback
{
"mcpServers": {
"openfilings": {
"type": "http",
"url": "https://api.openfilings.org/mcp",
"headers": {
"X-API-Key": "of_your_key_here"
}
}
}
}Replace of_your_key_here with a key from My Page → API Keys.
6Claude Code
Add server
claude mcp add --transport http --scope user openfilings https://api.openfilings.org/mcp
Sign in
> /mcp
openfilings → Authenticate
Check
claude mcp list
7Try it
Open a new chat and ask in plain language. The agent calls OpenFilings tools automatically.
- “What is OpenFilings' latest view on NVDA? Use search_ticker then get_company_analysis with ticker=NVDA and market=us.”
- “Call list_markets, then get_company_financials for AAPL with fiscal_year_from=2020, fiscal_year_to=2024, line_items=ebitda.”
- “When is Palantir's next earnings? Use search_ticker then get_company_financials with ticker=PLTR and market_id=us — read the earnings block.”
- “List filings for Tencent (0700) on the Hong Kong market and summarize the latest annual report.”
- “Compare revenue and net income for AAPL vs MSFT from their latest 10-K filings.”
Available tools
Ask in plain language — the agent picks tools automatically. Pass market_id where noted (default us).
| Tool | Description |
|---|---|
| list_markets | Markets available on your account (call first for allowed market_id values). EU/EEA country ids also search eu (ESEF financials). |
| search_ticker | Resolve a name, ticker, ISIN, or LEI to an entity across markets (EU/EEA country market_id also matches eu listings) |
| list_filings | Regulator filings + IR-site documents for a ticker (source=investor_relations on IR rows) |
| get_filing | One filing or IR document by UUID (sections apply to regulator filings only) |
| get_company_financials | As-filed period series (fiscal_year_from/to, line_items, as_of) plus Street earnings calendar |
| get_price_snapshot | Quote (price, mcap, PE, 52w) + trailing returns + SMA/golden-death cross + vs SPY; pass event_at for the move around a date |
| get_company_analysis | Our analyst rollup — latest call (Buy / Hold / Sell + history) and annual filing red flags |
| list_transcripts | Earnings-call transcript metadata for an issuer |
| get_transcript | Full call body; include_analysis=true for our analyst on that call |
| list_filing_sections | Table of contents for a filing |
| get_filing_section | Section body text |
| list_notifications | Your inbox — filing, press, and insider alerts with drill_down hints (auth required, no quota) |
| list_news | Press metadata per entity (GNW + Satelight; Pro; news_id + action_tier on each row) |
| get_news | Full article plain text (elevated plan required; GNW URL fetch ~2–8s) |