consultar_candidato
Retrieve detailed candidate information from Brazilian elections by providing election year, municipality code, election code, and candidate ID.
Instructions
Consulta informações detalhadas sobre um candidato específico
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ano | Yes | Ano da eleição (ex: 2020) | |
| municipio | Yes | Código do município (ex: 35157 para São Paulo) | |
| eleicao | Yes | Código da eleição (ex: 2030402020 para eleições municipais de 2020) | |
| candidato | Yes | Código do candidato |
Implementation Reference
- src/index.ts:264-284 (handler)The main execution logic for the 'consultar_candidato' tool: validates arguments, fetches candidate data from TSE API, and returns formatted details including name, number, party, cargo, situation, and full JSON.
case "consultar_candidato": { const params = ConsultaCandidatoSchema.parse(args); const data = await handleApiRequest(() => httpClient.get(`/candidatura/buscar/${params.ano}/${params.municipio}/${params.eleicao}/candidato/${params.candidato}`) ); return { content: [ { type: "text", text: `Informações do candidato:\n\n` + `Nome: ${data.nomeCompleto || data.nomeUrna || 'N/A'}\n` + `Número: ${data.numero || 'N/A'}\n` + `Partido: ${data.partido?.nome || 'N/A'} (${data.partido?.sigla || 'N/A'})\n` + `Cargo: ${data.cargo?.nome || 'N/A'}\n` + `Situação: ${data.descricaoSituacao || 'N/A'}\n\n` + `Detalhes completos:\n${JSON.stringify(data, null, 2)}` } ] }; } - src/index.ts:34-39 (schema)Zod input schema used for validating parameters (ano, municipio, eleicao, candidato) in the consultar_candidato handler.
const ConsultaCandidatoSchema = z.object({ ano: z.number().int().min(2000).max(new Date().getFullYear()), municipio: z.number().int(), eleicao: z.number().int(), candidato: z.number().int() }); - src/index.ts:120-147 (registration)Tool registration in ListToolsResponse, defining name, description, and JSON input schema for consultar_candidato.
{ name: "consultar_candidato", description: "Consulta informações detalhadas sobre um candidato específico", inputSchema: { type: "object", properties: { ano: { type: "number", description: "Ano da eleição (ex: 2020)", minimum: 2000, maximum: new Date().getFullYear() }, municipio: { type: "number", description: "Código do município (ex: 35157 para São Paulo)" }, eleicao: { type: "number", description: "Código da eleição (ex: 2030402020 para eleições municipais de 2020)" }, candidato: { type: "number", description: "Código do candidato" } }, required: ["ano", "municipio", "eleicao", "candidato"] } },