INEI MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| inei_get_departmentsA | List all 25 departments (regions) of Peru with their geography IDs and ubigeo codes. Returns id_geografia (used in other tools), ubigeo (6-digit code), ccdd (2-digit dept code), and department name. Use this first to get the id_geografia or ccdd needed by other tools. |
| inei_get_provincesA | List all provinces in a Peruvian department. Provide Returns province list with id_geografia, ubigeo, nombre, ccdd, ccpp. |
| inei_get_districtsC | Returns all 25 Peruvian departments (province/district data not available via current API). Note: The INEI Estadist API currently only exposes department-level geography. Use id_geografia from the results with inei_get_geography_profile for census data. |
| inei_search_indicatorsA | Search INEI thematic statistical indicators by keyword. The INEI Estadist database contains indicators from the National Census 2017 and other official surveys. Search by keyword to find indicators on population, education, housing, health, employment, poverty, and more. Returns indicator ID (id_indicador), name, and hierarchical path (ruta).
Use id_indicador with Example searches: 'poblacion', 'educacion', 'vivienda', 'salud', 'empleo', 'pobreza', 'analfabetismo', 'electricidad', 'agua', 'desague' |
| inei_get_indicator_dataA | Get census data for a geography, referencing a specific indicator ID. Requires both id_indicador (from inei_search_indicators) and id_geografia (from inei_get_departments). Returns the full census profile for that geography including population totals, housing, education, and economic indicators. Note: due to API changes, returns all available census data for the geography rather than a single filtered indicator. Scan seccion1/seccion2 for your indicator. Common indicator IDs (Census 2017):
|
| inei_browse_topicsA | Browse the INEI thematic indicator tree — all categories and sub-categories. Returns the hierarchical topic tree with ~1977 entries from the Census 2017 database. Nodes with tipo=1 are categories; tipo=2 are leaf indicators with an id_indicador. Use id_indicador (only on tipo=2 nodes) with inei_get_indicator_data (requires id_geografia). Top-level categories include DEMOGRAFICO, SOCIAL, ECONOMICO, VIVIENDA, HOGARES, EDUCACION, SALUD, EMPLEO. |
| inei_get_geography_profileA | Get the Census 2017 population profile for a specific Peruvian geography. Returns key census indicators for a department, province or district: total population, urban/rural breakdown, gender split, working-age population, electoral population, population density, and more. Provide Common department IDs:
|
| inei_get_census_dashboardA | Get national Census 2017 summary dashboard — demographics or social indicators. demografico: Population totals, age structure, gender breakdown, urban/rural split, population density, age pyramid data. social: Education (literacy, school attendance), housing (water, electricity, sanitation), health insurance coverage, household composition. Returns key national figures, charts data, and breakdowns by region.
For specific regional data, use |
| inei_get_data_sourcesA | List the official data sources available in the INEI Estadist platform. Returns source IDs, names, and descriptions. Sources include:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| demographic_analysis | Structured workflow to analyze population demographics for a Peruvian department or region |
| regional_comparison | Compare a statistical indicator across multiple Peruvian regions |
| census_deep_dive | Comprehensive Census 2017 analysis combining demographics, social indicators, and housing |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| INEI API Guide | Complete reference for the INEI Estadist API — endpoints, IDs, and data model |
| Peru Department Codes | Quick reference table of all 25 Peruvian departments with ubigeo codes and IDs |
| INEI Thematic Categories | Top-level thematic categories in the INEI indicator database with example indicator IDs |
TDQS
Scored across 9 tools
The tool set has a major disambiguation problem due to inei_get_districts being misnamed: its description says it returns all 25 departments, not districts, making it redundant with inei_get_departments. Other tools like inei_browse_topics, inei_search_indicators, and inei_get_indicator_data have distinct roles, but the duplication causes confusion.
All tools use the 'inei_' prefix and snake_case, with a consistent verb_noun pattern (get_*, browse_*, search_*). However, inei_get_districts is misleading because it does not return districts but departments, breaking semantic consistency. inei_get_census_dashboard uses 'dashboard' instead of a data-object noun, which is a minor deviation.
With 9 tools, the set is well-scoped for a statistical API covering browsing, searching, geography listing, geography profiling, and data retrieval. Each tool has a clear purpose, and the count feels neither too sparse nor overwhelming.
The set covers the main workflows: explore topics, search indicators, retrieve data by geography, and get national summaries. It can handle department and province queries. However, the duplicate get_districts tool is unnecessary, and the API's limitation to department-level geography (no district data) is a domain constraint. Minor gaps exist (e.g., no hierarchical drill-down beyond two levels), but overall coverage is good for a read-only census API.