Model Context Protocol server for OpenStreetMap data
This package provides OpenStreetMap integration for MCP, allowing users to query and visualize map data through an MCP interface.
This is my claude_desktop_config.json:
{
"mcpServers": {
"OSM PostgreSQL Server": {
"command": "/Users/wiseman/.local/bin/uv",
"args": [
"run",
"--env-file",
".env",
"--with",
"mcp[cli]",
"--with",
"psycopg2",
"--with-editable",
"/Users/wiseman/src/mcp-osm",
"--directory",
"/Users/wiseman/src/mcp-osm",
"mcp",
"run",
"mcp.py"
]
}
}
}
When the MCP server starts it also starts a web server at http://localhost:8889/ that has the map interface.
The following environment variables can be used to configure the MCP:
FLASK_HOST - Host for the Flask server (default: 127.0.0.1)FLASK_PORT - Port for the Flask server (default: 8889)PGHOST - PostgreSQL host (default: localhost)PGPORT - PostgreSQL port (default: 5432)PGDB - PostgreSQL database name (default: osm)PGUSER - PostgreSQL username (default: postgres)PGPASSWORD - PostgreSQL password (default: postgres)The following MCP tools are available:
get_map_view - Get the current map viewset_map_view - Set the map view to specific coordinates or boundsset_map_title - Set the title displayed at the bottom right of the mapadd_map_marker - Add a marker at specific coordinatesadd_map_line - Add a line defined by a set of coordinatesadd_map_polygon - Add a polygon defined by a set of coordinatesquery_osm_postgres - Execute a SQL query against the OpenStreetMap databaseAn MCP (Model Context Protocol) server for executing macOS terminal commands with ZSH shell. This server provides a secure way to execute shell commands with built-in whitelisting and approval mechanisms.
MCP server for FindMine's product styling AI