Skip to main content

MCP server for AI agents

Livermore gives AI agents the same data as the website: US insider trades from SEC Form 4 and institutional holdings from SEC 13F, including a curated list of superinvestors. The MCP server is public, free and read-only. You don't need an account or an API key.

MCP endpoint

https://livermore.club/mcp

Streamable HTTP · No sign-in · Read-only · Free

Overview

How to reach the server and what to expect.

Endpoint
https://livermore.club/mcp
Transport
Streamable HTTP. Requests are POST; GET and DELETE return 405 because there are no sessions.
Authentication
None
State
Stateless: no session ID, each request is answered on its own.
Protocol revisions
2026-07-28, and through the initialize handshake 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05 and 2024-10-07.
Rate limit
60 requests per minute per IP address. Beyond that the server answers HTTP 429 with a Retry-After header.
Size limits
At most 200 rows per call (most tools default to 25). Request bodies up to 64 KB.
Access
Read-only. Every tool is marked readOnlyHint and idempotentHint.

Connect a client

Setup for Claude, Cursor, VS Code, other clients and plain HTTP.

Claude Code

Run this in a terminal:

claude mcp add --transport http livermore https://livermore.club/mcp

Claude desktop app and claude.ai

Open Settings, then Connectors, choose Add custom connector and enter the URL https://livermore.club/mcp. Leave the OAuth fields empty.

Clients that can only start local (stdio) servers can use a bridge such as mcp-remote:

{
  "mcpServers": {
    "livermore": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://livermore.club/mcp"
      ]
    }
  }
}

Cursor

Add this to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "livermore": {
      "url": "https://livermore.club/mcp"
    }
  }
}

VS Code

Add this to .vscode/mcp.json:

{
  "servers": {
    "livermore": {
      "type": "http",
      "url": "https://livermore.club/mcp"
    }
  }
}

Other clients

Add a remote MCP server of type Streamable HTTP with the URL https://livermore.club/mcp and no authentication. SDK clients connect as usual: the official TypeScript SDK v2 can negotiate the 2026-07-28 revision, and older clients use the initialize handshake.

Plain HTTP

Because the server is stateless, a single POST can call a tool without an initialize request first. With a 2025 revision, the answer arrives as one Server-Sent Event:

curl -sN https://livermore.club/mcp \
  -H "content-type: application/json" \
  -H "accept: application/json, text/event-stream" \
  -H "mcp-protocol-version: 2025-06-18" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search","arguments":{"query":"NVDA","limit":1}}}'

The response (shortened):

event: message
data: {"result":{"content":[{"type":"text","text":"{\"query\":\"NVDA\",…}"}],"structuredContent":{"query":"NVDA","stocks":[{"ticker":"NVDA","name":"NVIDIA Corp","url":"https://livermore.club/en/stock/NVDA"}],"institutions":[],"insiders":[]}},"jsonrpc":"2.0","id":1}

Tools

Nine read-only tools. Start with search to turn a company, fund or person name into a ticker or CIK.

search
Stocks, 13F institutions and insiders, with the ticker or CIK the other tools take.
get_stock
One stock: company facts, 90-day insider activity, 13F ownership and the superinvestors that hold it.
get_insider_trades
Form 4 trades filtered by ticker, insider, filing dates, codes, role and value.
get_insider_lists
Ready-made screens: cluster buys, CEO and CFO buys, the largest buys and sells.
get_stock_13f_holders
The institutions holding a stock in one quarter, with changes against the previous quarter.
get_institution
One 13F filer: quarters filed, holdings for a quarter, positions sold out, options.
list_superinvestors
The curated superinvestors with their latest 13F quarter and largest holdings.
get_superinvestor_activity
What the superinvestors bought and sold in a quarter, overall or for one of them.
get_data_coverage
Data ranges, loaded 13F quarters, last updates and usage limits.

Stocks, 13F institutions and insiders, with the ticker or CIK the other tools take.

Finds stocks, 13F institutions and corporate insiders (Form 4 reporting persons). Tickers match exactly or by prefix, a CIK or a 9-character CUSIP matches exactly, and names need at least 2 characters. Superinvestors also match by fund or manager name, in English or Chinese.

Stocks come with the company in name. For institutions, detail is the manager of a superinvestor or "13F filer"; for insiders, it is their role and company. Insiders appear under their SEC names, last name first, for example "Cook Timothy D".

Parameters

querystring, 1 to 100 charactersrequired
Ticker, company, fund, manager or person name, CIK or CUSIP.
limitinteger, 1 to 20
Maximum matches per group. Default 5.

Example arguments

{"query": "buffett", "limit": 2}

get_stock

