Roboflow MCP server
10 operations0 webhooks
Read workspaces, projects, versions and trained models, create projects, upload images, and run model inference on the serverless host with Roboflow.
Try Roboflow with your agent
Connect Roboflow, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in Roboflow on my account, then run one read-only example and show me the result.
Roboflow tools and triggers
Tools are what your agent can do in Roboflow through Corsair's MCP server. Triggers are the Roboflow events a routine can start from.
Project
- CreateWrite
Create a project of a given type in an annotation group, optionally licensed onto Universe
project.create
- DeleteDestructive
Delete a project and its images, versions and models
project.delete
- GetRead-only
Read a project with its classes, splits and dataset versions, newest first
project.get
Version
- DeleteDestructive
Delete a dataset version
version.delete
- GetRead-only
Read a dataset version with its image count, splits, and the preprocessing and augmentation it applied
version.get
Account
- GetRead-only
Check that the key works; the route answers 200 either way, so `authenticated` reports whether a workspace actually came back
account.get
Images
- UploadWrite
Upload one image to a project by URL or base64; a duplicate is reported as such rather than as a failure
images.upload
Infer
- InferWrite
Run a trained model on an image on the serverless inference host, returning predictions and their count; billed per image
infer
Models
- ListRead-only
List a project's trained models with their task, architecture and metrics; each `url` is the model ID `infer` takes
models.list
Workspace
- GetRead-only
Read a workspace and its projects with image, annotation and version counts
workspace.get
Connect Roboflow to Claude, ChatGPT or Cursor
- 1
Connect Roboflow in Corsair
Add your Roboflow API key once in Corsair. Corsair stores the credential encrypted and makes the Roboflow API calls for your agent, so it never goes into a prompt or a config file. Connect Roboflow
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs Roboflow. On a ChatGPT personal plan, connect Roboflow here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, Roboflow's read and write operations run right away and its 2 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/roboflow, add the Roboflow plugin, and connect with an API key. Then call methods like corsair.roboflow.api.account.get() from your app. Corsair keeps each tenant isolated.
Yes. Roboflow requires an API key from your Roboflow account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit Roboflow, GitHub, Notion, Stripe, and the rest. Trigger Roboflow from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for read workspaces, projects, versions and trained models, create projects, upload images, and run model inference on the serverless host with Roboflow. Common builds include sync jobs, admin tooling, and agents that call Roboflow APIs from your backend.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Roboflow API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/roboflow in the open repo. When Roboflow ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your Roboflow data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Roboflow data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put Roboflow on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 2 destructive Roboflow operations. You can change a link's mode at hub.corsair.dev/me.