Skip to main content
Glama

Find FARA Records by Country

foreign_agents_country
Read-onlyIdempotent

Look up a country or location in the Foreign Agents Register by a substring of the country string exactly as DOJ prints it (as entered by registrants and never re-mapped, for example "KOREA, SOUTH"), optionally for one year (2024 or 2025; both when omitted). Returns up to 3 matching countries, each with the money agents reported receiving for its principals for the registrants' six-month periods ending in that year, as DOJ's reports print it, with DOJ's posting date; entries, entries with an amount, "None Reported" entries (never zero) and entries with no Finances line; registrants with money; the withheld part of the country total, as counts and money only; active principal rows and registrants from DOJ's bulk files; the Nature of Services of the published entries; and the largest published registrants and principals with their amounts. Every answer carries DOJ's footnote that country or location is not reflective of U.S. foreign policy and does not imply a recognition of sovereignty. Country strings are DOJ's, as entered by registrants, and are not a statement of U.S. foreign policy. Registration under FARA is a legal disclosure, not a finding of wrongdoing; in the Justice Department's words, registration "does not indicate approval by the United States Government of the activities of registered agents". FARA receipts, LDA filing counts and PAC contributions are separate measures, shown side by side and never added. Individuals are withheld: counted only, never named.

Input Schema

NameRequiredDescriptionDefault
yearNoOptional year of the registrants' six-month periods, 2024 or 2025; both when omitted.
countryYesRequired case-insensitive substring of the country or location string as DOJ prints it (for example "KOREA, SOUTH"), at most 80 characters.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • removedInput schema / properties / year / enum
      Removed value: -[
      -  2024,
      -  2025
      -]
    • addedInput schema / properties / year / maximum
      Added value: +2100
    • addedInput schema / properties / year / minimum
      Added value: +1900
  2. Added

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, non-destructive, open-world, so the description correctly spends its words elsewhere: a hard truncation limit (at most 3 matching countries), the withholding policy for individuals (counted, never named), the presence of both 'None Reported' and missing Finances entries, and that FARA receipts, LDA counts and PAC contributions are shown side by side and never summed. That last point is a genuinely useful anti-misuse constraint; the repeated sovereignty/policy disclaimers add bulk with less marginal value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The lookup semantics are correctly front-loaded, but the second sentence is a single ~120-word run-on enumerating every returned field, and the disclaimer content is stated twice ('not a statement of U.S. foreign policy' and the no-recognition-of-sovereignty note). Substantial trimming is possible without losing decision-relevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the burden of explaining the return payload and does so thoroughly — matching-country cap, per-country money totals, entry counts, active principal rows, Nature of Services, and top registrants/principals. Combined with the withholding rules and the mandated footnote, an agent has enough to call the tool and interpret results without surprises.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including the case-insensitive substring rule, the 80-character cap and the 2024/2025 year behavior, so the baseline applies. The description adds only the nuance that country strings are registrant-entered and never re-mapped, which slightly sharpens how to construct the substring but goes no further than the schema on the year parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first clause gives a specific verb and resource — look up a country/location in the Foreign Agents Register by a substring of DOJ's country string — with a concrete example ("KOREA, SOUTH"). It is unambiguous what the tool returns, but it never names the FARA siblings (foreign_agents_registrant, foreign_agents_principal, foreign_agents_summary) to distinguish the country dimension from the registrant/principal dimensions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Practical usage guidance is embedded (match the string exactly as DOJ prints it, never re-mapped; year defaults to both 2024 and 2025 when omitted), which is valuable for getting a hit. However there is no explicit when-to-use/when-not or pointer to an alternative tool for a different slice of FARA data; usage is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.