One stock: company facts, 90-day insider activity, 13F ownership and the superinvestors that hold it.

The overview of one US-listed stock: SEC name, CIK, exchange, SIC industry and other share classes; open-market insider activity in the last 90 days (Form 4 codes P and S, non-derivative) as a number of filings and a USD total; institutional ownership for the latest complete 13F quarter, with the previous quarter for comparison; and the superinvestors that hold the stock.

A quarter counts as complete once its 45-day filing deadline has passed and the data is loaded. Share classes such as GOOG and GOOGL, or BRK.A and BRK.B, are separate tickers.

Parameters

tickerstringrequired
Ticker, for example AAPL or BRK.B (BRK-B also works).

Example arguments

{"ticker": "AAPL"}

get_insider_trades

Form 4 trades filtered by ticker, insider, filing dates, codes, role and value.

One row per filing and transaction type. Same-day lots are combined (lots says how many), avg_price_usd is value-weighted, and shares_owned_after is the holding after the last lot. ownership_change_pct is the change in the insider's holding, or null for a new position.

With ticker or insider_cik, the whole history since July 2021 is searchable. Without either, the query covers the whole market and at most 30 days of filings; with no dates it covers the last 7 days, and note says when the range was narrowed. Transaction codes are explained in the glossary.

Parameters

tickerstring
Only this company (all share classes of the issuer).
insider_cikstring
Only filings on which this insider is a reporting owner, across companies.
from, toYYYY-MM-DD
Filing-date range in US Eastern time, both ends included.
codesarray of codes, or "all"
Transaction codes to include. Default ["P", "S"].
rolesarray: ceo, cfo, director, officer, owner10
The primary reporting owner has any of these roles.
min_value_usdnumber, 0 or more
Minimum transaction value.
sortfiled, trade_date or value
Newest filing, latest trade date or largest value first. Default filed. Sorting by value leaves out rows flagged as price outliers.
limitinteger, 1 to 200
Rows per page. Default 25.
pageinteger, 1 or more
Page number. Check has_more.

Example arguments

{"ticker": "NVDA", "codes": ["S"], "limit": 1}

get_insider_lists

Ready-made screens: cluster buys, CEO and CFO buys, the largest buys and sells.

The same lists as the insider screens on the website. Windows count back from now by SEC filing time. Only non-derivative transactions count, and rows flagged as price outliers or without a ticker are left out. Cluster buys come back in companies; the other lists return trades with the same fields as get_insider_trades.

cluster-buys
Companies where at least 3 different insiders bought on the open market in the last 30 days, ranked by total value.
ceo-cfo-buys
CEO or CFO open-market purchases of $25,000 or more in the last 30 days, newest first.
top-buys-week
Largest open-market purchases filed in the last 7 days.
top-buys-month
Largest open-market purchases filed in the last 30 days.
top-sells-week
Largest open-market sales filed in the last 7 days.
top-sells-month
Largest open-market sales filed in the last 30 days.

Parameters

listone of the lists aboverequired
Which screen.
limitinteger, 1 to 200
Rows. Default 25.

Example arguments

{"list": "cluster-buys", "limit": 1}

get_stock_13f_holders

The institutions holding a stock in one quarter, with changes against the previous quarter.

Each row gives shares, market value, pct_of_portfolio (the stock's share of that institution's 13F portfolio) and the change against the previous calendar quarter: action is new, added, reduced, unchanged or sold_out, plus share_change and share_change_pct. The totals cover all holders, not just the current page.

Institutions that held the stock last quarter and filed this quarter without it are listed last as sold_out. Institutions that have not filed the quarter yet are not counted as sold out.

Parameters

tickerstringrequired
Ticker.
quarterstring, for example 2026-q2
Default: the latest complete quarter.
sortvalue, shares or change
Largest value, most shares or largest share increase first. Default value.
limitinteger, 1 to 200
Rows per page. Default 25.
pageinteger, 1 or more
Page number.

Example arguments

{"ticker": "AAPL", "limit": 1}

get_institution

One 13F filer: quarters filed, holdings for a quarter, positions sold out, options.

An institution or a curated superinvestor, looked up by SEC CIK: names (plus the manager and investment style for superinvestors), the newest 12 quarters it filed, its holdings for one quarter with changes against the previous calendar quarter, and the 10 largest positions sold out and option positions.

Portfolio value counts long positions and excludes options. If the institution did not file the previous quarter, changes and sold-out positions are not reported. Securities without a ticker have url null.

Parameters

cikstringrequired
SEC CIK, for example 0001067983 or 1067983.
quarterstring
Default: the latest quarter this institution filed.
sortvalue, shares, change or pct
Order of the holdings. Default value.
limitinteger, 1 to 200
Holdings per page. Default 25.
pageinteger, 1 or more
Page number.

