CARTO MCP. Run complex spatial and data analysis from conversation.
Works with every AI agent you already use
…and any MCP-compatible client
Just plug in your AI agents and start using Vinkius.
CARTO MCP gives your agent control over cloud-native spatial analytics directly from a chat interface. Use it to run complex SQL queries against BigQuery or Snowflake, generate optimal driving routes between points, calculate service area isolines (like 15-minute drive zones), and bulk geocode entire lists of addresses.
What your AI agents can do
Calculate isoline
Generates a GeoJSON polygon showing all areas reachable from a point within a specified driving time or distance.
Calculate route
Returns the optimal path geometry, total distance in meters, and duration for a driving route between two points.
Create async sql job
Submits heavy SQL queries as background jobs that run outside of synchronous time limits, suitable for huge data transformations.
Execute SQL code directly against your connected warehouse for quick reads or large-scale transformations.
Generate geometric polygons showing all points reachable from a center point within a specific time or distance.
Find the shortest driving path between two locations, returning both total distance and estimated travel duration.
Convert thousands of raw street addresses into verified geographic coordinates in a single batch request.
Import external files, like GeoJSON or CSVs, by providing a public URL and tracking the job status until completion.
Ask AI about this MCP
Supported MCP Clients
OAuth 2.0 CompatibleWaiting for input…
CARTO: 10 Geospatial Data Tools
These tools let you execute everything from simple SQL checks to massive asynchronous data imports and advanced geometric calculations.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using CARTO on Vinkius019d7569calculate isoline
Generates a GeoJSON polygon showing all areas reachable from a point within a specified driving time or distance.
019d7569calculate route
Returns the optimal path geometry, total distance in meters, and duration for a driving route between two points.
019d7569create async sql job
Submits heavy SQL queries as background jobs that run outside of synchronous time limits, suitable for huge data transformations.
019d7569execute sql query
Runs a quick analytical SQL query against your warehouse, returning results in JSON rows directly to the agent.
019d7569geocode address
Converts a single address string into precise latitude and longitude coordinates using the location services API.
019d7569geocode batch addresses
Processes multiple addresses at once, converting an entire list of street names into geocoded points efficiently.
019d7569get import status
Checks the current progress and status (uploading, complete, failure) of a previously initiated data import job.
019d7569import external file
Downloads an external file (CSV, GeoJSON, Shapefile) from a public URL and loads it into your connected warehouse.
019d7569list map datasets
Retrieves metadata for all data layers and visualization datasets currently available in the CARTO organization.
019d7569poll async job status
Periodically checks if a previously submitted async SQL job has finished executing, confirming completion or failure status.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with CARTO, then connect any of our 4,800+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 4,800+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by CARTO. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This server provides 10 capabilities that interface natively with Claude, ChatGPT, Cursor, and any MCP client. No middleware. No custom integration required.
The pain of stitching together mapping services and database queries is exhausting.
Right now, if your goal is to check service areas or run a complex data join involving location, you're forced into clicking through four different vendor tabs. You dump raw CSVs here; you write the SQL there; you calculate the routes in another dashboard. It’s tedious copy-pasting between interfaces just to answer one question.
With this MCP, that whole process collapses. Your agent takes the data input and performs all those steps internally—the geocoding, the joining, the calculation—and gives you a single structured output without needing to touch any dashboard.
Using `calculate_route` gives you perfect paths instantly.
Manually generating optimal driving routes used to mean downloading a map file, overlaying your points, and manually checking the calculated distance/time—and that geometry was often unreliable or incomplete.
Now, the agent calculates the route using `calculate_route`, returning reliable vector geometry with both total distance and duration. It’s done in seconds.
What you can do with this MCP connector
This MCP lets you treat your data warehouse like a conversation partner. Instead of opening the CARTO GIS interface—and wrestling with complex dashboards to find what you need—you just ask your agent for it. You can execute quick reads or kick off massive, long-running batch jobs against structured data in BigQuery, Snowflake, or Redshift.
Need to know where customers live? Feed a list of addresses and get precise latitude/longitude points back instantly using bulk processing. Want to model delivery zones? Calculate travel-time isolines around any point. The process handles everything from importing massive CSV files to generating complex route geometry on the fly. When you're chaining these spatial tasks with other services, Vinkius AI Analytics gives you a full audit trail, so you always know exactly what data moved and which tools ran, down to the query level.
019d7569-ffe7-733e-b720-e128eea9f6a3 How CARTO MCP Works
- 1 Subscribe to this MCP and provide your active CARTO Organization credentials and API key.
- 2 Ask your agent to perform a task, like running an SQL query or calculating routes. The tool executes the necessary logic against your connected data warehouse.
- 3 The agent returns structured results—be it a GeoJSON path, a list of coordinates, or a job ID for later polling.
The bottom line is you get to run complex geospatial operations through natural language prompts instead of clicking through multiple vendor dashboards.
Who Is CARTO MCP For?
Logistics managers, GIS analysts, and data engineers. If your job involves figuring out 'how far,' 'how many,' or 'where' between physical locations using raw data dumps, this is for you.
Calculates 15-minute delivery isolines around distribution centers and cross-references those zones with population density layers.
Writes ad-hoc SQL queries to test data schemas or runs large, asynchronous batch jobs for materialized view refreshes without hitting timeouts.
Imports raw external datasets like KML files and then uses the tool to run bulk geocoding on customer coordinates before analysis.
What Changes When You Connect
- Stop dealing with query timeouts. If your SQL job takes longer than a minute, use
create_async_sql_jobto kick it off in the background and track its status usingpoll_async_job_status. - Batch geocoding is fast. Instead of calling
geocode_addresshundreds of times, rungeocode_batch_addressesonce to process entire customer lists from a spreadsheet. - Calculate service boundaries accurately. Use
calculate_isolineto instantly draw the exact polygon representing all areas reachable within a set amount of time or distance. - Build complex automations. You can chain this MCP with others; for example, use
list_map_datasetsresults to feed into an automated report generation workflow. - Keep your keys safe and visible. When using the credentials through Vinkius, you get a zero-trust proxy flow—your API keys pass in transit but never sit on disk.
Real-World Use Cases
Validating new store sites
A retail strategist needs to know if a proposed location is accessible within a 10-minute drive from three existing stores. The agent uses calculate_isoline around the three points, then runs an execute_sql_query against population data in the resulting zone.
Processing massive client lists
A sales team uploads a CSV file containing 5,000 unverified addresses. The agent first uses import_external_file to load it, then runs geocode_batch_addresses to clean and convert the entire dataset into usable coordinates.
Auditing data sources
A data engineer needs to know what datasets are available for a new project. They start by calling list_map_datasets, then use that metadata to plan which tables need raw data imports via import_external_file.
Optimizing logistics backhauls
A fleet manager needs the shortest path between two points, factoring in traffic and road geometry. The agent uses calculate_route to return the optimal vector path, which is then cross-referenced with warehouse locations via SQL.
The Tradeoffs
Running big queries synchronously
Trying to run a massive 10 million row join using execute_sql_query because it's the most obvious function.
→
For heavy, large-scale computations, never use synchronous calls. Instead, submit the job via create_async_sql_job and then periodically check its status with poll_async_job_status. This prevents timeouts.
Geocoding one address at a time
Calling geocode_address for every single customer in your list of 1,000 contacts because it's easy to understand.
→
Group those calls. Use geocode_batch_addresses instead. It processes the whole list efficiently in one go, saving time and credits.
Ignoring data source status
Assuming a file you uploaded yesterday is ready for analysis without checking if the import finished.
→
After running import_external_file, always use get_import_status to verify that the process has reached 'complete' before trying to query the new table.
When It Fits, When It Doesn't
Use this MCP if your core problem involves geography, movement, or location intelligence. If you need to calculate a path (use calculate_route), define an area of influence (use calculate_isoline), or transform raw addresses into coordinates (use geocode_batch_addresses), this is the right tool. Don't use it if your goal is merely simple data filtering on a clean, already-structured dataset—for that, a standard SQL query might suffice. If you need to handle highly unstructured, non-geospatial text analysis, look for specialized NLP tools instead.
Common Questions About CARTO MCP
How do I run a huge query with CARTO MCP? +
You should use create_async_sql_job. This submits the job to your warehouse, allowing it to run for extended periods without timing out. You then check on its progress using poll_async_job_status.
What is the best way to geocode a list of 500 addresses with CARTO MCP? +
Use geocode_batch_addresses. This function is designed for bulk operations, taking your entire address array and converting all 500 entries into coordinates in one request. Don't use geocode_address.
Can I import a shapefile with CARTO MCP? +
Yes, you can. Use import_external_file. Just give it the public URL for your zipped Shapefile, and the tool handles parsing and loading it into your data warehouse.
How does calculate_isoline work with CARTO MCP? +
calculate_isoline generates a GeoJSON polygon. You feed it a center point and specify a time or distance, and it returns the boundary of all points within that radius.
What does the `list_map_datasets` tool help me discover about my CARTO organization's data? +
It returns a list of every dataset and visualization available in your account. This is useful for auditing what data layers exist, checking their creation dates, or simply seeing how many tables you have access to.
After running an async job with `create_async_sql_job`, how do I use `poll_async_job_status` to check its progress? +
You poll the status endpoint until it reports 'done' or 'failed.' The response provides the current state, error messages if something broke, and confirms the original query for tracking purposes.
If I use `geocode_address` and get an error message, what does that mean for my specific input string? +
The tool will tell you exactly why the geocoding failed. It's useful for debugging bad inputs or addressing format issues before trying a different location lookup.
When I run `import_external_file`, what steps must I take to know when the data is ready in my warehouse? +
The tool provides an import ID. You then use get_import_status and poll it until the state changes to 'complete.' This confirms the file has been safely loaded into your connected warehouse.
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.