listar_cargos_municipio
Retrieve the political positions being contested in a specific Brazilian municipality election using official TSE electoral data.
Instructions
Lista os cargos em disputa em um município específico
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| eleicao | Yes | Código da eleição | |
| municipio | Yes | Código do município |
Input Schema (JSON Schema)
{
"properties": {
"eleicao": {
"description": "Código da eleição",
"type": "number"
},
"municipio": {
"description": "Código do município",
"type": "number"
}
},
"required": [
"eleicao",
"municipio"
],
"type": "object"
}
Implementation Reference
- src/index.ts:301-319 (handler)Handler function for 'listar_cargos_municipio' tool: validates input with CargosMunicipioSchema, fetches cargo data from TSE API endpoint `/eleicao/listar/municipios/${eleicao}/${municipio}/cargos`, and returns formatted text response with municipality details and cargo list.case "listar_cargos_municipio": { const params = CargosMunicipioSchema.parse(args); const data = await handleApiRequest(() => httpClient.get(`/eleicao/listar/municipios/${params.eleicao}/${params.municipio}/cargos`) ); return { content: [ { type: "text", text: `Cargos em disputa no município:\n\n` + `Município: ${data.unidadeEleitoralDTO?.nome || 'N/A'}\n` + `UF: ${data.unidadeEleitoralDTO?.sigla || 'N/A'}\n` + `Cargos disponíveis: ${data.cargos?.length || 0}\n\n` + JSON.stringify(data, null, 2) } ] }; }
- src/index.ts:41-44 (schema)Zod schema defining input parameters for 'listar_cargos_municipio': eleicao (election code) and municipio (municipality code) as integers.const CargosMunicipioSchema = z.object({ eleicao: z.number().int(), municipio: z.number().int() });
- src/index.ts:157-174 (registration)Tool registration in ListToolsRequest handler, providing name, description, and inputSchema matching the Zod schema.{ name: "listar_cargos_municipio", description: "Lista os cargos em disputa em um município específico", inputSchema: { type: "object", properties: { eleicao: { type: "number", description: "Código da eleição" }, municipio: { type: "number", description: "Código do município" } }, required: ["eleicao", "municipio"] } },