mcpField
D
datatomcp

datatomcp

Remote
datatomcp.comData & Analytics0Updated 4d ago

About datatomcp

datatomcp is a hosted MCP server for CSV and Google Sheets data, intended for agents that need to query tabular datasets. It uses DuckDB for exact filtering and aggregation, and provides read-only access with import diagnostics.

Key features

  1. 01Query CSV and Google Sheets
  2. 02Filter, sort, and paginate rows
  3. 03Group columns and calculate aggregates
  4. 04Inspect column types and import warnings
  5. 05OAuth access with read-only permissions

Use cases

  1. 01Verify sales counts and revenue
  2. 02Filter table records by region or date
  3. 03Summarize categories in Google Sheets

MCP support

It provides a remote MCP server over Streamable HTTP with OAuth 2.1 authorization. Clients can discover datasets, query rows, and run aggregations through its tools.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://app.datatomcp.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

datatomcp

Turn a CSV or Google Sheet into a remote MCP server your AI agents can query.

Website · Start free · Guides · Demo video

Listed on mcpservers.org


datatomcp is a hosted MCP server for your tabular data. Upload a CSV, paste a CSV link, or pick a Google Sheet. Your agent (Claude, ChatGPT, Cursor and others) can then filter, group and total the rows. The numbers are computed by a database, not estimated by the model.

  • Hosted. Nothing to install or run. One URL works in every client that supports remote MCP servers.
  • OAuth sign-in. No API key to paste into your agent. You can revoke access at any time.
  • Exact results. Counts, sums and averages come from DuckDB. Every result says which version of the dataset it came from.
  • Private Google Sheets. You pick the sheet in Google's file picker, and datatomcp can read that file only. Pro syncs it every hour.
  • Import report. Bad lines, numbers stored as text and mixed date formats are reported before any agent sees the data.
  • Read-only. Agents can query your data, but they can't change it or run raw SQL.
  • Hosted in the EU. Your data is never sent to AI providers or used for training.

This repository holds the public documentation and client configuration. The service itself runs at app.datatomcp.com.

Server

URLhttps://app.datatomcp.com/mcp
TransportStreamable HTTP
AuthOAuth 2.1 (dynamic client registration and client ID metadata documents)
Registry namecom.datatomcp/datatomcp

Quick start

  1. Sign up at app.datatomcp.com (free, no card).
  2. Add a dataset: upload a CSV, paste a link, or choose a Google Sheet.
  3. Add the server to your client (below), sign in when asked, and ask a question about your data.

Tools

ToolWhat it does
list_datasetsYour datasets, with row counts and freshness
describe_datasetColumns, types, example values, data warnings and today's date
query_rowsFilter, sort, select columns and paginate (up to 1,000 rows per call)
aggregateGroup by columns; count, distinct count, sum, average, min and max
distinct_valuesThe real values in a column, so filters match exactly

Filters support eq, neq, gt, gte, lt, lte, in, not_in, contains, starts_with, between, is_null and not_null.

Client setup

Claude (Claude.ai and Claude Desktop)

Settings → Connectors → Add custom connector. Paste https://app.datatomcp.com/mcp, name it datatomcp, connect, and allow access.

Claude Code
claude mcp add --transport http datatomcp https://app.datatomcp.com/mcp

Then run /mcp, choose datatomcp and sign in.

ChatGPT

Settings → Apps & Connectors → Advanced, and turn on developer mode. Create a connector with the URL above and OAuth authentication, then sign in.

Cursor

Settings → MCP → Add new server. Choose type HTTP and use the URL above. Cursor asks you to log in the first time.

VS Code

.vscode/mcp.json:

{
  "servers": {
    "datatomcp": { "type": "http", "url": "https://app.datatomcp.com/mcp" }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "datatomcp": { "serverUrl": "https://app.datatomcp.com/mcp" }
  }
}
Cline

Open the MCP Servers panel → Remote Servers, name it datatomcp, and use the URL above. Or add it to cline_mcp_settings.json:

{
  "mcpServers": {
    "datatomcp": { "type": "streamableHttp", "url": "https://app.datatomcp.com/mcp" }
  }
}
Antigravity

Customizations → MCP servers → View raw config (mcp_config.json):

{
  "mcpServers": {
    "datatomcp": { "serverUrl": "https://app.datatomcp.com/mcp" }
  }
}

Click Refresh, then Authenticate.

OpenCode

opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "datatomcp": { "type": "remote", "url": "https://app.datatomcp.com/mcp" }
  }
}
Codex
codex mcp add datatomcp --url https://app.datatomcp.com/mcp
codex mcp login datatomcp
Gemini CLI
gemini mcp add --transport http datatomcp https://app.datatomcp.com/mcp

Then run /mcp auth datatomcp.

Clients with local (stdio) servers only

Use mcp-remote as a bridge. It handles the sign-in:

{
  "mcpServers": {
    "datatomcp": { "command": "npx", "args": ["-y", "mcp-remote", "https://app.datatomcp.com/mcp"] }
  }
}

Example

How many orders came from France in September, and what was the revenue?

The agent calls describe_dataset to learn the columns, then one aggregate call:

{
  "dataset_id": "ds_orders",
  "where": [
    { "column": "country", "op": "eq", "value": "France" },
    { "column": "order_date", "op": "between", "value": ["2026-09-01", "2026-09-30"] }
  ],
  "metrics": [
    { "fn": "count", "as": "orders" },
    { "fn": "sum", "column": "total", "as": "revenue" }
  ]
}

On our 50,000-row test sheet, it answers with 277 orders and €50,279.50 in revenue. The tool result is 32 bytes, not the whole sheet.

REST API

The same datasets are also available over REST with an API key, for apps and automations such as n8n or Make. See CSV to REST API.

Plans

FreePro ($12 or €12 a month)
Datasets325
Rows per dataset100,0002,000,000
Queries per day1,00050,000
Google Sheets syncOn demandHourly

Guides

Support

Questions, bugs or a file that doesn't import the way you expect: [email protected], or open an issue in this repository.

License

The documentation and configuration in this repository are MIT licensed. The datatomcp service is proprietary.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.