Talandor
Rapport de connecteur

Openfec-mcp-server

https://openfec.caseyjhand.com/mcp

Registre officiel

Registre officiel · io.github.cyanheads/openfec-mcp-server · Espace de l’éditeur : io.github.cyanheads

Serveur vérifié aujourd’hui à 21:35 UTC

Catalogue affiché : dernière observation complète du 22 septembre

12 outils publics observés. Outils non exécutés. Ces outils viennent de l’observation de catalogue ci-dessus, pas du dernier contrôle de disponibilité.

Serveur accessible

Qu’a observé Talandor ?

Le serveur a répondu

Ajoutez l’adresse à votre assistant à l’aide de la configuration ci-dessous. Un Watch peut vous prévenir si ce catalogue public change.

Contrôle public du protocole et de tools/list, pas une validation fonctionnelle.

https://openfec.caseyjhand.com/mcp
DisponibilitéServeur accessiblemesuré
Outils12 outils publics observésmesuré
Test de l’assistantNon testé par Talandorinconnu
Changement récentopenfec_get_committee_totals changed its output schemaHistorique

Configurer votre assistant · Détails du contrôle

Configuration pour votre assistant

Talandor contrôle le serveur ; il ne le connecte pas à votre assistant.

Choisissez votre assistant, puis copiez la configuration affichée. L’authentification se fait chez le fournisseur du connecteur, jamais dans Talandor.

    Ouvrir le guide officiel (nouvel onglet)
    Détails du contrôle

    Ce qui a changé

    Public contract stable since
    Last check · No semantic contract change since the previous complete snapshot.
    Info
    openfec_get_committee_totals changed its output schema
    Historical change · warning · medium confidence · openfec_get_committee_totals · Rule: output-schema-changed
    Warning
    openfec_lookup_calendar changed its output schema
    Historical change · warning · medium confidence · openfec_lookup_calendar · Rule: output-schema-changed
    Warning
    openfec_lookup_elections changed its output schema
    Historical change · warning · medium confidence · openfec_lookup_elections · Rule: output-schema-changed
    Warning
    openfec_search_candidates changed its output schema
    Historical change · warning · medium confidence · openfec_search_candidates · Rule: output-schema-changed
    Warning
    openfec_search_committees changed its output schema
    Historical change · warning · medium confidence · openfec_search_committees · Rule: output-schema-changed
    Warning
    openfec_search_coordinated_expenditures changed its output schema
    Historical change · warning · medium confidence · openfec_search_coordinated_expenditures · Rule: output-schema-changed
    Warning
    openfec_search_filings changed its output schema
    Historical change · warning · medium confidence · openfec_search_filings · Rule: output-schema-changed
    Warning
    openfec_search_legal changed its input schema
    Historical change · warning · medium confidence · openfec_search_legal · Rule: input-schema-changed
    Warning
    openfec_search_legal changed its output schema
    Historical change · warning · medium confidence · openfec_search_legal · Rule: output-schema-changed
    Warning

    A Watch would alert only if this change may affect uses of the selected client that depend on the changed tools.

    Cette frise publique montre le dernier contrôle, les 24 dernières heures et le dernier changement important. Watch conserverait 30 jours.

    Voir les changements précédents
    openfec_search_contributions added an output field count_is_approximate
    Historical change · info · high confidence · openfec_search_contributions · Rule: output-field-added
    Info
    openfec_search_disbursements added an output field count_is_approximate
    Historical change · info · high confidence · openfec_search_disbursements · Rule: output-field-added
    Info
    openfec_search_expenditures added an output field count_is_approximate
    Historical change · info · high confidence · openfec_search_expenditures · Rule: output-field-added
    Info

    Les notes ci-dessus concernent ce connecteur.

    Contenu fourni par le serveur. Les noms, descriptions et schémas ci-dessous sont copiés du serveur MCP. Ils peuvent être dans une autre langue. Talandor ne les traduit pas et ne les vérifie pas.
    Outils et exposition déclarée

    Les annotations du serveur sont des déclarations, pas un comportement vérifié.

    Afficher 12 définitions d’outils fournies par le serveur sur 12
    openfec_get_committee_totals
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Get Committee Totals
    Description du serveur (copiée ; langue non vérifiée)
    Get pre-aggregated committee financial totals — receipts, disbursements, cash on hand, debts, and the itemized/unitemized breakdown — without paginating Schedule A. Use mode "single" (the default) with a committee_id for one committee's totals, one row per two-year cycle it has filed. Use mode "by_entity_type" to rank or screen every committee of one type (presidential, pac, party, pac-party, house-senate, ie-only) by state, designation, or a receipts/disbursements threshold.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "mode": {
          "enum": [
            "single",
            "by_entity_type"
          ],
          "type": "string",
          "default": "single",
          "description": "Query mode. \"single\" returns one committee's totals, one row per cycle. \"by_entity_type\" returns a page of committees of one entity type, filterable and sortable across committees."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed). Read pagination.pages in the response to see how many pages exist — a long-running committee can have more cycles than one page holds."
        },
        "sort": {
          "enum": [
            "cycle",
            "-cycle",
            "receipts",
            "-receipts",
            "disbursements",
            "-disbursements",
            "last_cash_on_hand_end_period",
            "-last_cash_on_hand_end_period"
          ],
          "type": "string",
          "description": "Sort field. A \"-\" prefix sorts descending: \"-receipts\" ranks the biggest fundraisers first in by_entity_type mode, \"-cycle\" puts a committee's most recent cycle first in single mode."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (e.g., 2024). Even years only. Omit in single mode to get every cycle the committee has filed."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "entity_type": {
          "enum": [
            "presidential",
            "pac",
            "party",
            "pac-party",
            "house-senate",
            "ie-only"
          ],
          "type": "string",
          "description": "Committee entity type for the grouped search. Required in by_entity_type mode. house-senate covers both chambers as one group; ie-only is committees that report only independent expenditures."
        },
        "committee_id": {
          "type": "string",
          "description": "Committee ID (e.g., C00703975). Get IDs from openfec_search_committees results. Required in single mode; in by_entity_type mode it narrows the grouped search to that one committee."
        },
        "max_receipts": {
          "type": "number",
          "description": "Maximum total receipts in dollars. by_entity_type mode only."
        },
        "min_receipts": {
          "type": "number",
          "description": "Minimum total receipts in dollars. by_entity_type mode only."
        },
        "committee_type": {
          "type": "string",
          "description": "Committee type code — H (House), S (Senate), P (Presidential), O (Super PAC), N/Q (PAC), X/Y (party). by_entity_type mode only."
        },
        "committee_state": {
          "type": "string",
          "description": "Two-letter state code of the committee. by_entity_type mode only."
        },
        "max_disbursements": {
          "type": "number",
          "description": "Maximum total disbursements in dollars. by_entity_type mode only."
        },
        "min_disbursements": {
          "type": "number",
          "description": "Minimum total disbursements in dollars. by_entity_type mode only."
        },
        "organization_type": {
          "type": "string",
          "description": "Sponsoring organization type — C (corporation), L (labor), M (membership), T (trade), V (cooperative), W (corporation without capital stock). by_entity_type mode only."
        },
        "committee_designation": {
          "type": "string",
          "description": "Committee designation — A (authorized), B (lobbyist PAC), D (leadership PAC), J (joint fundraiser), P (principal campaign), U (unauthorized). by_entity_type mode only."
        }
      },
      "additionalProperties": false
    }
    openfec_get_legal_document
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Get Legal Document
    Description du serveur (copiée ; langue non vérifiée)
    Fetch one FEC legal document in full — advisory opinion, MUR, ADR, administrative fine, or statute — by its type and number. openfec_search_legal replaces each result's documents array with a count and category summary and cuts every commission vote down to a date and a 200-character action; this returns the record untouched. doc_type is the plural form of the document_type discriminator on a search result (advisory_opinion becomes advisory_opinions, mur becomes murs, adr becomes adrs, admin_fine becomes admin_fines, statute becomes statutes), and no is that result's no field — every document type carries it, and advisory opinions repeat it as ao_no.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "doc_type",
        "no"
      ],
      "properties": {
        "no": {
          "type": "string",
          "minLength": 1,
          "description": "Document number, copied from the no field of the matching openfec_search_legal result. Advisory opinions are year-serial (e.g. \"2024-01\", also repeated as ao_no); murs, adrs, and admin_fines are digit strings (e.g. \"8363\"); statutes are U.S. Code section numbers (e.g. \"30123\")."
        },
        "doc_type": {
          "enum": [
            "advisory_opinions",
            "murs",
            "adrs",
            "admin_fines",
            "statutes"
          ],
          "type": "string",
          "description": "Legal document type, always plural. openfec_search_legal reports the singular form in each result document_type — advisory_opinion, mur, adr, admin_fine, statute — so add an \"s\" to get the value this field wants."
        }
      },
      "additionalProperties": false
    }
    openfec_lookup_calendar
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Lookup Calendar
    Description du serveur (copiée ; langue non vérifiée)
    Look up FEC calendar events, filing deadlines, and election dates. Use to find upcoming filing windows for a committee, locate when a federal election occurred, or scope FEC events by date range and category.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "mode": {
          "enum": [
            "events",
            "filing_deadlines",
            "election_dates"
          ],
          "type": "string",
          "default": "events",
          "description": "events = FEC calendar events. filing_deadlines = report due dates. election_dates = upcoming/past elections."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed). Default 1."
        },
        "state": {
          "type": "string",
          "description": "Two-letter state code (e.g., AZ, CA). Primarily for election_dates mode."
        },
        "office": {
          "enum": [
            "H",
            "S",
            "P"
          ],
          "type": "string",
          "description": "Office sought (H=House, S=Senate, P=President). Election dates mode."
        },
        "category": {
          "enum": [
            "20",
            "21",
            "22",
            "23",
            "24",
            "25",
            "26",
            "27",
            "28",
            "29",
            "32",
            "33",
            "34",
            "36",
            "37",
            "38",
            "39",
            "40"
          ],
          "type": "string",
          "description": "Calendar category ID. 20=Commission Meetings, 21=Reporting Deadlines, 22=Conferences and Outreach, 23=AOs and Rules, 24=Other, 25=Quarterly, 26=Monthly, 27=Pre and Post-Elections, 28=EC Periods, 29=IE Periods, 32=Open Meetings, 33=Conferences, 34=Roundtables, 36=Election Dates, 37=Federal Holidays, 38=FEA Periods, 39=Executive Sessions, 40=Public Hearings. Events mode only."
        },
        "max_date": {
          "type": "string",
          "description": "Latest date (YYYY-MM-DD)."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest date (YYYY-MM-DD)."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page. Default 20, max 100."
        },
        "description": {
          "type": "string",
          "description": "Full-text event description search. Events mode."
        },
        "report_type": {
          "type": "string",
          "description": "Report type code (e.g. \"Q1\", \"Q2\"). Filing deadlines mode only."
        },
        "report_year": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "Report year. Filing deadlines mode."
        },
        "election_year": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "Election year. Election dates mode."
        }
      },
      "additionalProperties": false
    }
    openfec_lookup_elections
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Lookup Elections
    Description du serveur (copiée ; langue non vérifiée)
    Look up federal election races and candidate financial summaries. Find who's running in a race with fundraising totals, or get an aggregate race summary.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "cycle",
        "office"
      ],
      "properties": {
        "zip": {
          "type": "string",
          "description": "ZIP code — finds races covering this ZIP. Search mode only."
        },
        "mode": {
          "enum": [
            "search",
            "summary"
          ],
          "type": "string",
          "default": "search",
          "description": "search = candidates in a race with financial totals. summary = aggregate race financial summary."
        },
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed). Search mode only; explicit page is rejected in summary mode. Defaults to 1 for search."
        },
        "cycle": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "Election cycle year (even years only, e.g. 2024)."
        },
        "state": {
          "type": "string",
          "description": "Two-letter US state code (e.g., AZ, CA). Required for senate/house unless zip is provided."
        },
        "office": {
          "enum": [
            "H",
            "S",
            "P"
          ],
          "type": "string",
          "description": "Office sought: H=House, S=Senate, P=President."
        },
        "district": {
          "type": "string",
          "description": "Two-digit district number (e.g. \"07\"). Required for house unless zip is provided."
        },
        "per_page": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page. Search mode only; defaults to 20."
        },
        "election_full": {
          "type": "boolean",
          "description": "Expand to full election period (4yr president, 6yr senate, 2yr house). Defaults to true when omitted; a ZIP-scoped search rejects it, since that endpoint has no such parameter. Carries no schema default, so an explicit value is distinguishable from an omission."
        }
      },
      "additionalProperties": false
    }
    openfec_search_candidates
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Candidates
    Description du serveur (copiée ; langue non vérifiée)
    Find federal candidates by name, state, office, party, or cycle. Retrieve a specific candidate by FEC ID with financial totals. Candidate IDs start with H (House), S (Senate), or P (President) followed by exactly eight letters or digits.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Search-results page number (1-indexed). Defaults to 1 on the search path."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (even year, e.g., 2024)."
        },
        "party": {
          "type": "string",
          "description": "Three-letter party code (e.g., DEM, REP, LIB)."
        },
        "query": {
          "type": "string",
          "description": "Full-text candidate name search."
        },
        "state": {
          "type": "string",
          "description": "Two-letter US state code (e.g., AZ, CA)."
        },
        "office": {
          "enum": [
            "H",
            "S",
            "P"
          ],
          "type": "string",
          "description": "Filter by office: H=House, S=Senate, P=President."
        },
        "district": {
          "type": "string",
          "description": "Two-digit district number for House candidates."
        },
        "per_page": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Search results per page. Defaults to 20 on the search path."
        },
        "candidate_id": {
          "type": "string",
          "description": "FEC candidate ID: H, S, or P followed by exactly eight letters or digits (e.g., P00003392, H2CO07170). Get IDs from openfec_search_candidates results. When provided, returns a single candidate with full detail."
        },
        "election_year": {
          "type": "number",
          "description": "Specific election year the candidate ran in."
        },
        "include_totals": {
          "type": "boolean",
          "description": "Include financial totals (receipts, disbursements, cash on hand). Defaults to true when fetching by candidate_id."
        },
        "candidate_status": {
          "enum": [
            "C",
            "F",
            "N",
            "P"
          ],
          "type": "string",
          "description": "Candidate status: C=present, F=future, N=not yet, P=prior."
        },
        "has_raised_funds": {
          "type": "boolean",
          "description": "Only candidates whose committee has received receipts."
        },
        "incumbent_challenge": {
          "enum": [
            "I",
            "C",
            "O"
          ],
          "type": "string",
          "description": "Incumbent status: I=incumbent, C=challenger, O=open seat."
        }
      },
      "additionalProperties": false
    }
    openfec_search_committees
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Committees
    Description du serveur (copiée ; langue non vérifiée)
    Find political committees (campaign, PAC, Super PAC, party) by name, type, candidate affiliation, or state. Retrieve a specific committee by FEC ID. Committee IDs start with C followed by exactly eight digits (e.g., C00358796).
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Search-results page number (1-indexed). Defaults to 1 on the search path."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (even year)."
        },
        "party": {
          "type": "string",
          "description": "Three-letter party code (e.g., DEM, REP)."
        },
        "query": {
          "type": "string",
          "description": "Full-text committee name search."
        },
        "state": {
          "type": "string",
          "description": "Two-letter state code."
        },
        "per_page": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Search results per page. Defaults to 20 on the search path."
        },
        "designation": {
          "type": "string",
          "description": "Committee designation. A (authorized), B (lobbyist PAC), D (leadership PAC), J (joint fundraiser), P (principal campaign), U (unauthorized)."
        },
        "candidate_id": {
          "type": "string",
          "description": "Find committees linked to this candidate (authorized, leadership, joint fundraising). Get IDs from openfec_search_candidates results."
        },
        "committee_id": {
          "type": "string",
          "description": "FEC committee ID: 'C' followed by exactly eight digits (e.g., C00358796). Get IDs from openfec_search_committees results. Returns a single committee with full detail."
        },
        "committee_type": {
          "type": "string",
          "description": "Committee type code. Common: H (House), S (Senate), P (Presidential), O (Super PAC), N (PAC nonqualified), Q (PAC qualified), X (Party nonqualified), Y (Party qualified)."
        },
        "treasurer_name": {
          "type": "string",
          "description": "Full-text treasurer name search."
        }
      },
      "additionalProperties": false
    }
    openfec_search_contributions
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Contributions
    Description du serveur (copiée ; langue non vérifiée)
    Search itemized individual contributions (Schedule A) or get aggregate breakdowns by size, state, employer, or occupation. Use to answer "who is funding this committee?" Itemized mode requires a committee_id. Aggregate by_size/by_state can use candidate_id instead.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "mode": {
          "enum": [
            "itemized",
            "by_size",
            "by_state",
            "by_employer",
            "by_occupation"
          ],
          "type": "string",
          "default": "itemized",
          "description": "Query mode. \"itemized\" returns individual contribution records (keyset pagination). \"by_size\" aggregates by contribution size bucket. \"by_state\" aggregates by contributor state. \"by_employer\" aggregates by employer. \"by_occupation\" aggregates by occupation."
        },
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed) for aggregate modes. Explicit page is rejected in itemized mode, which paginates with cursor. Defaults to 1 for aggregates."
        },
        "sort": {
          "enum": [
            "contribution_receipt_date",
            "-contribution_receipt_date",
            "contribution_receipt_amount",
            "-contribution_receipt_amount"
          ],
          "type": "string",
          "description": "Sort field. A \"-\" prefix sorts descending: use \"-contribution_receipt_amount\" for the largest receipts first, since the ascending form leads with the most negative rows (refunds, reattributions, redesignations). Itemized only; OpenFEC sorts by \"-contribution_receipt_date\" when omitted."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (e.g., 2024). Even years only. Defaults to current cycle for itemized mode."
        },
        "cursor": {
          "type": "string",
          "description": "Opaque pagination cursor from a previous response of this tool. Itemized mode only (keyset pagination). Valid only for an otherwise-identical call — changing any other argument, including sort, rejects the cursor; omit it to start over."
        },
        "max_date": {
          "type": "string",
          "description": "Latest contribution date (YYYY-MM-DD). Itemized only."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest contribution date (YYYY-MM-DD). Itemized only."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "max_amount": {
          "type": "number",
          "description": "Maximum contribution amount in dollars. Itemized only."
        },
        "min_amount": {
          "type": "number",
          "description": "Minimum contribution amount in dollars. Itemized only."
        },
        "candidate_id": {
          "type": "string",
          "description": "Candidate ID (e.g., P00003392). Get IDs from openfec_search_candidates results. Enables by_size and by_state aggregates without a committee_id."
        },
        "committee_id": {
          "type": "string",
          "description": "Receiving committee ID (e.g., C00703975). Get IDs from openfec_search_committees results."
        },
        "is_individual": {
          "type": "boolean",
          "description": "Only individual contributions (excludes committee-to-committee transfers). Itemized only."
        },
        "contributor_zip": {
          "type": "string",
          "description": "ZIP code prefix (starts-with match). Itemized only."
        },
        "contributor_city": {
          "type": "string",
          "description": "Contributor city. Itemized only."
        },
        "contributor_name": {
          "type": "string",
          "description": "Full-text donor name search. Itemized only."
        },
        "contributor_state": {
          "type": "string",
          "description": "Two-letter state code (e.g., CA). Itemized only."
        },
        "contributor_employer": {
          "type": "string",
          "description": "Full-text employer search. Itemized only."
        },
        "contributor_occupation": {
          "type": "string",
          "description": "Full-text occupation search. Itemized only."
        }
      },
      "additionalProperties": false
    }
    openfec_search_coordinated_expenditures
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Coordinated Expenditures
    Description du serveur (copiée ; langue non vérifiée)
    Search coordinated party expenditures (Schedule F) — spending a party committee makes on behalf of a candidate it supports, in coordination with that campaign. Distinct from independent expenditures (openfec_search_expenditures), which cannot be coordinated with the candidate, and from direct contributions: coordinated expenditures carry their own statutory limits and can run into tens of millions per party in a presidential cycle. Scope with a spending committee_id, a benefiting candidate_id, or a cycle; unscoped queries span all years.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed). Read pagination.pages in the response to see how many pages exist."
        },
        "sort": {
          "enum": [
            "expenditure_date",
            "-expenditure_date",
            "expenditure_amount",
            "-expenditure_amount"
          ],
          "type": "string",
          "description": "Sort field. A \"-\" prefix sorts descending: use \"-expenditure_amount\" for the largest coordinated spending first, since the ascending form leads with the most negative rows (corrections and voided entries). OpenFEC sorts by \"-expenditure_date\" when omitted."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (e.g., 2024). Even years only. Omitting it searches every cycle on record."
        },
        "max_date": {
          "type": "string",
          "description": "Latest expenditure date (YYYY-MM-DD)."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest expenditure date (YYYY-MM-DD)."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "max_amount": {
          "type": "number",
          "description": "Maximum expenditure amount in dollars."
        },
        "min_amount": {
          "type": "number",
          "description": "Minimum expenditure amount in dollars."
        },
        "payee_name": {
          "type": "string",
          "description": "Full-text payee name search (the vendor the party paid)."
        },
        "candidate_id": {
          "type": "string",
          "description": "Benefiting candidate ID (e.g., P00003392). Get IDs from openfec_search_candidates results."
        },
        "committee_id": {
          "type": "string",
          "description": "Spending party committee ID (e.g., C00003418). Get IDs from openfec_search_committees results — party committees carry committee_type X or Y."
        }
      },
      "additionalProperties": false
    }
    openfec_search_disbursements
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Disbursements
    Description du serveur (copiée ; langue non vérifiée)
    Search itemized committee spending (Schedule B) or get aggregate breakdowns by purpose or recipient. All modes require a committee_id. Use to answer "what is this committee spending money on?" or "who is receiving payments from this committee?"
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "committee_id"
      ],
      "properties": {
        "mode": {
          "enum": [
            "itemized",
            "by_purpose",
            "by_recipient",
            "by_recipient_id"
          ],
          "type": "string",
          "default": "itemized",
          "description": "Query mode. \"itemized\" returns individual disbursement records (keyset pagination). \"by_purpose\" aggregates by purpose category. \"by_recipient\" aggregates by recipient name. \"by_recipient_id\" aggregates by recipient committee ID (committee-to-committee transfers)."
        },
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed) for aggregate modes. Explicit page is rejected in itemized mode, which paginates with cursor. Defaults to 1 for aggregates."
        },
        "sort": {
          "enum": [
            "disbursement_date",
            "-disbursement_date",
            "disbursement_amount",
            "-disbursement_amount"
          ],
          "type": "string",
          "description": "Sort field. A \"-\" prefix sorts descending: use \"-disbursement_amount\" for the biggest payments first, since the ascending form leads with the most negative rows (refunds and voided payments). Itemized only; OpenFEC sorts by \"-disbursement_date\" when omitted."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (e.g., 2024). Even years only. Itemized mode defaults to the current cycle when omitted — Schedule B spans all history, and an all-history scan of an active committee times out upstream. Pass an explicit cycle to search an earlier period."
        },
        "cursor": {
          "type": "string",
          "description": "Opaque pagination cursor from a previous response of this tool. Itemized mode only (keyset pagination). Valid only for an otherwise-identical call — changing any other argument, including sort, rejects the cursor; omit it to start over."
        },
        "max_date": {
          "type": "string",
          "description": "Latest disbursement date (YYYY-MM-DD). Itemized only."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest disbursement date (YYYY-MM-DD). Itemized only."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "max_amount": {
          "type": "number",
          "description": "Maximum amount in dollars. Itemized only."
        },
        "min_amount": {
          "type": "number",
          "description": "Minimum amount in dollars. Itemized only."
        },
        "committee_id": {
          "type": "string",
          "minLength": 1,
          "description": "Spending committee ID (e.g., C00703975). Get IDs from openfec_search_committees results. Required for all modes."
        },
        "recipient_city": {
          "type": "string",
          "description": "Recipient city. Itemized only."
        },
        "recipient_name": {
          "type": "string",
          "description": "Full-text payee name search. Itemized only."
        },
        "recipient_state": {
          "type": "string",
          "description": "Recipient state. Itemized only."
        },
        "recipient_committee_id": {
          "type": "string",
          "description": "Recipient committee ID (for committee-to-committee transfers). Itemized only."
        },
        "disbursement_description": {
          "type": "string",
          "description": "Full-text description search (e.g., \"media buy\", \"consulting\"). Itemized only."
        },
        "disbursement_purpose_category": {
          "type": "string",
          "description": "Purpose category code. Itemized only."
        }
      },
      "additionalProperties": false
    }
    openfec_search_expenditures
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Expenditures
    Description du serveur (copiée ; langue non vérifiée)
    Search independent expenditures (Schedule E) — outside spending supporting or opposing federal candidates. Covers Super PACs, party committees, and other groups. Use itemized mode for individual expenditure records, or by_candidate for aggregated totals per candidate; by_candidate needs either a candidate_id or a full race scope (candidate_office alone for President, plus candidate_office_state for Senate, plus candidate_office_district as well for House).
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "mode": {
          "enum": [
            "itemized",
            "by_candidate"
          ],
          "type": "string",
          "default": "itemized",
          "description": "Query mode. \"itemized\" returns individual expenditure records (keyset pagination). \"by_candidate\" returns aggregated totals per candidate by committee (page-based)."
        },
        "page": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed) for by_candidate mode. Explicit page is rejected in itemized mode, which paginates with cursor. Defaults to 1 for by_candidate."
        },
        "sort": {
          "enum": [
            "expenditure_date",
            "-expenditure_date",
            "expenditure_amount",
            "-expenditure_amount",
            "office_total_ytd",
            "-office_total_ytd"
          ],
          "type": "string",
          "description": "Sort field. A \"-\" prefix sorts descending: use \"-expenditure_amount\" for the largest outside spending first, since the ascending form leads with the most negative rows (corrections and voided entries). Itemized only; OpenFEC sorts by \"-expenditure_date\" when omitted."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (e.g., 2024). Even years only. Itemized mode defaults to the current cycle when omitted — Schedule E spans all history and an unscoped scan times out upstream. Pass an explicit cycle to search an earlier period."
        },
        "cursor": {
          "type": "string",
          "description": "Opaque pagination cursor from a previous response of this tool. Itemized mode only (keyset pagination). Valid only for an otherwise-identical call — changing any other argument, including sort, rejects the cursor; omit it to start over."
        },
        "max_date": {
          "type": "string",
          "description": "Latest expenditure date (YYYY-MM-DD). Itemized only."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest expenditure date (YYYY-MM-DD). Itemized only."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "is_notice": {
          "type": "boolean",
          "description": "Only 24/48-hour notice filings (near-election spending). Itemized only."
        },
        "max_amount": {
          "type": "number",
          "description": "Maximum expenditure amount in dollars. Itemized only."
        },
        "min_amount": {
          "type": "number",
          "description": "Minimum expenditure amount in dollars. Itemized only."
        },
        "payee_name": {
          "type": "string",
          "description": "Full-text payee name search. Itemized only."
        },
        "most_recent": {
          "type": "boolean",
          "description": "Only the most recent version of amended filings. Itemized only — by_candidate rejects it. Defaults to true in itemized mode when omitted; pass false to see superseded versions of amended filings."
        },
        "candidate_id": {
          "type": "string",
          "description": "Targeted candidate ID (e.g., P00003392). Get IDs from openfec_search_candidates results."
        },
        "committee_id": {
          "type": "string",
          "description": "Spending committee ID (e.g., C00703975). Get IDs from openfec_search_committees results."
        },
        "support_oppose": {
          "enum": [
            "S",
            "O"
          ],
          "type": "string",
          "description": "S = support, O = oppose. Filter by whether the expenditure supports or opposes the candidate."
        },
        "candidate_party": {
          "type": "string",
          "description": "Three-letter party code of the targeted candidate (e.g., DEM, REP). Itemized only — by_candidate rejects it, since the aggregate endpoint has no party filter."
        },
        "candidate_office": {
          "enum": [
            "H",
            "S",
            "P"
          ],
          "type": "string",
          "description": "Office of the targeted candidate: H=House, S=Senate, P=President. In by_candidate mode this scopes a whole race: P stands alone, S also needs candidate_office_state, H also needs candidate_office_state and candidate_office_district."
        },
        "candidate_office_state": {
          "type": "string",
          "description": "Two-letter state code of the targeted race. Required alongside candidate_office=H or candidate_office=S in by_candidate mode; leave it off for candidate_office=P, whose aggregate rows carry no state and match nothing when one is supplied."
        },
        "candidate_office_district": {
          "type": "string",
          "description": "Two-digit House district of the targeted race (e.g., \"09\"). Required alongside candidate_office=H and candidate_office_state in by_candidate mode; Senate and presidential rows carry no district and match nothing when one is supplied."
        }
      },
      "additionalProperties": false
    }
    openfec_search_filings
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Filings
    Description du serveur (copiée ; langue non vérifiée)
    Search FEC filings and reports by committee, candidate, form type, or date range. Covers financial reports (F3/F3P/F3X), statements of candidacy (F2), organizational filings (F1), 24-hour IE notices (F24), and amendments.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Page number (1-indexed)."
        },
        "cycle": {
          "type": "number",
          "description": "Two-year election cycle (even year)."
        },
        "per_page": {
          "type": "integer",
          "default": 20,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page."
        },
        "form_type": {
          "type": "string",
          "description": "FEC form type. Common: F3 (House/Senate quarterly), F3P (Presidential), F3X (PAC/party), F24 (24-hour IE notice), F1 (statement of organization), F2 (statement of candidacy), F5 (IE by persons)."
        },
        "filer_name": {
          "type": "string",
          "description": "Full-text filer name search."
        },
        "is_amended": {
          "type": "boolean",
          "description": "Filter to original or amended filings only."
        },
        "most_recent": {
          "type": "boolean",
          "default": true,
          "description": "Only the most recent version (filters out superseded amendments)."
        },
        "report_type": {
          "type": "string",
          "description": "Report type code. Common: Q1/Q2/Q3 (quarterly), YE (year-end), M3-M12 (monthly), 12G/12P/30G (pre/post election)."
        },
        "report_year": {
          "type": "number",
          "description": "Filing year."
        },
        "candidate_id": {
          "type": "string",
          "description": "Associated candidate ID (e.g., P00003392). Get IDs from openfec_search_candidates results."
        },
        "committee_id": {
          "type": "string",
          "description": "Filing committee ID (e.g., C00358796). Get IDs from openfec_search_committees results."
        },
        "max_receipt_date": {
          "type": "string",
          "description": "Latest FEC receipt date (YYYY-MM-DD)."
        },
        "min_receipt_date": {
          "type": "string",
          "description": "Earliest date FEC received the filing (YYYY-MM-DD)."
        }
      },
      "additionalProperties": false
    }
    openfec_search_legal
    Déclaré en lecture seule
    Afficher les détails fournis par le serveur
    Openfec Search Legal
    Description du serveur (copiée ; langue non vérifiée)
    Search FEC legal documents: advisory opinions, enforcement cases (MURs), alternative dispute resolutions, and administrative fines.
    Schéma d’entrée (aperçu fourni par le serveur — ne pas copier)
    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "type": {
          "enum": [
            "advisory_opinions",
            "murs",
            "adrs",
            "admin_fines",
            "statutes"
          ],
          "type": "string",
          "description": "Document type filter. Omit to search all types. admin_fines is slow without a query or respondent filter."
        },
        "query": {
          "type": "string",
          "description": "Full-text search across legal documents."
        },
        "from_hit": {
          "type": "integer",
          "default": 0,
          "maximum": 9999,
          "minimum": 0,
          "description": "Offset for pagination (0-indexed), counted within each document type rather than across them. Default 0. The search index serves a 10,000-result window, so from_hit plus hits_returned must be 10,000 or less — the ceiling here assumes hits_returned of 1."
        },
        "max_date": {
          "type": "string",
          "description": "Latest date (YYYY-MM-DD) for the date_kind selected. Requires type and date_kind."
        },
        "min_date": {
          "type": "string",
          "description": "Earliest date (YYYY-MM-DD) for the date_kind selected. Requires type and date_kind."
        },
        "ao_number": {
          "type": "string",
          "description": "Specific advisory opinion number (e.g. \"2024-01\")."
        },
        "date_kind": {
          "enum": [
            "issue_date",
            "request_date",
            "open_date",
            "close_date",
            "document_date",
            "rtb_date",
            "fd_date"
          ],
          "type": "string",
          "description": "Which date min_date/max_date bound. Each document type records its own dates, so this must be one the chosen type has: type=advisory_opinions → issue_date (opinion issued), request_date (request received), document_date; type=murs or adrs → open_date (case opened), close_date (case closed), document_date; type=admin_fines → rtb_date (reason-to-believe finding), fd_date (final determination). type=statutes cannot be date-filtered. Required whenever min_date or max_date is given, together with type."
        },
        "respondent": {
          "type": "string",
          "description": "Respondent name (enforcement cases)."
        },
        "case_number": {
          "type": "string",
          "description": "Specific MUR or ADR case number."
        },
        "hits_returned": {
          "type": "integer",
          "default": 20,
          "maximum": 200,
          "minimum": 1,
          "description": "Results per page, applied per document type. Default 20, max 200. Bounded together with from_hit by the 10,000-result window."
        },
        "max_penalty_amount": {
          "type": "number",
          "description": "Maximum penalty amount in dollars. Filters enforcement cases (murs, adrs) only — other document types are returned unfiltered by it."
        },
        "min_penalty_amount": {
          "type": "number",
          "description": "Minimum penalty amount in dollars. Filters enforcement cases (murs, adrs) only — other document types are returned unfiltered by it."
        },
        "statutory_citation": {
          "type": "string",
          "description": "U.S.C. citation (e.g. \"52 U.S.C. 30106\")."
        },
        "regulatory_citation": {
          "type": "string",
          "description": "CFR citation (e.g. \"11 CFR 112.4\")."
        }
      },
      "additionalProperties": false
    }
    Preuves et limites

    Méthode : sonde HTTP anonyme. Aucun outil n’est exécuté.

    Protocoles essayés : 2026-07-28

    Protocole2026-07-28
    TransportHTTP Streamable
    AuthentificationAucun défi d’authentification observé
    PreuvesContrat public observé
    Latence totale708 ms
    Octets de réponse76156

    Aucune erreur de diagnostic.

    Historique des observations
    Serveur accessible
    · stable depuis
    2026-07-28 · 12 outils · aucun changement · 30 contrôles
    Serveur accessible
    · stable depuis
    2026-07-28 · 12 outils · aucun changement · 44 contrôles
    Serveur accessible
    · stable depuis
    2026-07-28 · 12 outils · aucun changement · 6 contrôles
    Contrat public complet · 2026-07-28 · 12 outils
    c59e22d91b88
    Contrat public complet · 2026-07-28 · 12 outils
    085eca2580e9
    Contrat public complet · 2026-07-28 · 12 outils
    8dda11b0b01d

    Éligibilité à la surveillance approfondie

    Éligible à la surveillance approfondie

    Un contrat public tools/list complet a été observé ; une future base de surveillance approfondie pourra être comparée en toute sécurité.

    Un Watch démarre depuis la section de paiement de cette page, et seulement après un paiement vérifié.

    Voir la surveillance publique
    Watch · recurring plan

    Watch this MCP

    Your agent depends on this MCP. When Watch is active, periodic checks alert you when we observe a change that may affect the client you selected.

    • Know when it goes downWhen Watch is active, availability is observed about every 5 minutes. An outage is confirmed after two failed checks, so a single miss is not treated as a lasting outage.
    • Know when its contract changesDeep checks about every hour compare public tool catalogs and authentication surfaces over time.
    • Know what changed and what to fixAn alert names the observed change and the next step for the client you selected.

    Full public-contract coverage: Availability, protocol, auth and public tool contract changes can be compared.

    Full WatchAvailability, protocol, auth and public tool contract changes
    Surface WatchAvailability, TLS, protocol and auth surface — no private tool diff

    Early access currently activates this first endpoint; adding more endpoints up to the planned limit of five is not open in this deployment. Live checkout is open. A Watch activates only after a verified payment event; a browser return never starts monitoring.

    Start Watch