Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Inicia sesión con Google para escribir reseñas.Prototipo · se actualiza cada 30 min
PopNx MCPServidores MCP para quienes usan IA · en palabras sencillas

Mapsmith

de mapsmith-aiversión 0.12.1i★ 2iSe ejecuta en tu computadora
Nombre en el registroio.github.mapsmith-ai/mapsmith

Cómo instalar

What it does

Deterministic GIS geoprocessing with verifiable provenance on every output

  • Connects Se ejecuta en tu computadora
  • Account or key No key needed
  • Category Otros

Instalación

Elige la app de IA que usas y copia la configuración.

Pasó 3/3 revisiones · Funciona en tu computadora

Primero: ¿qué IA usas?

Elige tu app y los pasos aparecen abajo.

Funciona con Claude, pero hay que preparar algo antes

Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil

  1. Instala Python (uv)

    Una sola vez; sirve para todos los servidores que necesitan Python (uv)

    Abrir la página de descarga de Python (uv) ↗

  2. Regístrate y crea una clave de Mapsmith

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.

    Abrir el sitio de Mapsmith ↗

  3. Abre el archivo de configuración de la app de Claude de escritorio

    SettingsDeveloperEdit Config

  4. Pega esta configuración y guarda el archivo

    Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  5. Cierra Claude y vuelve a abrirlo

  6. Pruébalo

    Usa Mapsmith y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Claude dice que está usando Mapsmith o muestra una herramienta de Mapsmith en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión

ChatGPT todavía no puede conectar Mapsmith

Mapsmith se instala en tu computadora, pero ChatGPT solo conecta servidores que funcionan en la web

Lo que puedes hacer en su lugar

A · Usa una app que pueda conectar Mapsmith

  • Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil
  • Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)
  • Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)
  • Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)

B · Otros en Otros que funcionan con ChatGPT

Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave

Funciona con Claude Code, pero hay que preparar algo antes

Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)

  1. Instala Python (uv)

    Una sola vez; sirve para todos los servidores que necesitan Python (uv)

    Abrir la página de descarga de Python (uv) ↗

  2. Regístrate y crea una clave de Mapsmith

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.

    Abrir el sitio de Mapsmith ↗

  3. Abre la Terminal

    Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell

  4. Pega este comando y pulsa Enter

    Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

    Cambia “your-value” por tu clave antes de pulsar Enter

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  5. Escribe /mcp en Claude Code

    Deberías ver Mapsmith en la lista como conectado

  6. Pruébalo

    Usa Mapsmith y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Claude Code dice que está usando Mapsmith o muestra una herramienta de Mapsmith en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Funciona con Cursor, pero hay que preparar algo antes

Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)

  1. Instala Python (uv)

    Una sola vez; sirve para todos los servidores que necesitan Python (uv)

    Abrir la página de descarga de Python (uv) ↗

  2. Regístrate y crea una clave de Mapsmith

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.

    Abrir el sitio de Mapsmith ↗

  3. Pulsa este botón para abrir Cursor

    Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

  4. Escribe tu clave

    En la configuración de Mapsmith, MAPSMITH_WORKSPACE está vacío; añade tu clave y guarda

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  5. Abre el chat de IA de Cursor en modo Agent

  6. Pruébalo

    Usa Mapsmith y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Cursor dice que está usando Mapsmith o muestra una herramienta de Mapsmith en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Funciona con VS Code, pero hay que preparar algo antes

Necesitas una clave de Mapsmith (créala en el sitio del autor) · Instala Python (uv) en tu computadora primero (una sola vez)

  1. Instala Python (uv)

    Una sola vez; sirve para todos los servidores que necesitan Python (uv)

    Abrir la página de descarga de Python (uv) ↗

  2. Regístrate y crea una clave de Mapsmith

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.

    Abrir el sitio de Mapsmith ↗

  3. Pulsa este botón para abrir VS Code

    Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

  4. Escribe tu clave

    En la configuración de Mapsmith, MAPSMITH_WORKSPACE está vacío; añade tu clave y guarda

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  5. Abre el chat de IA de VS Code en modo Agent

  6. Pruébalo

    Usa Mapsmith y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si VS Code dice que está usando Mapsmith o muestra una herramienta de Mapsmith en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps

