rows.page
Push CSV, JSON, JSONL or Parquet from your agent and get a link a human can explore.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http rows-page 'https://rows.page/mcp'
{
"mcpServers": {
"rows-page": {
"type": "http",
"url": "https://rows.page/mcp"
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
rows.page MCP server
rows.page is a place for your rows. Your agent pushes CSV, TSV, JSON, JSONL or Parquet with one tool call and gets back a link a human can explore: filter, chart columns, run SQL, read pinned findings, and see what changed since the last push. Viewing is free, no signup needed. Anonymous datasets live 7 days unless someone keeps them.
The server is remote only: https://rows.page/mcp, streamable HTTP, stateless JSON-RPC. There is nothing to install. A GET on the endpoint returns the server card.
Connect
Claude Code
claude mcp add --transport http rows https://rows.page/mcp
Claude Desktop (claude_desktop_config.json, needs Node.js)
{
"mcpServers": {
"rows": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://rows.page/mcp"]
}
}
}
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"rows": {
"url": "https://rows.page/mcp"
}
}
}
VS Code (.vscode/mcp.json)
{
"servers": {
"rows": {
"type": "http",
"url": "https://rows.page/mcp"
}
}
}
Windsurf (mcp_config.json)
{
"mcpServers": {
"rows": {
"serverUrl": "https://rows.page/mcp"
}
}
}
Codex CLI (~/.codex/config.toml)
[mcp_servers.rows]
url = "https://rows.page/mcp"
Gemini CLI (~/.gemini/settings.json)
{
"mcpServers": {
"rows": {
"url": "https://rows.page/mcp",
"type": "http"
}
}
}
API key (optional)
Anonymous pushes work. An API key (created at https://rows.page/account) pushes into your account, unlocks list_datasets, and lets you re-push by a stable key. Send it as Authorization: Bearer rpk_... or append ?apiKey=rpk_... to the URL.
claude mcp add --transport http rows https://rows.page/mcp --header "Authorization: Bearer rpk_..."
Tools
| Tool | What it does |
|---|---|
push | Push csv, tsv, json, jsonl, rows (array of objects) or a url. Optional title, summary, key, id_column, findings[] and provenance (source, run, commit). Pass dataset + token for a new version. Returns the link plus next steps for your human. |
pin_finding | Pin a saved view (title, note, q filter, sort, cols or SQL) to a dataset. The page opens on its findings. |
get_dataset | Meta, versions, findings, columns and the first 20 rows. |
list_datasets | Your datasets, newest first. Needs an API key. |
delete_dataset | Delete a dataset you own. Its URL stops working immediately. |
get_limits | Your plan, its caps and usage. |
Every push is an immutable version. Identical bytes return unchanged: true. Re-pushes report rows new, gone and changed (set id_column so changed rows can be matched) plus a diff URL. Finding filters use the rows.page query language (status:failed latency_ms:>2000, (country:NL OR country:BE) amount:>500) or SQL starting with SELECT.
Example prompts
Push results.csv to rows.page titled "Eval run 412", pin the failed rows as a finding with a one-line note on what they have in common, and give me the link.
Query the last 24h of orders, push them to rows.page with key nightly-orders and id_column order_id, then tell me how many rows changed since yesterday.
Fetch https://example.com/export.parquet, push it to rows.page, pin a finding for amount:>500 sorted by -amount, and hand me the owner link.
Limits
Anonymous: 100 MB per file (16 MB inline per MCP push, use url for bigger files), deleted 7 days after creation unless kept, 50 pushes and 1 GB per day per IP, 60 MCP calls per minute. Free, Pro and Max plans: https://rows.page/pricing.
Links
- Docs: https://rows.page/docs/mcp
- REST API: https://rows.page/docs/api
- OpenAPI: https://rows.page/openapi.json
- llms.txt: https://rows.page/llms.txt
- Official MCP registry name:
page.rows/rows
Made by Bitgate. MIT licensed.
Questions fréquentes
Qu'est-ce que rows.page ?
Push CSV, JSON, JSONL or Parquet from your agent and get a link a human can explore.
Comment installer rows.page ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http rows-page 'https://rows.page/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour rows.page ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
rows.page est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient rows.page ?
Il est publié par bitgate. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.