Compatible with every major AI agent and IDE
What is the OpenStreetMap MCP Server?
Connect your AI agent to the world's largest open geographic database. This server enables full interaction with the OpenStreetMap API (v0.6), allowing you to query, create, and update geospatial data through natural conversation.
What you can do
- Map Data Retrieval — Fetch raw OSM data (nodes, ways, relations) within specific bounding boxes for analysis or visualization.
- Element Management — Create, read, update, or delete map elements including points of interest (nodes), roads (ways), and complex boundaries (relations).
- Changeset Workflows — Open, update, and close changesets to group your edits and provide meaningful metadata to the OSM community.
- Historical Analysis — Retrieve the full version history of any map element to track changes over time.
- Advanced Querying — Filter changesets by user, time range, or geographic area to monitor local mapping activity.
How it works
- Subscribe to this server
- Enter your OpenStreetMap OAuth Token
- Start exploring and editing the map from Claude, Cursor, or any MCP-compatible client
Your AI can now act as a GIS specialist, helping you audit map data or contribute to open-source geography without leaving your workspace.
Who is this for?
- GIS Analysts — quickly extract raw map data for specific regions without manual exports
- Open Source Contributors — automate the creation of map elements and manage changesets via chat
- Developers — inspect map element metadata and history directly while building location-based services
Built-in capabilities (33)
Close a changeset
Close a map note
Add a comment to an existing map note
Create a new changeset
Create a new node, way, or relation
Create a new map note
Delete a node, way, or relation
Delete a message
Download a changeset in OsmChange format
Get details for the authenticated user
Read a changeset by ID
Read a node, way, or relation by ID
Get the history of a node, way, or relation
Multi-fetch nodes, ways, or relations
Download data for a GPS trace
Read metadata for a GPS trace
Get the authenticated user's message inbox
Get map data (nodes, ways, relations) within a bounding box
Read a specific message
Read a map note by ID
Get the authenticated user's message outbox
Get OAuth permissions for the authenticated user
Get details for a specific user
Get preferences for the authenticated user
List map notes within a bounding box
List GPS traces for the authenticated user
Query changesets with filters
Search for map notes
Send a private message to another user
Update tags of an open changeset
Update an existing node, way, or relation
Update the read status of a message
Upload a GPS trace (GPX)
Why Pydantic AI?
Pydantic AI validates every OpenStreetMap tool response against typed schemas, catching data inconsistencies at build time. Connect 33 tools through Vinkius and switch between OpenAI, Anthropic, or Gemini without changing your integration code. full type safety, structured output guarantees, and dependency injection for testable agents.
- —
Full type safety: every MCP tool response is validated against Pydantic models, catching data inconsistencies before they reach your application
- —
Model-agnostic architecture. switch between OpenAI, Anthropic, or Gemini without changing your OpenStreetMap integration code
- —
Structured output guarantee: Pydantic AI ensures tool results conform to defined schemas, eliminating runtime type errors
- —
Dependency injection system cleanly separates your OpenStreetMap connection logic from agent behavior for testable, maintainable code
OpenStreetMap in Pydantic AI
OpenStreetMap and 4,000+ other MCP servers. One platform. One governance layer.
Teams that connect OpenStreetMap to Pydantic AI through Vinkius don't need to source, host, or maintain individual MCP servers. Every tool call runs inside a hardened runtime with credential isolation, DLP, and a signed audit chain.
Raw MCP | Vinkius | |
|---|---|---|
| Server catalog | Find and host yourself | 4,000+ managed |
| Infrastructure | Self-hosted | Sandboxed V8 isolates |
| Credential handling | Plaintext in config | Vault + runtime injection |
| Data loss prevention | None | Configurable DLP policies |
| Kill switch | None | Global instant shutdown |
| Financial circuit breakers | None | Per-server limits + alerts |
| Audit trail | None | Ed25519 signed logs |
| SIEM log streaming | None | Splunk, Datadog, Webhook |
| Honeytokens | None | Canary alerts on leak |
| Custom domains | Not applicable | DNS challenge verified |
| GDPR compliance | Manual effort | Automated purge + export |
Why teams choose Vinkius for OpenStreetMap in Pydantic AI
The OpenStreetMap MCP Server runs on Vinkius-managed infrastructure inside AWS — a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts. All 33 tools execute in hardened sandboxes optimized for native MCP execution.
Your AI agents in Pydantic AI only access the data you authorize, with DLP that blocks sensitive information from ever reaching the model, kill switch for instant shutdown, and up to 60% token savings. Enterprise-grade infrastructure, zero maintenance.

* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
How Vinkius secures
OpenStreetMap for Pydantic AI
Every tool call from Pydantic AI to the OpenStreetMap MCP Server is protected by DLP redaction, cryptographic audit chains, V8 sandbox isolation, kill switch, and financial circuit breakers.
Frequently asked questions
How can I download map data for a specific region?
Use the get_map_data tool by providing a bounding box string (left, bottom, right, top). The agent will retrieve all nodes, ways, and relations within those coordinates.
Can I see who edited a specific road or building?
Yes! Use the get_element_history tool with the element type (node, way, or relation) and its ID. It will return the full version history, including timestamps and user information.
Is it possible to search for recent map updates in a city?
You can use query_changesets with a bbox (bounding box) parameter. This will list all changesets that intersect with that area, allowing you to inspect recent mapping activity.
How does Pydantic AI discover MCP tools?
Create an MCPServerHTTP instance with the server URL. Pydantic AI connects, discovers all tools, and generates typed Python interfaces automatically.
Does Pydantic AI validate MCP tool responses?
Yes. When you define result types as Pydantic models, every tool response is validated against the schema. Invalid data raises a clear error instead of silently corrupting your pipeline.
Can I switch LLM providers without changing MCP code?
Absolutely. Pydantic AI abstracts the model layer. your OpenStreetMap MCP integration works identically with OpenAI, Anthropic, Google, or any supported provider.
MCPServerHTTP not found
Update: pip install --upgrade pydantic-ai
Explore More MCP Servers
View all →
Zesty.io
8 toolsManage content models, items, and instances via the Zesty.io API.

Billsby
10 toolsManage subscription billing via Billsby — list customers, subscriptions, and invoices directly from any AI agent.

HRBlade
6 toolsStreamline recruitment with an ATS that manages job postings, candidate pipelines, and interview scheduling for growing teams.

GrowthZone
8 toolsAutomate association management via GrowthZone — manage contacts, memberships, events, and organizations directly from any AI agent.