Ver todas las apps que usan MCP →

La configuración JSON está en “Para desarrolladores”, abajo

¿Te atascaste? Pregunta a quien usa Mapsmith💬 Conversación →
Para desarrolladores: comandos de Terminal y configuración JSON

Instalado en tu computadora

Claude Code

Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

Claude Desktop (claude_desktop_config.json)

Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

Cursor (~/.cursor/mcp.json)

Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

VS Code (mcp.json)

Revisando los comandos · los botones de copiar aparecen cuando pasan la revisión

Valores que debes completar

  • MAPSMITH_WORKSPACE env
    Confine all reads/writes to this directory (path jail + sandboxed SQL engine)

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

De un vistazo

Descargas por semanai
147/sem
Licenciai
AGPL-3.0
Conexión
Se ejecuta en tu computadora
Última versióni
0.12.1
Categoríai
Otros
Publicado en el registroi
3 nov 2026
Último cambio de códigoi
12 nov 2026
Creador
mapsmith-ai
Paquetes
pypi: mapsmith
oci: ghcr.io/mapsmith-ai/mapsmith:0.12.1
Sitio web
github.com
Estado en el registro
Activo

Qué apps pueden usarlo

Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.

Se ejecutan en tu computadora en

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

Todas las apps, con ventajas y desventajas →

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 13 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub mapsmith-ai, dueña del repo

  • ✓ Superada

    Sigue en mantenimiento

    Último cambio de código: ayer

  • ✓ Superada

    Tiene licencia

    Usa AGPL-3.0

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Conversación

Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.

Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.

Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.

Inicia sesión con Google para publicar

Reseñas de usuarios

Aún no hay reseñas

Inicia sesión con Google para escribir una reseña

Comparado con otros en Otrosi

  • Más estrellas que el 91% de los otros 19470 servidores de esta categoría
  • Publicado en el registro más recientemente que el 80% de los otros 19470 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 19470 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Mapsmith?

Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez ayer, y la última versión (0.12.1) llegó al registro hace 10 días.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv), Docker en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: World Monitor, Claude Flow, Windmill

Otros de la misma categoría

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

World Monitor

Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.

de koala73Muy usado★ 90,5 milActualizado ayer

Se ejecuta en la nube✓ del servicio · worldmonitor.app

Claude Flow

AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.

de ruvnetMuy usado↓ 13,5 mil/sem★ 81,5 milActualizado hace 14 meses

Se ejecuta en tu computadora

Windmill

Run Windmill scripts and flows and manage jobs, schedules, resources and variables.

de windmill-labsMuy usado★ 18,6 milActualizado ayer

Se ejecuta en la nube

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

MapSmith

Ask a question about your data. Get an analysis — and the record that proves it.

Most GIS servers hand an agent a tool to run. MapSmith takes the question, works out the *analysis* — usually several operations, in an order that has to be right — validates the plan before a single file is touched, runs it, and leaves a record of every step — which bytes went in, with which parameters and CRS decisions, and which checks ran — that somebody else can read afterwards and rerun to confirm.

Try it

Point any MCP client at MapSmith (one JSON block) and ask, in your own words:

Which parcels lie within 1.5 km of the river and sit at 120 m or lower? Give me the mean

elevation and the ground area of each.