Example arguments

{"cik": "0001067983", "limit": 1}

list_superinvestors

The curated superinvestors with their latest 13F quarter and largest holdings.

Portfolio value (long positions, excluding options), number of positions, filing date and the 3 largest holdings, sorted by portfolio value, with Chinese names in name_zh and manager_zh. source_cik is set when the latest quarter was filed under a predecessor CIK.

Parameters

No parameters.

Example arguments

{}

get_superinvestor_activity

What the superinvestors bought and sold in a quarter, overall or for one of them.

Compares one quarter with the previous calendar quarter, for superinvestors that filed both. Added and reduced are decided by share count, not value, and securities are merged by ticker (by CUSIP when there is no ticker).

Without superinvestor_cik it returns the stocks the most superinvestors bought (most_bought) and sold (most_sold), and the moves of each superinvestor (by_superinvestor). With superinvestor_cik it returns that superinvestor's moves, grouped by action.

Parameters

quarterstring
Default: the latest complete quarter that can be compared.
superinvestor_cikstring
Show one superinvestor's moves.
limitinteger, 1 to 50
Rows per list. Default 25.

Example arguments

{"limit": 1}

get_data_coverage

Data ranges, loaded 13F quarters, last updates and usage limits.

The Form 4 filing-date range, the 13F quarters with market-wide data and the latest complete quarter, the number of superinvestors, the last successful updates, the update schedule and the server's usage limits. Call it to check whether a date or a quarter is covered.

Parameters

No parameters.

Example arguments

{}

Result format

Conventions shared by every tool.

Every tool returns JSON twice: as a text block for clients that only read text, and as structuredContent, which matches the tool's output schema.

  • Money is in US dollars and share counts are in shares, both as JSON numbers.
  • Fields ending in _pct are percentages: 12.5 means 12.5%.
  • Dates are YYYY-MM-DD and timestamps are ISO 8601 in UTC. filed_date is the filing date in US Eastern time, the date the SEC uses.
  • Quarters are written like 2026-q2, and period is the quarter-end date (2026-06-30). Quarter parameters also accept 2026Q2, Q2 2026 or 2026-06-30.
  • Every item has a url to its page on livermore.club, in English. Replace /en/ with /zh/ for Traditional Chinese. Please cite the page when you present the data.
  • null means the data is not available, for example a filing without a price.
  • 13F values are market values at the end of the quarter, as reported by the filer. 13F is filed up to 45 days after the quarter ends and covers long positions in US-listed securities only.

Limits and errors

What happens when a request asks for too much or goes wrong.

  • Invalid or unknown input, such as an unknown ticker, a CIK or quarter in the wrong format or a quarter without data, returns a normal tool result with isError true and a sentence explaining what to change. Arguments that break the schema, such as limit over 200, are rejected the same way.
  • A query that runs longer than 5 seconds is cancelled, and the error asks you to narrow the request.
  • Database problems return a generic error without internal details.
  • Calling a tool that does not exist returns a JSON-RPC error (-32602).

Transport errors use HTTP status codes with a JSON-RPC error body:

400
Invalid JSON
405
GET or DELETE
406
The Accept header lacks application/json and text/event-stream (2025 revisions)
413
Body over 64 KB
415
Content type is not application/json
429
Rate limit exceeded; see Retry-After

Data coverage

What the server knows, and how fresh it is. get_data_coverage returns the same numbers.

Form 4 insider trades
Filed Jul 1, 2021 to Sep 25, 2026
13F holdings
All filers from Q1 2021; latest complete quarter Q2 2026
Superinvestors
47 curated investors

Last successful updates (US Eastern)

SEC filings
Sep 25, 2026, 11:50 PM ET
Tickers and company names
Sep 25, 2026, 10:45 PM ET
CUSIP-to-ticker mapping
Sep 26, 2026, 9:19 AM ET

New Form 4 and 13F filings are loaded once a day after 11:30 PM US Eastern. The ticker list is refreshed daily and the full CUSIP-to-ticker mapping weekly.

How the numbers are calculated, and what they can't tell you, is explained in About the data.

More for AI agents

Other ways for language models to use the site.

  • llms.txt is a short plain-text guide to the site for language models: what the data is, how the URLs work and where the MCP server is.
  • AI crawlers such as GPTBot, ClaudeBot and PerplexityBot may read the pages. Only search results and internal APIs are excluded in robots.txt.
  • Every page is available in English under /en/ and in Traditional Chinese under /zh/, and the tables are in the HTML, so agents that read web pages get the same data.