Connect your tools
The REST API and the MCP server answer with the same key. Create the key in the Portal under Account & settings, then pick the way in that fits your stack.
AI tools over MCP
The MCP server at api.commovision.com/mcp answers AI tools with the same data the API serves. A tool that accepts a key takes the server as one configuration entry. The tools below are listed alphabetically. Where we have connected one ourselves, its entry says so. Every other entry states what its publisher documents.
Antigravity
Config file: ~/.gemini/config/mcp_config.json (or .agents/mcp_config.json in one workspace)
{
"mcpServers": {
"commovision": {
"serverUrl": "https://api.commovision.com/mcp",
"headers": {
"Authorization": "Bearer cvk_your_key_here"
}
}
}
}
The Antigravity CLI and IDE read this file. In the CLI, typing /mcp opens its MCP manager, which shows whether the server connected. Antigravity's MCP page does not say a header can read your environment, so the key sits in this file: use the global file, or keep a workspace's file out of anything you share or commit.
Shape from the publisher's documentation; not tested by us yet.
ChatGPT
Not yet. ChatGPT's custom connectors accept signing in or no authentication, and refuse a key sent in a header or a URL, so our key cannot be used there. Signing in is on our roadmap.
Claude Code
claude mcp add --transport http commovision \
https://api.commovision.com/mcp \
--header "Authorization: Bearer cvk_your_key_here"
claude mcp list then shows the server and whether it connected.
Tested by us: 2026-10-13, CommoVision, connected over the public edge and called the freshness tool.
Claude Desktop and claude.ai
Customize > Connectors > Add > Add custom connector. Give it a name and enter https://api.commovision.com/mcp as the server URL. Under Authentication, choose **No sign-in**, the option whose own description names a server that uses an API key instead of OAuth. The dialog may pre-select Sign in now and mark it Detected; that reads our 401 and not an OAuth advertisement, because this server publishes no authorization-server metadata, and leaving it selected starts a sign-in flow there is nothing to complete. Then put Authorization: Bearer cvk_your_key_here in the Request headers field. Claude connects from its own cloud rather than from your machine.
Tested by us: 2026-10-19, CommoVision, connected from Claude's own cloud over the public edge and listed the tools.
Codex CLI
Config file: ~/.codex/config.toml
[mcp_servers.commovision]
url = "https://api.commovision.com/mcp"
bearer_token_env_var = "COMMOVISION_API_KEY"
Set COMMOVISION_API_KEY in the environment Codex runs in. The config file holds the variable's name, never the key itself. Then codex mcp list shows the server.
Shape from the publisher's documentation; not tested by us yet.
Cursor
Config file: ~/.cursor/mcp.json (or .cursor/mcp.json in one project)
{
"mcpServers": {
"commovision": {
"url": "https://api.commovision.com/mcp",
"headers": {
"Authorization": "Bearer cvk_your_key_here"
}
}
}
}
To keep the key out of the file, set it in your environment and write "Bearer ${env:COMMOVISION_API_KEY}" as the header value.
Shape from the publisher's documentation; not tested by us yet.
Gemini CLI
Config file: ~/.gemini/settings.json (user scope)
gemini mcp add --transport http commovision \
https://api.commovision.com/mcp \
--header "Authorization: Bearer cvk_your_key_here" -s user{
"mcpServers": {
"commovision": {
"url": "https://api.commovision.com/mcp",
"type": "http",
"headers": {
"Authorization": "Bearer cvk_your_key_here"
}
}
}
}
The command writes this entry for you. To keep the key out of the file, write "Bearer $COMMOVISION_API_KEY" as the header value and set COMMOVISION_API_KEY in your environment; in the command, put that header in single quotes, so your shell passes the variable's name rather than the key. In a folder you have not trusted, Gemini CLI turns its MCP servers off: gemini mcp list shows this one as Disabled until you trust the folder.
Tested by us: 2026-10-31, CommoVision, Gemini CLI 0.65.0 connected over the public edge with the entry the command writes (`gemini mcp list`).
VS Code
Config file: .vscode/mcp.json in the workspace (or mcp.json in your user profile, which MCP: Open User Configuration opens)
{
"inputs": [
{
"type": "promptString",
"id": "commovision-key",
"description": "CommoVision API key",
"password": true
}
],
"servers": {
"commovision": {
"type": "http",
"url": "https://api.commovision.com/mcp",
"headers": {
"Authorization": "Bearer ${input:commovision-key}"
}
}
}
}
VS Code asks for the key the first time it starts the server and stores it securely, so the key is never written in the file. VS Code does not pass a server that asks for input to Copilot harness sessions, which read the portable format instead: a .mcp.json file at the workspace root, servers under mcpServers, where the header can read the key from your environment as "Bearer ${COMMOVISION_API_KEY}".
Shape from the publisher's documentation; not tested by us yet.
From code
The REST API is plain HTTPS with your key in an Authorization header, and requests answer JSON or CSV. The Python package installs with pip: pip install commovision. The developer reference at api.commovision.com/docs covers both.
Spreadsheets, BI and the warehouse
Routes that take a format parameter answer CSV as well as JSON. For a warehouse, bulk extracts download whole tables as Parquet or CSV by signed URL, and the change feed keeps a mirror current from a cursor; both come with the paid API plans.
A free trial includes the whole Portal, and API and MCP access on request.