trades

Stock trades of U.S. Congress & executive-branch officials, with conflict flags. Read-only.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
82%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,047Tokens (tool definitions)
~1.2 KBTypical response size
Moderate attention impact (0.82% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "trades": {
      "url": "https://potomacledger.com/mcp"
    }
  }
}

Remote endpoints

https://potomacledger.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
🟒search_trades(person, ticker, branch, role, type, ...)

Search disclosed trades by person, ticker, branch, role (Senate/House/title), buy/sell, conflict flag, minimum dollar amount, and date window. Returns newest first.

Input Schema

{
  "type": "object",
  "properties": {
    "person": {
      "type": "string",
      "description": "Member or official name (substring, case-insensitive)"
    },
    "ticker": {
      "type": "string",
      "description": "Stock ticker, e.g. NVDA (case-insensitive)"
    },
    "branch": {
      "type": "string",
      "description": "Either \"congress\" or \"executive\" (case-insensitive)"
    },
    "role": {
      "type": "string",
      "description": "Chamber for Congress (Senate / House) or title substring for executive (President / Secretary / Administrator…), case-insensitive"
    },
    "type": {
      "type": "string",
      "description": "Transaction direction: \"buy\", \"sell\" (includes partial sales), or \"exchange\". Case-insensitive."
    },
    "conflict": {
      "type": "boolean",
      "description": "Only trades flagged as a potential conflict"
    },
    "minAmount": {
      "type": "number",
      "description": "Minimum upper-bound of the disclosed dollar range"
    },
    "since": {
      "type": "string",
      "description": "ISO date lower bound (disclosure/trade date)"
    },
    "until": {
      "type": "string",
      "description": "ISO date upper bound"
    },
    "limit": {
      "type": "number",
      "description": "Max results per page (default 100, capped 500)"
    },
    "offset": {
      "type": "number",
      "description": "Skip the first N matching rows β€” pair with limit to page through large result sets"
    }
  }
}
🟒get_person_trades(name, limit)

All disclosed trades for a named member of Congress or executive-branch official.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "limit": {
      "type": "number"
    }
  },
  "required": [
    "name"
  ]
}
🟒get_ticker_activity(ticker, limit)

Which officials have disclosed trades in a given ticker.

Input Schema

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string"
    },
    "limit": {
      "type": "number"
    }
  },
  "required": [
    "ticker"
  ]
}
🟒list_recent_trades(branch, role, since, until, type, ...)

The most recently disclosed trades β€” newest first. Accepts the same branch/role/since/until/type filters as search_trades so an agent can scope to a chamber or window in one call.

Input Schema

{
  "type": "object",
  "properties": {
    "branch": {
      "type": "string",
      "description": "Either \"congress\" or \"executive\" (case-insensitive)"
    },
    "role": {
      "type": "string",
      "description": "Chamber (Senate/House) or title substring"
    },
    "since": {
      "type": "string",
      "description": "ISO date lower bound"
    },
    "until": {
      "type": "string",
      "description": "ISO date upper bound"
    },
    "type": {
      "type": "string",
      "description": "Direction: \"buy\", \"sell\", or \"exchange\" (case-insensitive)"
    },
    "limit": {
      "type": "number"
    }
  }
}
🟒list_conflicts(branch, role, since, until, limit)

Trades flagged as a potential conflict (company sector overlaps the official's committee or agency). Accepts branch/role/since/until filters.

Input Schema

{
  "type": "object",
  "properties": {
    "branch": {
      "type": "string",
      "description": "Either \"congress\" or \"executive\" (case-insensitive)"
    },
    "role": {
      "type": "string"
    },
    "since": {
      "type": "string"
    },
    "until": {
      "type": "string"
    },
    "limit": {
      "type": "number"
    }
  }
}
🟒aggregates(branch, role, since, until, type, ...)

Summary stats over the filtered set: totals, branch split, most-active officials, top tickers bought/sold (per individual stock), top sectors bought/sold, potential conflict count, date range. Accepts the same branch/role/since/until/type/ticker filters as search β€” pass branch=congress + role=Senate + since=YYYY-MM-DD to scope. Use this BEFORE paginating search_trades when you only need ranked counts.

Input Schema

{
  "type": "object",
  "properties": {
    "branch": {
      "type": "string",
      "description": "Either \"congress\" or \"executive\" (case-insensitive)"
    },
    "role": {
      "type": "string",
      "description": "Chamber (Senate/House) or title substring"
    },
    "since": {
      "type": "string"
    },
    "until": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "description": "Direction: \"buy\", \"sell\", or \"exchange\" (case-insensitive)"
    },
    "ticker": {
      "type": "string"
    }
  }
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools