yerevan-gis-mcp
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_layersA | Find datasets on the Yerevan city GIS portal by keyword. Returns curated layers with their layer_key, what each row is, geometry, approximate feature count and domain. Use this first to discover what data exists, then pass a returned layer_key to describe_layer / query_layer / query_near_point. Domains: air_quality, environment, cadastre, zoning, construction, transport, amenities, admin, addressing. English or Armenian keywords both work. |
| describe_layerA | Inspect one layer's schema: its fields (name, type, Armenian alias), geometry type, feature count and capabilities. Pass a curated layer_key from search_layers, OR any service_path + layer_id to reach a layer that isn't in the catalog. Remember many Yerevan layers are NOT layer 0. |
| query_layerA | Run an attribute query against any layer and get rows back as JSON. This is the workhorse: set where='1=1' to dump a whole table (paginated automatically), or a SQL where clause to filter. Geometry is off by default; set return_geometry=true to get WGS84 lat/lon. Armenian category values are free text (no coded domains) — use get_distinct_values to discover exact spellings. Numeric air-quality metrics are sometimes stored as strings. |
| count_featuresA | Count features matching a where clause, without pulling the rows. Cheap way to answer 'how many X' or to size a query before fetching. Works on any layer. |
| get_distinct_valuesB | List the distinct values of one field — the way to discover the exact (Armenian, free-text) categories a layer uses before filtering on them, e.g. the land-use types in the master plan or the districts in a POI layer. |
| query_near_pointA | Find features of a layer within a radius of a lon/lat point — 'what is near me'. Great for nearest bus stops, air sensors, construction sites, or the parcel/zoning at a location (use radius 0 with a polygon layer for an exact point-in-polygon hit). Returns rows sorted by nothing in particular; compute distance client-side if needed. |
| aggregateA | Server-side aggregation (count/min/max/avg/sum), optionally grouped by a field — e.g. count parcels per district, average sensor AQI, max reading date. Cheaper and more precise than pulling rows and summing client-side. |
| get_map_imageA | Render a PNG map image of an area from a MapServer service and return the image URL (href). Use for a quick visual of a bounding box. Provide a WGS84 bbox as xmin,ymin,xmax,ymax. Not all services publish a MapServer; FeatureServers do not. |
| list_service_layersA | List the layers and tables inside a raw ArcGIS service, for exploring services that aren't in the curated catalog. Returns each layer's id, name and geometry so you can pick the right layer_id (Yerevan services often skip layer 0). |
| get_air_qualityA | Current air quality in Yerevan from the live sensor network (PM2.5, PM10, NO2, US EPA AQI, temperature, humidity). Call with a lon/lat to get the nearest station and its reading; call with no location to get a city overview (average AQI + the worst stations right now). AQI categories: 0-50 Good, 51-100 Moderate, 101-150 Unhealthy for Sensitive Groups, 151-200 Unhealthy, 201-300 Very Unhealthy, 301+ Hazardous. |
| get_air_quality_forecastA | Yerevan's predicted city-wide AQI for the coming days (from the portal's Predicted_AQI model). Returns date + predicted AQI + category. |
| get_station_historyA | Historical hourly readings for one air-quality station over the last N hours (PM2.5, PM10, NO2, AQI). Use get_air_quality first to find a station code. Times are Yerevan local (UTC+4). |
| lookup_parcelA | Look up cadastral parcel(s). Provide a full or partial cadastral code (e.g. '01-001-0023-0171' for one parcel, or '01-006-' for a whole block/district prefix), OR a lon/lat to find the parcel at that point. Returns the cadastral code, region/district, subtype and area (m²). |
| get_zoning_at_pointA | What is the land-use / zoning designation at a location? Point-in-polygon against the city master plan. Returns the land category (target purpose) and functional use. Also useful to answer 'is this area residential / industrial / green / protected'. |
| list_construction_projectsA | List construction sites / permits, optionally filtered by district and status. Returns address, developer, description, permit expiry, area and coordinates. Status values: 'Ընթացքում գտնվող' (in progress), 'Չսկսված' (not started). |
| get_district_profileA | A quick statistical profile of one administrative district: parcel count, building count and active construction projects. Uses the cadastral code prefix for the district (01-001 … 01-012). |
| find_nearby_amenitiesA | Find the nearest amenities of a given kind to a lon/lat point, sorted by distance. Kinds: bus_stop, metro_station, air_sensor, waste_bin, kindergarten, hotel, construction, elevator, plaque, monument, cemetery, substation, medical_center. Good for 'nearest bus stop', 'closest air sensor', 'kindergartens within 1km'. |
| search_streetA | Search Yerevan streets by (Armenian) name — the portal's stand-in geocoder, since the real geocoder needs a token. Returns matching street names, their toponym id and status, from the official register. Names are Armenian only (no Latin/English). Also finds renamed streets via previous names. |
| list_investment_projectsA | List the municipality's investment / redevelopment projects by name (Promenad, Monte, etc.), plus the Monte project's lot subdivision where available. Note: the portal only exposes project names and 3D footprints anonymously — status, owner and priority-for-sale data live in a separate, access-restricted layer, so those aren't available here. |
| get_kindergarten_financeA | Municipal kindergarten financing totals per year (2019-2025). Returns each year and its total financing amount (AMD). |
| search_heritageA | Search cultural heritage — memorial plaques and monuments — by name/address text (Armenian). Plaques return who is honoured + address + the authorising council decision; monuments return name, category, address and historical period. |
| list_public_appsA | List the Yerevan municipality's public web apps and dashboards (air pollution, construction permits, master plan, investment projects, monuments, waste bins, elevators…). Returns titles, kinds and viewer URLs. |
| search_portal_itemsA | Search the ArcGIS portal's item catalog (feature services, web maps, dashboards, apps) published by the municipality. Excludes Esri's default basemaps. Use this to discover datasets or apps beyond the curated catalog. Returns id, type, title and owner. |
| get_web_map_layersA | Read the operational layers of a portal web map or app by item id (from search_portal_items or list_public_apps). Reveals which feature-service URLs an app is built on — a fast way to discover the data behind a public map. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mheryerznkanyan/yerevan-gis-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server