# Capitol Trades API

> Capitol Trades provides disclosed congressional stock trades as a workflow and API.

Capitol Trades returns a member of Congress’s disclosed trades through Get politician trades, using a politician’s name and optional filters. List recent trades returns newly disclosed congressional trades, optionally filtered by company, party, chamber, or trade type.

- Page: https://fous.com/tools/capitol-trades
- Handle: `@capitol-trades`
- Category: [Finance](https://fous.com/tools/category/finance)
- Source website: https://capitoltrades.com
- Last verified: Sep 29, 2026

## Methods

### Get politician trades

Operation `get_politician_trades`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

See a member of Congress’s disclosed trades from a chosen date, newest trade first. Capitol Trades provides up to three years of history; prices and other details may be unavailable for some trades.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `politician` | string | yes | `"Mitch McConnell"` | Member of Congress to find by name, for example Nancy Pelosi. |
| `start_date` | string | no | `"2026-01-01"` | Earliest trade date, for example 2026-01-01. Defaults to 12 months ago. |
| `trade_type` | string | no | `"sell"` | Trade direction to include, for example buy. |
| `max_results` | integer | no | `3` | Maximum trades to return, for example 50. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "politician"
  ],
  "properties": {
    "politician": {
      "type": "string",
      "description": "Member of Congress to find by name, for example Nancy Pelosi.",
      "examples": [
        "Mitch McConnell",
        "Nancy Pelosi"
      ]
    },
    "start_date": {
      "type": "string",
      "format": "date",
      "description": "Earliest trade date, for example 2026-01-01. Defaults to 12 months ago.",
      "examples": [
        "2026-01-01",
        "2026-09-01"
      ]
    },
    "trade_type": {
      "enum": [
        "any",
        "buy",
        "sell"
      ],
      "type": "string",
      "default": "any",
      "description": "Trade direction to include, for example buy.",
      "examples": [
        "sell"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 50,
      "maximum": 200,
      "minimum": 1,
      "description": "Maximum trades to return, for example 50.",
      "x-fous-developer": true,
      "examples": [
        3,
        2
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "politician": "Mitch McConnell",
      "start_date": "2026-01-01",
      "trade_type": "sell",
      "max_results": 3
    },
    {
      "politician": "Nancy Pelosi",
      "max_results": 3
    },
    {
      "politician": "Nancy Pelosi",
      "start_date": "2026-09-01",
      "max_results": 2
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `party` | string or null | `"Republican"` |  |
| `state` | string or null | `"Kentucky"` |  |
| `trades` | array |  |  |
| `trades[].owner` | string or null | `"spouse"` |  |
| `trades[].ticker` | string or null | `"BE:US"` |  |
| `trades[].asset_type` | string or null | `"Stock"` |  |
| `trades[].trade_date` | string | `"2026-07-28"` |  |
| `trades[].trade_link` | string or null | `"https://www.capitoltrades.com/trades/20003802222"` |  |
| `trades[].trade_type` | string or null | `"buy"` |  |
| `trades[].amount_range` | string or null | `"500K–1M"` |  |
| `trades[].amount_low_usd` | number or null | `500000` | Amount in USD. |
| `trades[].amount_high_usd` | number or null | `1000000` | Amount in USD. |
| `trades[].disclosure_date` | string | `"2026-08-24"` |  |
| `trades[].price_per_share_usd` | number or null | `166.84` | Amount in USD. |
| `trades[].days_until_disclosed` | integer | `27` |  |
| `trades[].company_or_asset_name` | string or null | `"Bloom Energy Corp"` |  |
| `chamber` | string or null | `"Senate"` |  |
| `politician` | string | `"Mitch McConnell"` |  |

**Example input**

```json
{
  "politician": "Mitch McConnell",
  "start_date": "2026-01-01",
  "trade_type": "sell",
  "max_results": 3
}
```

**Example output**

```json
{
  "party": "Republican",
  "state": "Kentucky",
  "trades": [],
  "chamber": "Senate",
  "politician": "Mitch McConnell"
}
```

### List recent trades

Operation `list_recent_trades`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

List the newest disclosed congressional stock trades, optionally filtered by company, party, chamber, and trade type. Capitol Trades displays up to three years of history.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `party` | string | no | `"democrat"` | Political party, such as democrat. |
| `chamber` | string | no | `"house"` | Congress chamber, such as senate. |
| `company` | string | no | `"Microsoft"` | Company name or ticker, such as Microsoft or MSFT. |
| `trade_type` | string | no | `"buy"` | Transaction type, such as buy. |
| `max_results` | integer | no | `25` | Maximum number of trades to return, such as 25. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "party": {
      "enum": [
        "any",
        "democrat",
        "republican"
      ],
      "type": "string",
      "default": "any",
      "description": "Political party, such as democrat.",
      "examples": [
        "democrat",
        "republican"
      ]
    },
    "chamber": {
      "enum": [
        "any",
        "house",
        "senate"
      ],
      "type": "string",
      "default": "any",
      "description": "Congress chamber, such as senate.",
      "examples": [
        "house",
        "senate"
      ]
    },
    "company": {
      "type": "string",
      "description": "Company name or ticker, such as Microsoft or MSFT.",
      "examples": [
        "Microsoft",
        "zzznosuchtickerxyz",
        "MSFT"
      ]
    },
    "trade_type": {
      "enum": [
        "any",
        "buy",
        "sell"
      ],
      "type": "string",
      "default": "any",
      "description": "Transaction type, such as buy.",
      "examples": [
        "buy",
        "sell"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of trades to return, such as 25.",
      "x-fous-developer": true,
      "examples": [
        25,
        100
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "max_results": 25
    },
    {
      "party": "democrat",
      "chamber": "house",
      "company": "Microsoft",
      "trade_type": "buy",
      "max_results": 25
    },
    {
      "company": "zzznosuchtickerxyz",
      "max_results": 25
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `trades` | array |  |  |
| `trades[].party` | string or null | `"Republican"` |  |
| `trades[].state` | string or null | `"KY"` |  |
| `trades[].ticker` | string or null | `"EA:US"` |  |
| `trades[].chamber` | string or null | `"House"` |  |
| `trades[].currency` | string | `"USD"` |  |
| `trades[].trade_date` | string or null | `"2026-08-05"` |  |
| `trades[].trade_link` | string | `"https://www.capitoltrades.com/trades/20003802930"` |  |
| `trades[].trade_type` | string or null | `"Sell"` |  |
| `trades[].amount_range` | string or null | `"1K–15K"` |  |
| `trades[].amount_low_usd` | number or null | `1000` |  |
| `trades[].amount_high_usd` | number or null | `15000` |  |
| `trades[].disclosure_date` | string or null | `"2026-09-28"` |  |
| `trades[].politician_name` | string or null | `"Hal Rogers"` |  |
| `trades[].company_or_asset_name` | string or null | `"Electronic Arts Inc"` |  |

**Example input**

```json
{
  "max_results": 25
}
```

**Example output**

```json
{
  "trades": [
    {
      "party": "Republican",
      "state": "KY",
      "ticker": "EA:US",
      "chamber": "House",
      "currency": "USD",
      "trade_date": "2026-08-05",
      "trade_link": "https://www.capitoltrades.com/trades/20003802930",
      "trade_type": "Sell",
      "amount_range": "1K–15K",
      "amount_low_usd": 1000,
      "amount_high_usd": 15000,
      "disclosure_date": "2026-09-28",
      "politician_name": "Hal Rogers",
      "company_or_asset_name": "Electronic Arts Inc"
    },
    {
      "party": "Republican",
      "state": "OK",
      "ticker": "AAPL:US",
      "chamber": "House",
      "currency": "USD",
      "trade_date": "2026-09-08",
      "trade_link": "https://www.capitoltrades.com/trades/20003802830",
      "trade_type": "Sell",
      "amount_range": "1K–15K",
      "amount_low_usd": 1000,
      "amount_high_usd": 15000,
      "disclosure_date": "2026-09-28",
      "politician_name": "Kevin Hern",
      "company_or_asset_name": "Apple Inc"
    },
    {
      "party": "Republican",
      "state": "OK",
      "ticker": "AAPL:US",
      "chamber": "House",
      "currency": "USD",
      "trade_date": "2026-09-08",
      "trade_link": "https://www.capitoltrades.com/trades/20003802831",
      "trade_type": "Sell",
      "amount_range": "1K–15K",
      "amount_low_usd": 1000,
      "amount_high_usd": 15000,
      "disclosure_date": "2026-09-28",
      "politician_name": "Kevin Hern",
      "company_or_asset_name": "Apple Inc"
    }
  ]
}
```

## Quick start

Replace `YOUR_API_KEY` with a Fous API key. To create one, open Developers at the bottom of Fous Studio, turn on Developer mode, then go to API keys (https://app.fous.com/keys). Change the values in `input` to run the same tool on new data.

```bash
curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 180 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@capitol-trades",
  "visibility": "public",
  "operation": "get_politician_trades",
  "version": 1,
  "input": {
    "politician": "Mitch McConnell",
    "start_date": "2026-01-01",
    "trade_type": "sell",
    "max_results": 3
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
import json
import urllib.error
import urllib.request

api_key = "YOUR_API_KEY"

body = json.loads("{\n  \"api\": \"@capitol-trades\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_politician_trades\",\n  \"version\": 1,\n  \"input\": {\n    \"politician\": \"Mitch McConnell\",\n    \"start_date\": \"2026-01-01\",\n    \"trade_type\": \"sell\",\n    \"max_results\": 3\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=180) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
const apiKey = "YOUR_API_KEY";

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(180_000),
  body: JSON.stringify({
  "api": "@capitol-trades",
  "visibility": "public",
  "operation": "get_politician_trades",
  "version": 1,
  "input": {
    "politician": "Mitch McConnell",
    "start_date": "2026-01-01",
    "trade_type": "sell",
    "max_results": 3
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

## Use from an AI assistant

Connect this tool to Claude Code, Claude Desktop, Cursor, VS Code, Codex and any MCP client as its own MCP server. Each method is a typed tool whose arguments are the method’s input.

- Server URL: `https://api.fous.com/mcp/tools/capitol-trades`
- Authorization: `Authorization: Bearer <Fous API key>`

**Tools**

- `get_politician_trades`: Get politician trades. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `list_recent_trades`: List recent trades. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `fous_get_run`: the result of a run that was still going, by its `request_id`. Free.

Claude Code:

```bash
claude mcp add --scope user --transport http fous-capitol-trades https://api.fous.com/mcp/tools/capitol-trades --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"
```

To give the assistant every tool, connect `https://api.fous.com/mcp`: it finds one with `fous_search_tools` and runs it with `fous_run_tool`. Setup for other clients: https://fous.com/llms-full.txt.

## Use cases

- Review a member of Congress’s disclosed trades.
- Track recent congressional trades by company or ticker.
- Compare disclosed trades by political party or chamber.
- Filter congressional trades by transaction type.
- Review trade dates, disclosure dates, and reported amount ranges.

## FAQ

### Can I run it with my own inputs?

Yes. Change the inputs in Studio and press Run, or send new inputs from your code, or ask a connected AI assistant.

### Can I call this Capitol Trades tool as an API?

Yes. Send a POST request to /v1/query with your Fous API key and the inputs, and get JSON back.

### How much does it cost?

Each completed run costs 1 credit. Failed runs without a completed receipt are free; completed work can remain charged if delivery is interrupted. With pay as you go, a credit costs 1¢. Monthly plans cost less per credit.

### Do I need a Capitol Trades account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from capitoltrades.com when you run it. Some results are reused for up to 24 hours, and results that use your account or key are never reused. It was last verified on Sep 29, 2026.

### What trades has a member of Congress disclosed?

Get politician trades returns disclosed trades for a member of Congress identified by name.

### What are the newest disclosed congressional trades?

List recent trades returns the newest disclosed congressional trades, with optional filters.

### When was a trade disclosed?

Get politician trades and List recent trades return disclosure dates.

## Related

- [SEC EDGAR API](https://fous.com/tools/sec-edgar.md): SEC EDGAR provides filings, annual and quarterly financials, exact-phrase matches, up to 200 insider trades, and quarterly 13F manager holdings; older filings appear when available.
- [Finviz API](https://fous.com/tools/finviz.md): Finviz provides delayed US stock snapshots, screening by company and trading criteria, and up to 200 recent public executive and director Form 4 trades.
- [TradingView API](https://fous.com/tools/tradingview.md): TradingView provides charts, markets, and technical analysis, with changing buy, sell, or neutral signals and stock screening; quotes may be delayed.
- [CompaniesMarketCap API](https://fous.com/tools/companiesmarketcap.md): CompaniesMarketCap ranks public companies worldwide or by country and industry across size and financial measures, and provides company figures with market-cap history for completed years.
- [Macrotrends API](https://fous.com/tools/macrotrends.md): Macrotrends provides long-term financial and economic charts, company metric histories, and yearly commodity and index prices; current-year prices may be incomplete.
- [Congress.gov API](https://fous.com/tools/congress-gov.md): Congress.gov returns federal bills and resolutions matching topic, Congress, status, or chamber, and provides an individual bill’s status, summary, titles, actions, and related bills; summaries may be unavailable.
- [CNBC API](https://fous.com/tools/cnbc.md): CNBC provides business news, page-view headlines, searchable CNBC articles excluding videos, wire stories and press releases, and potentially delayed major index and U.S. futures quotes.
- [Stock Analysis API](https://fous.com/tools/stock-analysis.md): Stock Analysis returns free-period company statements, statistics current as of its displayed date, typically top-25 ETF holdings, and US IPOs since 2019 with potentially missing prices or returns.
- [All Finance tools](https://fous.com/tools/category/finance)
