InsiderTrack MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_TOKENS | No | Bearer tokens for HTTP authentication, in the format `name:token`. Used to gate access to the server over HTTP. In local subprocess mode, tokens are not needed. | |
| INSIDERTRACK_URL | Yes | URL of the InsiderTrack API server. Used to connect to the backend API. Example: http://localhost:8013 | |
| MCP_ALLOW_WRITES | No | Set to '1' to enable the optional write tool (watchlist_add). Requires also providing the server with a watchlist identity (not described here). Default is unset/disabled. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searchA | Find members of Congress, tickers, 13F funds and Fed officials by name or symbol. Use this first when you have a name or part of a ticker and need the politician id, fund id or exact symbol that the other tools take. Matching is case-insensitive and partial ("pelosi", "NVD", "berkshire"). Args: query: A name or ticker fragment, 1-80 characters. |
| congress_tradesA | Stock trades disclosed by members of Congress (House and Senate PTRs). Filter by ticker and/or politician id (from Args:
ticker: Exact symbol, e.g. NVDA.
politician_id: From |
| ticker_signalA | InsiderTrack's composite score for one ticker, with the reasons behind it. Score is 0-100: smart money (13F holders) + Congress buying weighted by each
member's track record + corporate insiders (Form 4) + momentum, minus a risk
penalty. Args: ticker: Exact symbol, e.g. NVDA. |
| top_signalsA | The strongest composite scores right now, highest first (use ticker_signal for the reasons). Args: limit: Rows to return, 1-25 (default 10). min_score: Only tickers scoring at least this (0-100). |
| cluster_buysA | Companies where several corporate insiders bought their own stock on the open market. "Cluster buys" — two or more distinct officers, directors or 10% owners filing open-market purchases (Form 4 code P) within the window — are one of the stronger public signals. Market-wide, not limited to what Congress trades. Sorted by total dollars. Args: days: Look-back window, 1-365 (default 30). min_buyers: Minimum distinct insiders buying, 1-10 (default 2). limit: Rows to return, 1-100 (default 25). |
| member_track_recordA | How a member of Congress's disclosed stock buys (and sales) actually performed. Every buy is measured from the first close after disclosure at 30/60/90
days, against SPY over the same days. Args:
politician_id: From |
| leaderboardA | Members of Congress ranked by how often their stock buys beat SPY at 90 days. Only members with at least Args: min_trades: Minimum measured buys to qualify, 1-200 (default 10). limit: Rows to return, 1-50 (default 20). |
| late_filersA | Members of Congress who disclose trades after the STOCK Act deadline. A trade must be reported no later than 45 days after it happened. This ranks members by how many of their trades were disclosed later than that (trade date to filing date), with the share late, how many reports, the typical and longest delay, and a link to the worst filing. Late usually means one big catch-up report covering many trades; a multi-year "longest" can be a typo in the filing itself — the link lets a reader check. Late filing is a disclosure failure, not evidence of insider trading; say so if the user implies otherwise. Args: days: Only trades disclosed in the last N days, 1-3650; omit for all history. limit: Members to return, 1-50 (default 15). |
| signal_outcomesA | Does a label actually go up — and beat the market? Every score bucket at 30/60/90 days. InsiderTrack snapshots every ticker's score daily and fills in what the
price did 30, 60 and 90 days later. This is the scorecard: per label, how
many snapshots resolved, how many went up/down/flat, the win rate, and —
against SPY over the same trading days — the average excess return in
percentage points and how often the label beat SPY. A label that goes up
in a rising market but trails SPY has no edge; lead with the SPY numbers.
Scoring regimes change over time; results are per version (default: the
current one). Small Args: score_version: Restrict to one scoring regime; default is the current one. |
| model_deskA | The site's own AI model's morning brief and directional calls — and how they scored. Each morning the model reads the day's disclosures and makes 3-5 calls (ticker, bullish/bearish, 30/60/90-day horizon, confidence, reasoning). Calls are scored at their horizon against SPY exactly like members' trades. Treat it as a scorecard of the model, not a forecast. Args: history: Also return this many past calls, newest first, 0-100 (default 0). |
| fund_leaderboardA | Institutional investors (13F filers) ranked by how their position changes performed vs SPY. Each fund's new and increased positions are measured from the day the
13F became public (up to 45 days after quarter end — the date that
matters, not the quarter end) at 30/60/90 days against SPY. |
| fund_track_recordA | How one institutional investor's 13F position changes performed vs SPY. "Buys" are new and increased positions, "sales" trims and exits
(measured in the inverted sense: a good sale is one the stock then
fell). Every change is measured from the 13F's public date — a quarter-
end snapshot the fund filed up to 45 days later — so this is what a
person copying the filing could have done, not what the fund did.
Windows with Args:
holder_id: From |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| morning_brief | What changed this week: cluster buys, Congress buys, top scores, model calls. |
| due_diligence | A one-page note on one ticker: score and reasons, insiders, Congress, outcomes. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Today's Model Desk brief | The site's own model's morning brief and its calls for today, as text. |
| Data source health | How fresh each data source is (Senate, House, Form 4, 13F…) and recent errors. |
TDQS
Scored across 12 tools
Most tools have clearly distinct purposes, but there are list/detail pairs (leaderboard vs member_track_record, fund_leaderboard vs fund_track_record, top_signals vs ticker_signal) that could be momentarily confused. Descriptions mostly resolve the boundaries, so the set is usable without much misselection risk.
Tool names are consistently snake_case and largely follow an entity_or_feature + descriptor pattern. Minor deviations such as the verb-like `search` and the single-word `leaderboard` prevent a perfect score, but the convention is predictable.
Twelve tools is well within the appropriate range for a multi-source market intelligence server. Each tool maps to a meaningful analytical surface, and the count does not feel bloated or thin.
The surface covers congressional trades, member performance, 13F fund performance, corporate insider clusters, ticker signals, signal outcomes, late filings, and model calls. However, `search` explicitly supports Fed officials but no other tool consumes a Fed official id, creating a dead end; raw corporate insider trades and some drill-down detail are also absent.