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