naftiko: 1.0.0-alpha2 info: label: CFPB Consumer Complaint Database API — Geo description: 'CFPB Consumer Complaint Database API — Geo. 1 operations. Lead operation: Aggregated complaint counts by state. Self-contained Naftiko capability covering one Consumer Financial Protection Bureau business surface.' tags: - Consumer Financial Protection Bureau - Geo created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CONSUMER_FINANCIAL_PROTECTION_BUREAU_API_KEY: CONSUMER_FINANCIAL_PROTECTION_BUREAU_API_KEY capability: consumes: - type: http namespace: cfpb-ccdb-geo baseUri: https://www.consumerfinance.gov/data-research/consumer-complaints/search/api/v1 description: CFPB Consumer Complaint Database API — Geo business capability. Self-contained, no shared references. resources: - name: geo-states path: /geo/states/ operations: - name: getgeostates method: GET description: Aggregated complaint counts by state outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: cfpb-ccdb-geo-rest port: 8080 description: REST adapter for CFPB Consumer Complaint Database API — Geo. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/geo/states name: geo-states description: REST surface for geo-states. operations: - method: GET name: getgeostates description: Aggregated complaint counts by state call: cfpb-ccdb-geo.getgeostates outputParameters: - type: object mapping: $. - type: mcp namespace: cfpb-ccdb-geo-mcp port: 9090 transport: http description: MCP adapter for CFPB Consumer Complaint Database API — Geo. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: aggregated-complaint-counts-state description: Aggregated complaint counts by state hints: readOnly: true destructive: false idempotent: true call: cfpb-ccdb-geo.getgeostates outputParameters: - type: object mapping: $.