consultar_meios_pagamento_mensal
Retrieve monthly payment method data from Brazil's Central Bank including PIX, bank slips, TED, DOC transactions, and other payment operations for specific periods.
Instructions
Consulta dados mensais sobre meios de pagamento, incluindo operações com boletos bancários, PIX, TED, DOC e outros. Use o formato YYYYMM para o parâmetro ano_mes (exemplo: '202312' para dezembro de 2023).
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ano_mes | Yes | Ano e mês no formato YYYYMM (exemplo: '202312') | |
| top | No | Número máximo de registros a retornar (padrão: 100) | |
| skip | No | Número de registros a pular para paginação | |
| filtro | No | Filtro OData para refinar a consulta (exemplo: "Modalidade eq 'PIX'") |
Implementation Reference
- src/index.ts:275-300 (handler)MCP CallTool handler case for consultar_meios_pagamento_mensal: extracts ano_mes and optional params, fetches data from BCB API endpoint MeiosdePagamentosMensalDA, returns JSON stringified response.case "consultar_meios_pagamento_mensal": { const { ano_mes, top = 100, skip, filtro } = args as { ano_mes: string; top?: number; skip?: number; filtro?: string; }; const data = await fetchBCBData(`MeiosdePagamentosMensalDA(AnoMes=@AnoMes)?@AnoMes='${ano_mes}'`, { formato: "json", top, skip, filter: filtro, }); return { content: [ { type: "text", text: JSON.stringify(data, null, 2), }, ], }; } case "consultar_meios_pagamento_trimestral": {
- src/index.ts:68-92 (schema)Tool registration and input schema definition for consultar_meios_pagamento_mensal, including required ano_mes (YYYYMM) and optional pagination/filter params.{ name: "consultar_meios_pagamento_mensal", description: "Consulta dados mensais sobre meios de pagamento, incluindo operações com boletos bancários, PIX, TED, DOC e outros. Use o formato YYYYMM para o parâmetro ano_mes (exemplo: '202312' para dezembro de 2023).", inputSchema: { type: "object", properties: { ano_mes: { type: "string", description: "Ano e mês no formato YYYYMM (exemplo: '202312')", }, top: { type: "number", description: "Número máximo de registros a retornar (padrão: 100)", }, skip: { type: "number", description: "Número de registros a pular para paginação", }, filtro: { type: "string", description: "Filtro OData para refinar a consulta (exemplo: \"Modalidade eq 'PIX'\")", }, }, required: ["ano_mes"], },
- src/index.ts:37-52 (helper)Helper function to fetch data from BCB Olinda API, builds URL with OData params, handles errors.async function fetchBCBData(endpoint: string, params: QueryParams = {}) { try { const url = buildUrl(endpoint, params); const response = await axios.get(url, { headers: { "Accept": "application/json" } }); return response.data; } catch (error) { if (axios.isAxiosError(error)) { throw new Error(`Erro ao consultar API do BCB: ${error.message}`); } throw error; } }
- src/http-server.ts:279-302 (handler)MCP CallTool handler case in HTTP server for consultar_meios_pagamento_mensal, identical logic to stdio version.case "consultar_meios_pagamento_mensal": { const { ano_mes, top = 100, skip, filtro } = args as { ano_mes: string; top?: number; skip?: number; filtro?: string; }; const data = await fetchBCBData(`MeiosdePagamentosMensalDA(AnoMes=@AnoMes)?@AnoMes='${ano_mes}'`, { formato: "json", top, skip, filter: filtro, }); return { content: [ { type: "text", text: JSON.stringify(data, null, 2), }, ], }; }
- src/http-server.ts:499-526 (handler)REST /tools/call endpoint handler case for consultar_meios_pagamento_mensal in HTTP server, adds explicit validation for ano_mes.case "consultar_meios_pagamento_mensal": { const { ano_mes, top = 100, skip, filtro } = args as { ano_mes: string; top?: number; skip?: number; filtro?: string; }; if (!ano_mes) { throw new Error("Parâmetro 'ano_mes' é obrigatório"); } const data = await fetchBCBData(`MeiosdePagamentosMensalDA(AnoMes=@AnoMes)?@AnoMes='${ano_mes}'`, { formato: "json", top, skip, filter: filtro, }); return { content: [ { type: "text", text: JSON.stringify(data, null, 2), }, ], }; }