Onboard your agent
Connect Claude Code, Codex, Cursor, Windsurf, VS Code or OpenCode to BioFlow in one step: paste one sentence and the agent wires up the MCP server, verifies the connection, and reports back.
Copy the sentence above into any AI coding agent, or run each step yourself below. The sentence tells the agent to fetch and execute https://getbioflow.com/agent-setup/prompt.md — the same file this page is generated from.
Fetch and execute the appropriate instructions to set me up for BioFlow from https://getbioflow.com/agent-setup/prompt.md
What you get
- 12 operations reachable via
search_tools/execute_typescript(Code Mode) over OAuth 2.1 — no API key needed, scope-filtered to what you grant. See Connecting AI assistants for the full operation and scope reference. - The REST API and both SDKs, if you would rather script against BioFlow directly.
- A one-call verify step, so you know the connection actually works.
Get credentials
MCP needs no key. https://app.getbioflow.com/api/mcp authenticates with OAuth 2.1 + PKCE, triggered automatically on the first tool call.
The REST API and SDKs need one API key, only if you want those instead of (or in addition to) MCP. Create one at the developer console and store it as BIOFLOW_API_KEY.
Connect your agent
This MCP server exposes exactly two tools — search_tools and execute_typescript (Code Mode) — instead of one tool per operation. Call search_tools to get TypeScript declarations for the 12 scope-filtered operations you can reach, then call execute_typescript with a short program that invokes them as external_* functions, e.g. external_page_list for the page.list operation.
Claude Code
claude mcp add --transport http bioflow https://app.getbioflow.com/api/mcpSign in when the OAuth prompt appears on the first tool call.
Codex
codex mcp add bioflow --url https://app.getbioflow.com/api/mcpRun codex mcp login bioflow to complete OAuth.
Cursor
Add this to .cursor/mcp.json:
{
"mcpServers": {
"bioflow": {
"url": "https://app.getbioflow.com/api/mcp"
}
}
}Approve the OAuth consent screen on the first tool call.
Windsurf
Add this to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"bioflow": {
"serverUrl": "https://app.getbioflow.com/api/mcp"
}
}
}Approve the OAuth consent screen on the first tool call.
VS Code
Add this to .vscode/mcp.json:
{
"servers": {
"bioflow": {
"type": "http",
"url": "https://app.getbioflow.com/api/mcp"
}
}
}Approve the OAuth consent screen on the first tool call.
OpenCode
Add this to opencode.json:
{
"mcp": {
"bioflow": {
"type": "remote",
"url": "https://app.getbioflow.com/api/mcp"
}
}
}Approve the OAuth consent screen on the first tool call.
Generic MCP entry (any other client): Streamable HTTP at https://app.getbioflow.com/api/mcp, OAuth 2.1 with PKCE and dynamic client registration.
SDK / CLI
Node / TypeScript — @bioflow/sdk
npm install @bioflow/sdkimport BioFlow from "@bioflow/sdk";
const bioflow = new BioFlow({ apiKey: process.env.BIOFLOW_API_KEY });Smoke call: await bioflow.pages.list({ limit: 20 });
Python — bioflow-sdk
pip install bioflow-sdkfrom bioflow_py import BioFlow
bioflow = BioFlow() # reads BIOFLOW_API_KEY automaticallySmoke call: bioflow.pages.list(limit=20)
Verify
- MCP: call
search_tools(no arguments) — expect a declaration forexternal_page_list. Then callexecute_typescriptwith codereturn await external_page_list({}). - REST / SDK:
curl -H "Authorization: Bearer $BIOFLOW_API_KEY" https://app.getbioflow.com/v1/usage.
Resources
The machine-readable version of this page is https://getbioflow.com/agent-setup/prompt.md — raw markdown, no auth, meant to be fetched and executed by an agent rather than read by a human.
Connecting AI assistants (MCP)
Connect Claude, ChatGPT, Copilot or any MCP client to your BioFlow workspace over OAuth 2.1 — setup per client, the 12 tools, the 6 scopes, and the safety rails.
API documentation
BioFlow REST API docs: API-key auth, 22 operations across pages, contacts, files, analytics and webhooks — RFC 9457 errors, rate limits, and idempotency.