cfpb_search_complaints
Pack: cfpb · Endpoint: https://gateway.pipeworx.io/cfpb/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/cfpb_search_complaints for the schema, then POST the same URL with its arguments for the data.
Search consumer complaints by keyword, company, product, or date range. Returns complaint narratives, company responses, and resolution status.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | no | Search term (e.g., “overdraft fees”, “denied claim”). Optional if other filters provided. |
company | string | no | Company name to filter by (e.g., “BANK OF AMERICA”, “WELLS FARGO”) |
product | string | no | Product category (e.g., “Credit card”, “Mortgage”, “Student loan”, “Vehicle loan or lease”, “Checking or savings account”, “Credit reporting”, “Debt collection”) |
start_date | string | no | Start date in YYYY-MM-DD format |
end_date | string | no | End date in YYYY-MM-DD format |
limit | number | no | Number of results (1-100, default 25) |
Example call
Arguments
{
"query": "overdraft fees",
"limit": 25
}
curl
curl -X POST https://gateway.pipeworx.io/cfpb/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"cfpb_search_complaints","arguments":{"query":"overdraft fees","limit":25}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('cfpb_search_complaints', {
"query": "overdraft fees",
"limit": 25
});
More examples
{
"company": "WELLS FARGO",
"product": "Checking or savings account",
"start_date": "2023-01-01",
"end_date": "2024-01-01",
"limit": 50
}
Response shape
Always returns: query, filters, total, complaints
| Field | Type | Description |
|---|---|---|
query | string | null | Search query term provided |
filters | object | |
total | object | number | total (object for aggregations, number for scalar count). |
complaints | array | List of complaint records |
Full JSON Schema
{
"type": "object",
"properties": {
"query": {
"type": [
"string",
"null"
],
"description": "Search query term provided"
},
"filters": {
"type": "object",
"properties": {
"company": {
"type": [
"string",
"null"
],
"description": "Company filter applied"
},
"product": {
"type": [
"string",
"null"
],
"description": "Product category filter applied"
},
"date_range": {
"type": "object",
"properties": {
"start": {
"type": [
"string",
"null"
],
"description": "Start date of range (YYYY-MM-DD)"
},
"end": {
"type": [
"string",
"null"
],
"description": "End date of range (YYYY-MM-DD)"
}
}
}
}
},
"total": {
"type": [
"object",
"number"
],
"description": "total (object for aggregations, number for scalar count)."
},
"complaints": {
"type": "array",
"description": "List of complaint records",
"items": {
"type": "object",
"properties": {
"complaint_id": {
"type": "string",
"description": "Unique complaint identifier"
},
"date_received": {
"type": "string",
"description": "Date complaint was received"
},
"product": {
"type": "string",
"description": "Product category (e.g., Credit card, Mortgage)"
},
"sub_product": {
"type": [
"string",
"null"
],
"description": "Subcategory of product"
},
"issue": {
"type": "string",
"description": "Main complaint issue"
},
"sub_issue": {
"type": [
"string",
"null"
],
"description": "Subcategory of issue"
},
"narrative": {
"type": [
"string",
"null"
],
"description": "Consumer complaint narrative"
},
"company": {
"type": "string",
"description": "Company name"
},
"state": {
"type": [
"string",
"null"
],
"description": "Consumer state (2-letter code)"
},
"company_response": {
"type": "string",
"description": "Company's response status"
},
"company_public_response": {
"type": [
"string",
"null"
],
"description": "Public response from company"
},
"timely": {
"type": [
"string",
"null"
],
"description": "Whether response was timely"
},
"consumer_disputed": {
"type": [
"string",
"null"
],
"description": "Whether consumer disputed resolution"
},
"submitted_via": {
"type": [
"string",
"null"
],
"description": "Submission method (e.g., web, phone)"
}
}
}
}
},
"required": [
"query",
"filters",
"total",
"complaints"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"cfpb": {
"url": "https://gateway.pipeworx.io/cfpb/mcp"
}
}
}
See Getting Started for client-specific install steps.