← Back to blog
·The Mappt team

Build maps from Claude and ChatGPT: the Mappt MCP server

Mappt now speaks MCP, the Model Context Protocol. That means an AI assistant can use Mappt directly: create a project, pull in data, build and style layers, and publish a public map you can send to anyone. You describe the map; the assistant does the clicking.

It works with Claude, ChatGPT, Claude Code, Cursor, and any other MCP client. Below is everything you need to get it running, plus an honest account of what it will and will not do.

What you can ask for

Here is the flow the whole thing was built around. Paste something like this into a Claude conversation with Mappt connected:

Create a project called Split Audit, add all primary schools in Split from OpenStreetMap as orange points, then publish a 30-day public view and give me the link.

You get back a URL that opens in any browser, with no Mappt account needed to view it. That is the part worth paying attention to: the assistant does not hand you a screenshot or a blob of GeoJSON, it hands you a real, live, shareable map.

Before you start

API access is included on Starter and above. On the free plan the keys page still renders so you can see exactly what you would get, but creating a key is disabled.

Option 1: connect Claude with one click

Best for Claude on the web or desktop. You never copy a token anywhere - you sign in to Mappt and approve, the way you would connect any other app.

  1. In Claude, open Settings then Connectors, and choose Add custom connector.
  2. Paste https://app.mappt.ai/api/v1/mcp as the server URL. Leave every other field alone.
  3. Claude will send you to Mappt to sign in. If you are already signed in, you go straight to the approval screen.
  4. Read what it is asking for, then choose Connect. You land back in Claude with the tools available.

The approval screen names the application by its web address, not by whatever name it gave itself, because a name is something any application can choose and an address is not. It also lists every permission in plain language. If you ever want to cut it off, go to Connected apps in Mappt and disconnect; access stops on the next request.

Option 2: connect with an API key

Best for Claude Code, Cursor, scripts and CI: anything with no browser to sign in from. Signing in needs a human to click approve; a key does not. Note that ChatGPT cannot use a key at all, so use option 1 there.

  1. In Mappt, open API keys and choose New key.
  2. Name it after where it will live, like Claude Code on my laptop, so revoking the right one later is obvious.
  3. Pick scopes. Read and Write cover building maps. Add Manage only if you want it to publish public views.
  4. Copy the token. It is shown once and stored only as a hash, so if you lose it you replace it rather than recover it.

Then point Claude Code at it:

claude mcp add --transport http mappt \
  https://app.mappt.ai/api/v1/mcp \
  --header "Authorization: Bearer mappt_pat_your_key_here"

Or call the REST API directly, with the same key:

curl https://app.mappt.ai/api/v1/projects \
  -H "Authorization: Bearer mappt_pat_your_key_here"

The fifteen tools

Deliberately a short list. Assistants pick the right tool reliably from about ten and get noticeably worse past forty, so this is the smallest set that covers the real work.

  • Projects. mappt_list_projects, mappt_get_project, mappt_create_project
  • Layers. mappt_create_layer_from_geojson, mappt_update_layer, mappt_delete_features, mappt_delete_layer, mappt_get_layer_provenance
  • Reading data. mappt_list_features, mappt_search_features, mappt_aggregate_features, mappt_get_property_values
  • Doing the work. mappt_agent_task is the one that turns a sentence into a map: OpenStreetMap by area, census boundaries, population data, places, geocoding, choropleths, hexbins. mappt_wait_for_job waits for the slow ones.
  • Publishing. mappt_publish_view returns the public URL.

Provenance, including the gaps

mappt_get_layer_provenance reports where a layer's data came from, and it also returns an explicit list of what it cannot tell you. We would rather hand you a record with holes you can see than a confident one you cannot check.

What it will not do

The limits are the design, not a roadmap gap. An assistant acting on your account should not be able to do damage you did not ask for.

  • Two tools remove data, and both say so. Deleting features and deleting a layer are both annotated destructive, so a host asks before running either. Both need the write scope, and both save a restore point first so you can undo them in Mappt. Deleting a project is deliberately not offered: it cascades to the very checkpoints that would undo it, so it is the one removal nothing could take back.
  • No credentials through a chat. It cannot create database connections, because that would mean passing your database password through an AI tool call and into a transcript.
  • Publishing is always deliberate. It needs the Manage scope, which is off by default, and it is always its own separate step rather than something another tool can do quietly.
  • No permanent public links. A view published this way caps at 30 days. Forever is refused.
  • It can never exceed you. A key or a connection narrows your own access and never widens it. Connect it to a project you can only read, and it can only read.

Feature properties often come from third parties - OpenStreetMap tags, places data - so anything read from them is passed to the model marked as untrusted content rather than as instructions.

Keeping an eye on it

Every key has a daily request budget, and the keys page shows what each one spent today. Give a key its own tighter cap if you want a hard ceiling on an experiment. Revoking takes effect on the very next request, because nothing about a key is cached.

Getting started

The connector URL is https://app.mappt.ai/api/v1/mcp, and the full tool reference is on the MCP server page - readable without an account, so you can see exactly what you would be connecting before you sign up for anything.

If a tool picks wrong, or you want one that does not exist yet, tell us. Tool descriptions are the documentation an assistant actually reads, and we tune them against real sessions.

Build maps from Claude and ChatGPT: the Mappt MCP server | Mappt