That is five operations, two coordinate systems and forty-eight checks. [What actually happens is below](#a-whole-analysis-start-to-finish) — the plan, the step that gets rejected for reading something a later step produces, the CRS decision behind every metric step, and an answer you can work out on paper before MapSmith sees the files. That rejection is structural, and so is every other one: a plan that is well formed and answers the wrong question runs instead, which is measured and written down further down this page.

The operations are executed by GeoPandas, DuckDB Spatial, exactextract and Whitebox Workflows — never by the model that asked for them. Every dataset lands on disk next to a lineage manifest: inputs with checksums, the exact parameters, the CRS decisions and *why*, engine versions, and the deterministic checks that ran on the result.

[mapsmith.dev](https://mapsmith.dev) — a real terrain analysis and the manifest that came with it. Both are build products: the figure is rendered from GeoTIFFs MapSmith writes, so the page cannot drift from what the software does.

The manifest is a specified format, not MapSmith's private output: JSON Schema, a toolchain-free validator, a conformance suite, and a hundred-line emitter that never imports MapSmith. Records carry spec_version, and CI validates real MapSmith output against the spec's own validator. The specification is archived and citable as 10.5281/zenodo.22205213, a concept DOI that resolves to the latest *archived* draft. Records written by 0.8.0 to 0.12.1 declare 1.0.0-draft.10, and 0.7.x's declare 1.0.0-draft.8; if the DOI shows an earlier one, the archive has not caught up, and the repository holds the text they are written against. The names MapSmith puts in a record beyond the ones the specification defines — every extension check name, and every extension field in crs_decisions with the reason it is not a synonym of a key the specification already has — are listed in docs/manifest-vocabulary.md, generated from the source rather than maintained by hand.

Evidence before promises. A correctness suite in its own organisation, Argleton, grades MapSmith on thirty-three traps whose answers are computed on paper before any system runs: 0.00 silent errors, nothing skipped, against 0.8788 for the obvious way of writing the same code. The runs from 2026-08-30 to 2026-09-15 said 0.00 too, and on one trap they were wrong: its truth was wrong in MapSmith's favour for 26 days, the error was ours twice over, and the erratum says so. Every run since 2026-09-26, the current one included, is scored against the corrected truth. Getting here cost seven defects the suite sent back, and they are listed. Alongside it: an A/B on GABench whose headline is a null result — with the analysis that took our own positive number apart — notebooks on a real USGS DEM of Mount St. Helens, an in-chat map panel that shows the verification status of every layer it draws, and a measurement of our own tool discovery that retracted two numbers this page had already published — including the one in the bullet list below.

A whole analysis, start to finish

This is the thing MapSmith is for, and it is not a single tool call. One question — six parcels, a river, an elevation grid — becomes a plan of five operations chosen out of 81, validated before anything runs, executed step by step, and recorded: the search that narrowed the catalogue, the arguments that mattered, the CRS decision behind each metric step, and the checks that ran on every result.

Nothing in this section is drawn. benchmarks/worked_example.py builds fixtures whose answer can be worked out on paper, asks the catalogue in the words of the problem, validates and runs the plan, reads the manifests, and writes what follows; tests/test_worked_example.py fails if this page and that script disagree. The position column is BM25's rather than the default engine's, because a published figure should not depend on whether a model download succeeded on the machine that built the page — the narrowing, which is the point, is identical on both. Two things worth watching: the middle column, where the catalogue goes from 81 operations to a handful the caller can read; and the CRS column, where every metric operation says which coordinate system it moved the data into and why.

flowchart TB

ASK[" Parcels within 1.5 km of the river whose mean ground elevation is at most 120 m, with the elevation and the ground area of each "] ASK --> PLAN{{"plan validated before anything runs"}} PLAN -. "rejected: FORWARD_REFERENCE" .-> BAD["'mask_path' references '$buffer' which runs later — move step 'buffer' before 'near'"] BAD:::bad BUFFER[" buffer_layer 81 operations → 28 candidates → chosen CRS EPSG:32610 9/9 checks"] PLAN --> BUFFER NEAR[" clip_layer 81 operations → 13 candidates → chosen CRS EPSG:4326 12/12 checks"] BUFFER --> NEAR HEIGHT[" zonal_statistics 81 operations → 2 candidates → chosen CRS EPSG:4326 7/7 checks"] NEAR --> HEIGHT AREA[" measure_area 81 operations → 25 candidates → chosen CRS WGS 84 (ellipsoidal) 10/10 checks"] HEIGHT --> AREA FILTER[" select_features 81 operations → 25 candidates → chosen CRS EPSG:4326 10/10 checks"] AREA --> FILTER OUT[["3 parcels, each with elevation and ground area"]] FILTER --> OUT classDef bad stroke-dasharray: 4 3

what the agent asks forit declarescandidatespickedat position
“everything within one and a half kilometres of the river”vector, dataset:vector, 1 dataset(s), line28 of 81buffer_layer2
“keep only the parcels that fall inside that strip”vector, dataset:vector, 2 dataset(s), polygon13 of 81clip_layer1
“how high is the ground under each of these parcels”raster, dataset:vector, 2 dataset(s), polygon2 of 81zonal_statistics2
“how big is each one on the ground”vector, dataset:vector, 1 dataset(s), polygon25 of 81measure_area1
“drop the ones where the ground is above 120 metres”vector, dataset:vector, 1 dataset(s), polygon25 of 81select_features1
stepoperationarguments that matteredCRS decision, recordedchecks
bufferbuffer_layerdistance_meters=1500EPSG:32610 — estimated UTM zone for metric buffering on a geographic CRS9/9
nearclip_layermask_path=$bufferEPSG:4326 — the mask is already in the input layer's CRS; nothing was reprojected12/12
heightzonal_statisticszones_path=$near, stats=['mean', 'min']EPSG:4326 — zones and raster share the same CRS7/7
areameasure_areainput_path=$height, method=geodesicWGS 84 (ellipsoidal) — ground area computed on the WGS 84 ellipsoid, which is where the coordinates are put first; no map plane is involved, so no projection distortion enters10/10
filterselect_featuresinput_path=$area, by=field_between, field=mean, maximum=120EPSG:4326 — no CRS change: selecting rows does not touch coordinates10/10

Every step is inside the plan, the last one included: select_features took 4 rows and returned 3, with a manifest like every other write. This step used to run outside the plan, because the only operation that could answer it was run_sql — which takes its inputs inside a SQL string, declares zero datasets, and therefore cannot join the plan's dataflow. That boundary is deliberate and has not moved: substituting $step into arbitrary strings would be a grammar in which a planner assembles a path out of text. What changed is that it is no longer the only way to ask.

The answer, which can be worked out on paper before MapSmith sees the files: the parcels are squares of 0.0015° at 46.2°N, so each is about 119 m by 167 m, and the elevation ramps west to east across the fixture.

namemeanminarea_m2
North Field104.85104.1419303.33
Mill Meadow110.51109.819303.33
Old Orchard117.58116.8719303.33

The rejected plan is the honest half. Steps in the wrong order are the dominant failure class in the agent benchmark, so the example includes one and shows what the validator says about it, before any file is touched. It earned that place while this was being written: the first version of the plan passed distance_m where the operation declares distance_meters, and the validator named the argument and listed the three it accepts.

You can step through this on [mapsmith.dev](https://mapsmith.dev/#step-through), one beat at a time, along with a second case that GitHub cannot show as well: a file MapSmith refuses. Both are executed while that page is built. The residue of the second one is here, because it is the half nobody demonstrates.

What it declines to answer. Asked *“How high is the ground at each of these two wells?”* against a GeoTIFF that opens in every viewer:

describing the file first
georeferencing_sourcesidecar (.aux.xml)
georeferencing_sidecar_presentterrain.tif.aux.xml
georeferencing_internal_would_givecell 10 x 10 at (500000, 5030000)
terrain.tif is georeferenced twice and nobody chose: the GeoTIFF's own tags say cell 10 x 10 at (500000, 5030000), and terrain.tif.aux.xml beside it says something else. GDAL prefers the sidecar, which is correct — that is how an override works — but sample_raster_at_points would then report numbers from a file you did not name, and this record could not say which. describe_dataset lists both. To choose, either remove the sidecar or set GDAL_GEOREF_SOURCES=INTERNAL for a run that must use the file's own.

A number would have come back. It would have been read off a grid a hundred

Solo se muestra el principio; lee el resto en el repo