DocQuery
io.docquery/docqueryVersion 1.0.1Read-only MCP over your Excel or Airtable plus the PDFs beside it, joined as one relational dataset.
Status
Responds564 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:34 UTC
- Latency
- 564 ms
- Remotes responding
- 1 of 1
- Sign-in
- API key
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 21:12 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://docquery.io/api/v1/mcpResponds564 msNo sign-in
Claude Code
claude mcp add --transport http docquery https://docquery.io/api/v1/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'Replace <YOUR_TOKEN> before running.
Claude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: docquery
Remote MCP server URL: https://docquery.io/api/v1/mcp
This server expects the header Authorization.Cursor
{
"mcpServers": {
"docquery": {
"url": "https://docquery.io/api/v1/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}Replace <YOUR_TOKEN> before running.
VS Code
code --add-mcp '{"name":"docquery","type":"http","url":"https://docquery.io/api/v1/mcp","headers":{"Authorization":"Bearer <YOUR_TOKEN>"}}'Replace <YOUR_TOKEN> before running.
Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
4 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
list_relationsList the relations (foreign keys) between tables in the workspace. Each relation has from and to as "table_slug.column_slug" and a kind. Use it to find which columns link two tables before calling related_rows. Read-only; returns an empty list when no relations are defined. | No | Yes | Yes | No |
list_tablesList all tables in the workspace. Call this first to learn table and column slugs. Returns slug, name, row_count, and columns (slug, name, type, primary_key) for each table. Document-extracted tables include source_document {id, filename, url}. source_document is null for CSV, Excel, Google Sheets, and Airtable. url is the signed-in document page; original file bytes are not stored, so it is not a download. Cite source_document.filename when you report a value taken from a document. | No | Yes | Yes | No |
query_tableRead rows from a table. Optional filter is an exact-match map of column slug => value; optional search is a case-insensitive substring match across all cells. Returns source_document for the table (null for spreadsheets and Airtable). Each row includes source_page: the 1-based PDF page, PowerPoint slide, or Google Slides slide the row was extracted from, or null when the page is unknown (Word, ODT, RTF, spreadsheets, Airtable, manually created rows, or a row that spans pages). Cite source_document.filename and source_page when an extracted value looks wrong. Do not invent a page when source_page is null. If a column is already named source_page, the page is returned as _source_page. | No | Yes | Yes | No |
related_rowsFollow a relation from a source table to the rows it links to. Given a column on `table_slug` that participates in a relation and a `value` (usually a cell from a source row), returns the matching rows in the linked table. Works in both directions. Each linked table includes source_document when it came from an uploaded document, and each row includes source_page (or null). Cite the filename and page; do not invent a page. | No | Yes | Yes | No |
Details
- Registry status
- Active
- Published
- Nov 12, 2026
- Updated
- Nov 12, 2026
- Repository
- Not given
- Categories (suggested)
- DatabasesData and analyticsSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared