Skip to main content
Glama

cfpb_search_complaints

Read-onlyIdempotent

Search the CFPB Consumer Complaint Database (4M+ complaints submitted against financial companies since 2011). Filter by free-text term, company, product, state, date range, and narrative-presence. Returns complaint metadata plus public narratives when available.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fromNoPagination offset (default 0)
sizeNoPage size (default 25, max 100)
stateNoTwo-letter state code
companyNoExact company name (use cfpb_suggest_company for fuzzy matching)
productNoCFPB product category (e.g. 'Credit reporting', 'Mortgage', 'Debt collection')
search_termNoFree-text search across all complaint fields
has_narrativeNoOnly complaints with consumer narratives
date_received_maxNoYYYY-MM-DD upper bound
date_received_minNoYYYY-MM-DD lower bound

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare read-only, idempotent, non-destructive behavior, so the safety profile is covered. The description adds useful context about the database's scale, time range, and the availability of public narratives in results, but it does not disclose pagination, rate limits, or other behavioral edge cases beyond what the schema's default/max values already convey.

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?

Two tightly written sentences front-load the core purpose and resource, then list the filter dimensions and return value. There is no filler or redundant restatement of the tool name or annotations.

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

Completeness3/5

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

For a search tool with 9 optional parameters and no output schema, the description gives a solid high-level picture of inputs and outputs. However, it does not orient the agent among the many related CFPB sibling tools, such as cfpb_complaint_aggregations, cfpb_complaint_trends, or cfpb_suggest_company, leaving some selection context to the agent's own reasoning.

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%, so the schema already documents every parameter. The description paraphrases several filters (free-text term, company, product, state, date range, narrative-presence) but adds no new semantic detail beyond what the schema provides, matching the baseline of 3.

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 clearly states a specific action ('Search'), a specific resource (the CFPB Consumer Complaint Database), and the main filtering capabilities. It does not explicitly distinguish itself from sibling tools like cfpb_complaint_aggregations, cfpb_complaint_trends, or cfpb_state_complaints, so it falls short of a 5.

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?

The description implies when to use the tool: when you want raw complaint records matching certain filters. However, it provides no explicit when-not-to-use guidance or direct comparison with alternatives such as cfpb_complaint_aggregations for counts or cfpb_complaint_detail for individual complaint details, leaving the differentiation to inference.

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.