Documentation Index
Fetch the complete documentation index at: https://docs.tablepro.app/llms.txt
Use this file to discover all available pages before exploring further.
MCP Clients
Any MCP client that supports the stdio transport and lets you point it at a command on disk can connect to TablePro. The pattern is the same across every client:tablepro-mcp CLI ships inside the app bundle. It reads ~/Library/Application Support/TablePro/mcp-handshake.json for the local port and a bridge token, then forwards stdio JSON-RPC to the running app’s HTTP MCP server. If the handshake file is missing, the CLI fires tablepro://integrations/start-mcp to lazy-start the server and waits up to 10 seconds for the handshake to appear. The TablePro app must be running; you can keep it minimized.
You do not pass a token in the client config. The bridge reuses the in-app handshake, so the token issued during pairing stays inside TablePro. The Raycast extension or any tablepro://integrations/pair?... link triggers the one-time pairing flow that puts a token on disk; clients launched via stdio inherit that trust automatically.
If TablePro is installed somewhere other than /Applications (for example, Setapp or a custom path), replace the command value with the absolute path to your bundle’s tablepro-mcp binary.
Claude Desktop
Edit~/Library/Application Support/Claude/claude_desktop_config.json:
tablepro is listed with its tools enabled.
Claude Code
Use theclaude mcp add CLI:
claude mcp list.
Cursor
Edit~/.cursor/mcp.json for global access, or .cursor/mcp.json in the project root for per-project access:
@mcp in chat.
Cline
Cline is a VS Code extension. Open the Cline panel, click the MCP Servers icon in its top nav, and choose Configure MCP Servers to opencline_mcp_settings.json:
Continue
Continue (continue.dev) reads MCP configs from .continue/mcpServers/ in your workspace. Create .continue/mcpServers/tablepro.yaml:
.continue/mcpServers/tablepro.json using the standard mcpServers object form. Reload Continue’s config from the gear menu.
Zed
Zed keys MCP servers undercontext_servers, not mcpServers. Edit ~/.config/zed/settings.json (or open it via Zed > Settings):
Windsurf
Edit~/.codeium/windsurf/mcp_config.json. From inside Windsurf, click the MCP icon in the Cascade panel and choose Configure to open this file:
Goose
Goose is the Block CLI agent (now hosted at the Agentic AI Foundation). Rungoose configure, choose Add Extension > Command-line Extension, and enter:
- Name:
tablepro - Command:
/Applications/TablePro.app/Contents/MacOS/tablepro-mcp - Timeout:
300
~/.config/goose/config.yaml. To edit by hand, add an entry under extensions:
goose session and ask for the tool list to confirm.
Generic or custom client
If you are building a client against the MCP specification, TablePro speaks two transports:- stdio: spawn
/Applications/TablePro.app/Contents/MacOS/tablepro-mcpwith no arguments. The CLI handles the handshake and forwards JSON-RPC over its stdin and stdout. No token, no environment variables. - HTTP: connect to
http://127.0.0.1:<port>/mcpusing the port from~/Library/Application Support/TablePro/mcp-handshake.jsonand a bearer token issued via Pairing. See Tokens for scope rules.
HTTP transport
If your client cannot use stdio, mint a token in Settings > Integrations > Authentication and configure HTTP directly. The shape varies by client; here is the Cursor form:23508 with the port shown in Settings > Integrations > MCP Configuration. Other clients use the same url plus headers shape, sometimes under type: streamable-http. Check the client’s docs.
Setup snippets in TablePro
Open Settings > Integrations > MCP Setup and pick a client. TablePro shows the exact JSON or shell command to paste into the client’s config, with the correct paths for your install.What the AI sees
AI clients see the full tool catalog. For an unfamiliar schema, the AI is expected to calldescribe_table before generating SQL. For mutating SQL, the AI must request user confirmation through the host’s tool-confirmation mechanism. Hosts like Cursor, Claude Desktop, Claude Code, Cline, and Windsurf each surface this with their own UI.
The connection’s externalAccess setting and the token scope still apply. A read-only connection rejects writes regardless of what the AI tries.
Verify the connection
After configuring a client, the fastest check is to ask it to list TablePro tools or calllist_connections. Success looks like:
- The client lists tools such as
list_connections,list_tables,describe_table, andexecute_query. - A
list_connectionscall returns the connections you have saved in TablePro (id, name, type).
- stdio process exits immediately: TablePro is not running, or you are on a build older than 0.37. Open TablePro and re-launch the client.
401 Unauthorized: the bridge token is stale. Quit and reopen TablePro to regenerate the handshake.403 Forbidden: the connection’sexternalAccessisblockedorreadOnly, or the token’s allowlist excludes it. Open the connection editor in TablePro and adjust under External Access.
Troubleshooting
Handshake timeout. TablePro launched but did not respond totablepro://integrations/start-mcp within 10 seconds. Open Settings > Integrations and toggle Enable MCP Server off and on, then re-launch the client.
Stale handshake file. Delete ~/Library/Application Support/TablePro/mcp-handshake.json and reopen TablePro. The app rewrites the file on launch.
Setapp or non-default install path. Replace /Applications/TablePro.app in the command with the absolute path to your install. For Setapp the bundle lives under ~/Applications/Setapp/TablePro.app.
Port conflict. TablePro picks a different free port from the 51000-52000 range on next launch and rewrites the handshake file. The stdio bridge re-reads it automatically.
Tool calls return 403 Connection is read-only for external clients. The connection’s external access is readOnly and the SQL is a write. Either change external access in TablePro, or run the query in TablePro’s editor.