Skip to main content
Glama

get_natural_areas

Retrieve protected natural areas in Colombia, filterable by department. Returns names, categories, and locations for parks and reserves.

Instructions

Obtiene la lista de áreas naturales protegidas de Colombia. Puede filtrar por departamento.

Args:

  • department_id (number, opcional): ID del departamento para filtrar

Returns: Lista de áreas naturales con nombre, categoría y departamento.

Ejemplo de uso:

  • "¿Cuáles son los parques naturales de Colombia?"

  • "Áreas naturales en el Amazonas"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
department_idNoID del departamento para filtrar

Implementation Reference

  • Handler function for the 'get_natural_areas' tool. Fetches natural protected areas from the API, optionally filtered by department ID, processes the data into a formatted structure including ID, name, category, department ID, and area in hectares, and returns it as a JSON text content block or an error message.
    async ({ department_id }) => { try { let areas: any[]; if (department_id) { areas = await apiRequest<any[]>(`/Department/${department_id}/naturalareas`); } else { areas = await apiRequest<any[]>("/NaturalArea"); } const resultado = { total: areas.length, areas_naturales: areas.map(a => ({ id: a.id, nombre: a.name, categoria: a.categoryNaturalArea?.name || "N/A", departamento_id: a.departmentId, area_hectareas: a.areaHa, })), }; return { content: [ { type: "text", text: JSON.stringify(resultado, null, 2), }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error al obtener áreas naturales: ${error instanceof Error ? error.message : "Error desconocido"}`, }, ], }; } }
  • Zod input schema defining the optional 'department_id' parameter for filtering natural areas by department.
    inputSchema: { department_id: z.number().int().optional().describe("ID del departamento para filtrar"), },
  • src/index.ts:893-958 (registration)
    Registration of the 'get_natural_areas' tool using server.registerTool, including metadata, schema, annotations, and inline handler function.
    server.registerTool( "get_natural_areas", { title: "Obtener Áreas Naturales Protegidas", description: `Obtiene la lista de áreas naturales protegidas de Colombia. Puede filtrar por departamento. Args: - department_id (number, opcional): ID del departamento para filtrar Returns: Lista de áreas naturales con nombre, categoría y departamento. Ejemplo de uso: - "¿Cuáles son los parques naturales de Colombia?" - "Áreas naturales en el Amazonas"`, inputSchema: { department_id: z.number().int().optional().describe("ID del departamento para filtrar"), }, annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true, }, }, async ({ department_id }) => { try { let areas: any[]; if (department_id) { areas = await apiRequest<any[]>(`/Department/${department_id}/naturalareas`); } else { areas = await apiRequest<any[]>("/NaturalArea"); } const resultado = { total: areas.length, areas_naturales: areas.map(a => ({ id: a.id, nombre: a.name, categoria: a.categoryNaturalArea?.name || "N/A", departamento_id: a.departmentId, area_hectareas: a.areaHa, })), }; return { content: [ { type: "text", text: JSON.stringify(resultado, null, 2), }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error al obtener áreas naturales: ${error instanceof Error ? error.message : "Error desconocido"}`, }, ], }; } } );

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/crexative/colombia-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server