MCP server for India maps - place search, nearby discovery, & directions powered by the Mappls API.
MCP Server for Mappls / MapMyIndia APIs
An MCP (Model Context Protocol) server that exposes Mappls / MapMyIndia APIs as tools for AI assistants like Claude. Enables geocoding, reverse geocoding, place search, nearby discovery, routing, and distance calculations — all focused on India's mapping data.
| Tool | Description |
|---|---|
geocode | Convert an address or place name to coordinates |
reverse_geocode | Convert coordinates (lat/lng) to a human-readable address |
places_search | Autocomplete and search for places by query string |
nearby | Discover nearby places by keyword around a reference location |
directions | Get turn-by-turn directions between two points (supports waypoints) |
distance_matrix | Compute travel distance and time between multiple origins and destinations |
place_detail | Fetch detailed information for a place using its eLoc (Mappls place ID) |
Register at https://apis.mappls.com to get either:
Set one of the following in your environment:
Option A — OAuth (Client Credentials): RECOMMENDED
export MAPPLS_CLIENT_ID=your_client_id
export MAPPLS_CLIENT_SECRET=your_client_secret
Option B — API Key:
export MAPPLS_API_KEY=your_api_key_here
Add to your claude_desktop_config.json:
{
"mcpServers": {
"mapmyindia": {
"command": "npx",
"args": ["-y", "@bhuvsh/mcp-mapmyindia"],
"env": {
"MAPPLS_CLIENT_ID": "your_client_id",
"MAPPLS_CLIENT_SECRET": "your_client_secret"
}
}
}
}
Or with API key:
{
"mcpServers": {
"mapmyindia": {
"command": "npx",
"args": ["-y", "@bhuvnsh/mcp-mapmyindia"],
"env": {
"MAPPLS_API_KEY": "your_api_key_here"
}
}
}
}
Config file location:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json# Clone and install
git clone https://github.com/bhuvnsh/mcp-mappls.git
cd mcp-mappls
npm install
# Build
npm run build
# Run tests
npm test
# Watch mode (dev)
npm run dev
Contributions are welcome. Please open an issue first to discuss what you'd like to change. Pull requests should include tests.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y @bhuvnsh/mcp-mapmyindiaMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-bhuvnsh-mcp-mapmyindia": {
"command": "npx",
"args": [
"-y",
"@bhuvnsh/mcp-mapmyindia"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup reference@bhuvnsh/mcp-mapmyindianpmio.github.bhuvnsh/mcp-mapmyindia works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.