Skip to main content
Glama
amurshak

CongressMCP-full

by amurshak

Search a bill's full statutory text by section (GovInfo)

search_bill_text

Full-text search of a bill's statutory text (bill text / legislative text), parsed from GovInfo Bill DTD XML with segment-level FTS5, returning matching sections with the U.S. Code and Public Law citations they amend.

Instructions

Full-text search of a bill's statutory text (bill text / legislative text), parsed from
GovInfo Bill DTD XML with segment-level FTS5, returning matching sections with the
U.S. Code and Public Law citations they amend.

Use this to answer "what does bill X say about Y" without reading the whole bill.

Queries match as LITERAL PHRASES WITH STEMMING -- not bag-of-words, and not semantically.
A query hits only where the bill contains that phrase verbatim, so a description of a topic
finds nothing: "Space Force end strength" returns zero against a bill containing both "End
strengths for active forces" and "Space Force". Prefer several short phrases you expect to
appear verbatim, plus synonyms, in one call, e.g. ["icebreaker", "polar security cutter"];
matched_queries reports which phrasing produced each hit, so you can drop the dead ones next call.

A query that matches nothing gets an entry in query_diagnostics saying why, so zero hits is
readable rather than ambiguous. verdict "phrasing" means every term IS in the bill but not as
this contiguous phrase -- rephrase, do not conclude the bill is silent. verdict "absent_term"
means absent_terms appear nowhere in the bill, so no rephrasing of them will help. terms shows
the stemmed tokens actually searched ("Force" -> "forc"), which is where a phrase stops
meaning what you typed.

Knowing a provision as codified law does NOT establish where it sits in THIS bill. Division,
title, and section numbers are properties of this document, and these tools are the only
source for them -- answering a bill-location question from prior knowledge produces a
confident, correctly-quoted, wrongly-cited answer. Call the tool instead.

If "quoted" appears in match_contexts, the hit may include language the bill is removing,
even when "operative" also appears; presence of "quoted" governs. Each amends entry is
{kind: "usc"|"public_law", cite}. amends is a convenience, never a complete list of what a
section amends: it resolves no named Acts (including the IRC by bare section number), no
chapter- or title-level amendments, and no non-U.S. Code targets. A NON-EMPTY amends can
still be short -- a populated list is not evidence it is the whole list, and nothing
distinguishes three-of-three from three-of-four. Treat it as citations found, not citations
present; use is_amendatory and match_contexts to identify amendatory text, and read the
section to enumerate its targets. max_hits is clamped to 1-50.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
numberYes
queriesYes
versionNo
congressYes
max_hitsNo
bill_typeYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

No annotations are provided, so the description carries the full burden and excels: it discloses literal-phrase-with-stemming matching, zero-hit diagnostics (verdicts 'phrasing' vs 'absent_term'), the meaning of 'quoted' in match_contexts, and the incompleteness of the amends list. It even explains stemmed tokens in 'terms'.

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

Conciseness5/5

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

The description is long but each paragraph addresses a distinct nuance: matching semantics, diagnostics, bill-location trap, quoted/amends caveats, and max_hits clamping. It is well-structured, front-loaded with the core purpose, and every sentence earns its place.

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?

Despite having an output schema, the description thoroughly covers tool behavior, query semantics, output interpretation (match_contexts, query_diagnostics, amends), and parameter constraints. It preemptively addresses edge cases and likely agent mistakes, making it complete for a complex search tool.

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?

With 0% schema description coverage, the description adds critical semantics for 'queries' (literal phrases, stemming, synonyms) and 'max_hits' (clamped 1-50). However, 'congress', 'bill_type', 'number', and 'version' are not explicitly explained, though their names and context make them reasonably clear. It partially compensates but not fully.

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

Purpose5/5

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

The description opens with 'Full-text search of a bill's statutory text', a specific verb and resource, and further explains it returns matching sections with U.S. Code and Public Law citations. This clearly distinguishes it from sibling tools like get_bill_section and get_bill_toc by its retrieval modality.

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

Usage Guidelines5/5

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

It explicitly states 'Use this to answer "what does bill X say about Y" without reading the whole bill', providing a clear when-to-use. It also warns 'Call the tool instead' for bill-location questions, and gives detailed query-construction advice (literal phrases, synonyms), effectively communicating when not to rely on prior knowledge.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/amurshak/congressMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server