
Research
/Security News
Popular npm Packages in the keyv and Cacheable Namespaces Compromised in Active Supply Chain Attack
Popular npm packages keyv and cacheable compromised.
@quantaroute/mcp-server
Advanced tools
MCP server and REST API for QuantaRoute Geocoding API - Geocode addresses, lookup locations, process DigiPin codes
A Model Context Protocol (MCP) server that provides AI assistants (Claude Desktop, Cursor, and more) with powerful geocoding, location lookup, and DigiPin processing capabilities using the QuantaRoute Geocoding API.
Package: @quantaroute/mcp-server (MCP Server for AI Agents)
SDK: quantaroute-geocoding (Node.js/TypeScript SDK)
✅ Fully compatible with Claude Desktop and Cursor
✨ NEW in v1.1.0: MCP App — interactive UI rendered inline in your AI chat
This MCP server is compatible with Claude Desktop and Cursor. Follow the instructions below for your platform.
Locate the Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonEdit the configuration file and add:
{
"mcpServers": {
"quantaroute": {
"command": "npx",
"args": [
"-y",
"@quantaroute/mcp-server"
],
"env": {
"QUANTAROUTE_API_KEY": "your-api-key-here"
}
}
}
}
Add to your MCP configuration file (~/.cursor/mcp.json):
{
"mcpServers": {
"quantaroute": {
"command": "npx",
"args": [
"-y",
"@quantaroute/mcp-server"
],
"env": {
"QUANTAROUTE_API_KEY": "your-api-key-here"
}
}
}
}
Restart Cursor after making changes.
QUANTAROUTE_API_KEY (required): Your QuantaRoute API key
demo_free_key_123 (for testing)What is an MCP App?
An MCP App is an interactive UI that renders inline inside your AI chat client (Claude, Cursor) as a sandboxed panel — no browser tab, no separate window. It's powered by Anthropic's ext-apps spec.
The quantaroute-mcp-app binary adds a beautiful geocoding dashboard that auto-activates whenever an AI calls one of the three tools below. It shows results visually — DigiPin codes, coordinates, and address hierarchy — right inside the chat.
Add a second entry to ~/.cursor/mcp.json:
{
"mcpServers": {
"quantaroute": {
"command": "npx",
"args": ["-y", "@quantaroute/mcp-server"],
"env": { "QUANTAROUTE_API_KEY": "your-api-key-here" }
},
"quantaroute-app": {
"command": "npx",
"args": ["-y", "@quantaroute/mcp-server", "quantaroute-mcp-app", "--stdio"],
"env": { "QUANTAROUTE_API_KEY": "your-api-key-here" }
}
}
}
{
"mcpServers": {
"quantaroute-app": {
"command": "npx",
"args": ["-y", "@quantaroute/mcp-server", "quantaroute-mcp-app", "--stdio"],
"env": { "QUANTAROUTE_API_KEY": "your-api-key-here" }
}
}
}
| Tool | Description |
|---|---|
geocode | Address → DigiPin + coordinates, rendered as a result card |
validate_digipin | Validate a DigiPin code, shows valid/invalid badge |
lookup_location_from_coordinates | GPS coordinates → admin boundaries (state, district, pincode) |
Run the app server over HTTP (Streamable HTTP transport, MCP ext-apps compatible):
QUANTAROUTE_API_KEY=your-key npx @quantaroute/mcp-server quantaroute-mcp-app
# Listening on http://localhost:3001/mcp
geocodeGeocode an address to get DigiPin code and coordinates.
Parameters:
address (required): The address to geocodecity (optional): City namestate (optional): State namepincode (optional): Postal codecountry (optional): Country name (defaults to India)Example:
{
"address": "Rohra Address, New Town",
"city": "New Town",
"state": "West Bengal",
"pincode": "700163"
}
reverse_geocodeReverse geocode a DigiPin code to get coordinates and address.
Parameters:
digipin (required): DigiPin code (format: XXX-XXX-XXXX)coordinates_to_digipinConvert latitude and longitude to DigiPin code.
Parameters:
latitude (required): Latitude (-90 to 90)longitude (required): Longitude (-180 to 180)lookup_location_from_coordinates🚀 REVOLUTIONARY: Get administrative boundaries from coordinates.
Returns: pincode, state, division, locality, district, population density, and more.
Parameters:
latitude (required): Latitude coordinatelongitude (required): Longitude coordinatelookup_location_from_digipinGet administrative boundaries from a DigiPin code.
Parameters:
digipin (required): DigiPin codebatch_location_lookupBatch lookup for multiple locations (up to 100).
Parameters:
locations (required): Array of location objects
latitude + longitude OR digipinbatch_geocodeGeocode multiple addresses in a single request (up to 100).
Parameters:
addresses (required): Array of address objectsautocompleteGet address autocomplete suggestions.
Parameters:
query (required): Search query (minimum 3 characters)limit (optional): Max suggestions (default: 5, max: 10)find_nearby_boundaries [COMING SOON...]Find nearby postal boundaries within a radius.
Parameters:
latitude (required): Center latitudelongitude (required): Center longituderadius_km (optional): Search radius in km (default: 5.0, max: 100)limit (optional): Max results (default: 10, max: 50)validate_digipinValidate DigiPin format and check if it's a real location.
Parameters:
digipin (required): DigiPin code to validateget_usageGet API usage statistics and quota information.
get_location_statisticsGet live statistics about the Location Lookup service.
get_healthCheck API health status.
This project includes a REST API wrapper that makes all MCP tools accessible via HTTP endpoints for mobile and web applications.
The REST API is already deployed and ready to use at:
Base URL: https://mcp-gc.quantaroute.com/api
Note: mcp-gc stands for MCP Geocoding. This follows the naming convention:
mcp-gc.quantaroute.com - Geocoding MCP Server (this project)1. Get API Information:
curl https://mcp-gc.quantaroute.com/api
2. Geocode an Address:
curl -X POST https://mcp-gc.quantaroute.com/api/geocode \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key-here" \
-d '{
"address": "Rohra Address, New Town",
"city": "New Town",
"state": "West Bengal",
"pincode": "700163"
}'
3. Health Check:
curl -X GET https://mcp-gc.quantaroute.com/api/health \
-H "x-api-key: your-api-key-here"
4. Find Nearby Boundaries:[NOT RELEASED, COMING SOON...]
curl -X POST https://mcp-gc.quantaroute.com/api/find-nearby-boundaries \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key-here" \
-d '{
"latitude": 28.6139,
"longitude": 77.2090,
"radius_km": 5.0,
"limit": 10
}'
This endpoint finds nearby postal boundaries within a specified radius. Useful for:
// Geocode an address
const response = await fetch('https://mcp-gc.quantaroute.com/api/geocode', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'your-api-key-here'
},
body: JSON.stringify({
address: 'Rohra Address, Action Area I',
city: 'New Town',
state: 'West Bengal'
})
});
const data = await response.json();
console.log(data);
import requests
# Geocode an address
response = requests.post(
'https://mcp-gc.quantaroute.com/api/geocode',
headers={
'Content-Type': 'application/json',
'x-api-key': 'your-api-key-here'
},
json={
'address': 'Rohra Address, Action Area I, Ghuni',
'city': 'New Town',
'state': 'West Bengal'
}
)
data = response.json()
print(data)
If you want to deploy your own instance:
Deploy to Vercel:
vercel
Set Environment Variable (optional, for testing):
vercel env add QUANTAROUTE_API_KEY
Configure Custom Domain (optional):
For complete REST API documentation, see API.md.
Available Endpoints:
GET /api - API informationGET /api/health - Health checkGET /api/usage - Usage statisticsGET /api/location-statistics - Location service statisticsGET /api/autocomplete?q=query - Address autocompleteGET /api/validate-digipin?digipin=XXX-XXX-XXXX - Validate DigiPinPOST /api/geocode - Geocode an addressPOST /api/reverse-geocode - Reverse geocode DigiPinPOST /api/coordinates-to-digipin - Convert coordinates to DigiPinPOST /api/batch-geocode - Batch geocode addressesPOST /api/lookup-location-from-coordinates - Lookup from coordinatesPOST /api/lookup-location-from-digipin - Lookup from DigiPinPOST /api/batch-location-lookup - Batch location lookupPOST /api/find-nearby-boundaries - Find nearby boundaries [COMING SOON...]The API supports authentication in two ways:
Request Header (Recommended for production):
x-api-key: your-api-key-here
x-api-key header with each requestEnvironment Variable (Optional fallback for testing):
QUANTAROUTE_API_KEY=your-api-key-here
x-api-key header is providedPriority: The request header takes precedence over the environment variable.
Getting an API Key:
x-api-key header for all API requests# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode
npm run dev
mcp-server/
├── src/
│ ├── index.ts # Main MCP server implementation
│ └── client.ts # QuantaRoute API client
├── api/
│ └── [...path].ts # REST API wrapper (Vercel serverless function)
├── dist/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
├── vercel.json # Vercel configuration
├── README.md
└── API.md # REST API documentation
Full API documentation: https://api.quantaroute.com/v1/digipin/docs
MIT License
✅ Claude Desktop - Fully supported
✅ Cursor - Fully supported
✅ Other MCP-compatible clients - Should work with any MCP-compatible application
Once configured, AI assistants (Claude, Cursor AI, etc.) can use tools like:
User: "What's the DigiPin for Biswa Bangla Gate, New Town?"
Assistant: [Uses geocode tool]
The DigiPin code for that address is 2TF-39M-JT5F, located at coordinates 22.5788545, 88.4716628.
Full Address: Biswa Bangla Gate, New Town, Biswa Bangla Sarani, Action Area I, New Town, Bidhannagar, North 24 Parganas, West Bengal, 700156, India
User: "What administrative boundaries are at coordinates 28.6139, 77.2090?"
Assistant: [Uses lookup_location_from_coordinates tool]
That location is in:
- Pincode: 110001
- State: Delhi
- Division: New Delhi Central
- Locality: Connaught Place
- District: New Delhi
User: "What's the address for DigiPin 2TF-3FT-J825?"
Assistant: [Uses reverse_geocode tool]
The DigiPin 2TF-3FT-J825 corresponds to:
- Address: FE Block, Sector III, Bidhannagar, North 24 Parganas, West Bengal, 700106, India
- Coordinates: 22.580587°N, 88.419001°E
Server not appearing in Claude Desktop:
"Command not found" errors:
node --versionnpx is available: which npxAPI authentication errors:
QUANTAROUTE_API_KEY is set correctly in the configMCP server not loading:
~/.cursor/mcp.json exists and has valid JSONTools not available:
FAQs
MCP server and REST API for QuantaRoute Geocoding API - Geocode addresses, lookup locations, process DigiPin codes
The npm package @quantaroute/mcp-server receives a total of 29 weekly downloads. As such, @quantaroute/mcp-server popularity was classified as not popular.
We found that @quantaroute/mcp-server demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Popular npm packages keyv and cacheable compromised.

Security News
A misconfiguration gave three Anthropic models internet access, and one, believing it was in a simulation, shipped a credential-stealing package to PyPI.

Security News
/Company News
Socket has joined the new Composer and Packagist sponsorship program as a launch sponsor, supporting the team that keeps PHP's package ecosystem secure.