ChatGPT web UI
Use the public HTTPS MCP endpoint https://api.rowvia.ai/mcp and Rowvia OAuth. Do not create or copy an API token; after login, ChatGPT receives its own OAuth token for the current Rowvia user.
Rowvia MCP lets an authorized chatbot or agent work with existing Rowvia tables: list and find tables, read schemas, prompts, and summaries, add rows from URLs, text, or inline files, optionally run processing, check status, search rows, and read selected rows or results. It adds one primary source as one row by default; when reading rows, extended rows can also include related attachments.
Profile -> Integrations is not a public deep-link route yet. After sign-in, open Profile, go to Integrations, and create a token for a specific table or account.
Use the public HTTPS MCP endpoint https://api.rowvia.ai/mcp and Rowvia OAuth. Do not create or copy an API token; after login, ChatGPT receives its own OAuth token for the current Rowvia user.
Use stdio configuration in Claude Desktop, Cursor, Codex CLI, or a local agent. In this path, the Rowvia API token rvia_... belongs in the client's environment configuration.
Do not mix these three modes. The ChatGPT web connector uses Rowvia OAuth without copying a token. Local MCP and the REST API use an rvia_... token, but in different configuration locations.
| Mode | When to use | Auth | Where the token belongs |
|---|---|---|---|
| ChatGPT web connector | ChatGPT UI | Rowvia OAuth |
The user does not copy a token |
| Local MCP | Claude Desktop, Cursor, Codex CLI | rvia_... API token |
Local client env config |
| REST API | Own backend or automation | Authorization: Bearer rvia_... |
Server-side config or secret manager |
ChatGPT web connects to the public /mcp endpoint and receives an rvoa_... Rowvia OAuth token through login and consent. The user never sees or copies that token and must not enter an rvia_... token into the ChatGPT connector.
Claude Desktop, Cursor, Codex CLI, and local agents run the Rowvia stdio MCP server through a local command. The rvia_... token belongs in the local client's environment configuration.
Open Rowvia.ai first and make sure you are signed in to the correct account. The first version uses the user's existing workbook and tables.
In ChatGPT, open Settings -> Apps & Connectors -> Advanced settings and enable Developer Mode if your plan or workspace allows it. A company or school workspace admin may disable it.
In ChatGPT, go to Settings -> Connectors -> Create. Use https://api.rowvia.ai/mcp as the connector URL. ChatGPT discovers Rowvia OAuth from metadata and automatically registers its callback. Local stdio JSON and ROWVIA_API_TOKEN are not used in this flow.
ChatGPT opens Rowvia login and consent. Check the signed-in Rowvia email and allowed actions, then approve the connection. Rowvia issues an rvoa_... OAuth token only for this ChatGPT connector.
In a new ChatGPT chat, select the Rowvia connector from the tools menu. Start safely: list tables, confirm the target table, then add documents or start processing.
The user-facing name shown in ChatGPT's tools menu.
Model-facing text. You can copy it exactly as written.
The only production URL ChatGPT web needs for the Rowvia connector.
In this ChatGPT connector flow, do not use API key, bearer token, or ROWVIA_API_TOKEN. The REST API Bearer token is a separate mode.
Open Rowvia Profile -> Integrations and create an rvia_... token. For a normal agent, use the scopes tables:read, rows:read, row:add, and row:process. Add rows:update only for explicit cell corrections.
For repeated workflows, prefer a token restricted to one table. The agent then works only with the table the user assigned.
Put the command and ROWVIA_API_BASE_URL plus ROWVIA_API_TOKEN environment variables into the local MCP client. The token belongs in env configuration, never in a prompt or shared chat.
Do not use this stdio JSON for ChatGPT web. It applies to local MCP clients and local agents. The command below is for development from the Rowvia monorepo; for external installation, use the command published in integration settings. Optional cell updates are disabled until ROWVIA_MCP_ENABLE_ROW_UPDATE=true is set.
https://api.rowvia.ai{
"mcpServers": {
"rowvia": {
"command": "npx",
"args": ["--workspace", "@rowvia/mcp", "rowvia-mcp"],
"env": {
"ROWVIA_API_BASE_URL": "https://api.rowvia.ai",
"ROWVIA_API_TOKEN": "rvia_...",
"ROWVIA_MCP_ENABLE_ROW_UPDATE": "false"
}
}
}
}
Start with rowvia_table_list or rowvia_table_find. If the user did not name an exact table, ask them to confirm the target table.
Use rowvia_table_get_schema or the rowvia://tables/{table_id}/schema resource. For automation, use table_id and row_id; row_index is only a display position.
rowvia_row_add adds URL, text, and small inline source rows to an existing table. Each item creates a new row with a primary source by default; when reading, include_document can return the primary document and documents[] with related attachments. Use rowvia_row_create_source_group for several documents that belong to one logical row; manage existing row attachments with rowvia_row_get_sources, rowvia_row_add_source, and rowvia_row_remove_source. For public or temporarily shared documents, prefer source=url; Rowvia downloads supported documents server-side. HTML URLs are stored as Markdown snapshots.
rowvia_row_add has process_after_add defaulting to false. Before larger runs, call rowvia_table_get_pending_work and start processing through rowvia_table_start_processing.
Track the returned processing_run_id with rowvia_processing_get_status. Read results with rowvia_row_get_results or rowvia_row_get using column projection.
rowvia_table_listrowvia_table_findrowvia_table_get_schemarowvia_table_get_summaryrowvia_table_get_pending_workrowvia_row_addrowvia_row_create_source_grouprowvia_row_get_sourcesrowvia_row_add_sourcerowvia_row_remove_sourcerowvia_row_listrowvia_row_searchrowvia_row_getrowvia_row_get_resultsrowvia_table_start_processingrowvia_processing_get_statusrowvia_row_updaterowvia://tablesrowvia://tables/{table_id}/schemarowvia://tables/{table_id}/rows?offset=0&limit=20MCP is the path for agents. For backends and scripts, use the REST API with a Bearer token.