Skip to main content
Glama

Find FARA Foreign Principals

foreign_agents_principal
Read-onlyIdempotent

Look up a foreign principal in the Foreign Agents Register by name substring, as filed or as rewritten to the institution or office where the filed string names a person, optionally narrowed by a substring of the country string as DOJ prints it. Returns up to 5 published principals, each with its type, its country as DOJ prints it, its active rows in DOJ's bulk files, and the published registrants representing it, with the money each reported receiving for or in the interests of that principal for the registrants' six-month periods ending in 2024 and in 2025, as DOJ's reports print it, with DOJ's posting dates. "None Reported" stays its own state, never zero. Entries by withheld registrants count only inside the country totals. 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". A registration names who the agent represents, not what any official did. Country strings are DOJ's, as entered by registrants, and are not a statement of U.S. foreign policy. FARA receipts, LDA filing counts and PAC contributions are separate measures, shown side by side and never added. Individual foreign principals are withheld: counted only, never named or matched.

Input Schema

NameRequiredDescriptionDefault
nameYesRequired case-insensitive foreign principal name substring, at most 80 characters; searched among published principals only.
countryNoOptional case-insensitive substring of the country string as DOJ prints it, at most 80 characters.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, open-world, non-destructive behavior, and the description adds substantial context beyond them: return cap of 5, included fields, 2024/2025 money reporting, DOJ posting dates, 'None Reported' handling, withheld-registrant aggregation, and legal caveats. These details meaningfully inform how results should be interpreted.

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

Conciseness4/5

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

The definition is front-loaded with the core lookup behavior, and the later sentences carry relevant caveats rather than filler. It is somewhat dense and long-sentenced, but the length is largely justified by the complex return and interpretive constraints.

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

Completeness5/5

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

With no output schema and a complex data tool, the description carries the burden well: it explains what is returned, what counts are included or withheld, and important legal and interpretive caveats. An agent has enough context to call and interpret the tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already documents both parameters. The description adds useful matching semantics beyond the schema, especially that name matching can include a person rewritten to an institution or office and that country matching follows DOJ's printed country string.

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 description states a specific verb and resource: looking up a foreign principal in the Foreign Agents Register by name substring, optionally narrowed by country. It is clear about the target being principals rather than registrants, though it does not explicitly contrast itself with sibling tools such as foreign_agents_registrant or foreign_agents_country.

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?

It provides implied usage context by specifying that searches are among published principals only and that individual foreign principals are withheld and never named or matched. It does not explicitly state when to use this tool versus sibling alternatives or when not to use it.

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.