floe
Home / Docs / Connect your AI tools to Floe

Connect your AI tools to Floe

Two different things are called MCP in Floe, and this page is about one of them.

This page is Floe as an MCP server — you connect your own AI tool to Floe and work with Floe as a product: count demos, read what prospects asked, edit guides.

The other one is Floe as an MCP client — the Support Agent calling your MCP server to answer a signed-in user's account questions. That is documented under Support → Live account data with MCP. The two share a protocol and nothing else.

Floe exposes a remote Model Context Protocol server at:

https://api.floe.so/mcp

Any AI tool that speaks remote MCP over Streamable HTTP with OAuth can connect: Claude Code, Claude Desktop, claude.ai, ChatGPT and Cursor all do.

What you can do with it

  • Ask about your demos. How many demos last month, what prospects asked, what a specific session covered.

  • Read what Floe knows about your product. The crawled content, the derived product knowledge, the guides the agent uses.

  • Write guides. Rewrite what the Demo Agent says about a feature, in your words, from your editor.

  • Keep reference guides current. Add or correct the facts both agents answer from, such as a security answer or how an integration works.

  • Build your demo tour. Write the walkthrough the Demo Agent drives: the plan, its steps and its script. See Guided workflows.

Other plans, such as onboarding flows that guide your users inside your product, are made by Floe. Talk to us if you want one.

Setting it up

Claude Code

claude mcp add --transport http floe https://api.floe.so/mcp

Then run /mcp in Claude Code and follow the browser prompt. You will land on a Floe consent screen, pick one organization, and approve the access you want.

Claude Desktop and claude.ai

Add a custom connector in Settings → Connectors with the URL above. Claude opens the same consent screen in your browser.

Whether you can add a connector depends on your Claude account. Check Claude's documentation for current requirements.

ChatGPT

Add a connector with the URL above using the connector settings available on your account. If it does not show Floe's guided prompts, paste the prompt under Guided workflows.

Cursor

Add it to your MCP configuration with the URL above and "type": "http".

One organization per connection

A connection reaches exactly one organization. You choose which on the consent screen. If you work across two organizations, connect the tool twice — each connection is separate and separately revocable.

What a connection can do

Access is spelled the same way as the permissions on your members page, and it can never exceed your own role. If you are a Member, a connection you make cannot read transcripts, because you cannot.

If your AI tool does not ask for specific access, the consent screen offers the access the tool registered for, or all of the access below. Either way it is limited to your role, and you choose what to approve. A tool that asks only for access Floe does not offer gets an error before any consent screen opens.

AccessWhat it allows
view_sitesSites, demo readiness, demo metrics, guides
update_sitesWriting Demo Agent guides
view_contentIngested content, product knowledge and reference guides
manage_contentCreating and editing reference guides
view_conversationsDemo sessions, conversations, full transcripts
view_plansReading your product walkthrough and its steps
manage_plansCreating, editing and activating your product walkthrough

view_conversations is Owner and Admin only, the same as in the dashboard — a verbatim prospect transcript is a more sensitive read than a count. manage_content and manage_plans are Owner and Admin only too. A connection made before one was offered does not have it: connect the tool again to approve it.

The tools

Sites and demos — list_sites, get_site, get_demo_readiness, get_demo_metrics

Prospect conversations — list_demo_sessions, get_demo_session, get_transcript, top_questions, list_conversations, get_conversation

Guides — list_guides, get_guide, create_guide, update_guide

Product knowledge — list_content, get_content, get_product_knowledge

Reference guides — list_reference_guides, get_reference_guide, create_reference_guide, update_reference_guide. These are the facts both agents answer from, the same ones as Knowledge → Facts in the dashboard. An update needs the version you read, so it never overwrites an edit made since.

Product walkthrough — reading, creating, editing, reordering and activating your product walkthrough (the tour a demo opens with) and its steps. The plan tools show only product walkthroughs; feature tours and other plans are made by Floe.

Your tool only sees the tools your access covers, so the list you get may be shorter than this one.

List pages

list_sites, list_guides, list_plans and list_tasks return up to 200 items by default. Set limit from 1 to 200 for a smaller page. The total counts the full matching list, while hasMore tells you whether another page exists. Pass nextCursor as cursor on the next call, keeping your other arguments the same. A final page has hasMore: false and nextCursor: null.

Pages are separate reads, so concurrent additions, edits or deletions can change the list between calls. An invalid cursor, or one whose item has been removed, requires starting again without a cursor. Start again for a fresh complete view.

get_plan still returns the full plan and every task. Use list_tasks when you need bounded pages.

There are no delete tools

Nothing here deletes or archives anything. Not a guide, not a plan, not a session. Deleting stays in the dashboard, where a human is looking at what they are about to remove. To retire a product walkthrough, ask us.

Counting demos

get_demo_metrics returns two numbers, both labelled, because Floe holds two different definitions of "a demo" and they do not agree:

  • Sessions started — demo sessions created in the window, including older sessions recorded before Floe labelled their source.
  • People who took a demo — distinct people who reached the demo stage. Excludes those older sessions.

Neither excludes your own team's test runs, so if you have been demoing your own product to yourself, both numbers include it.

Writing a guide

A guide gives the Demo Agent the facts and the order of steps for one plan. Rewriting one is the fastest way to change what the agent says.

Read the guide for the "reporting" topic on my site, then rewrite the
"what it does" section so it leads with the weekly summary rather than
the filters.

Two things to know before you do this.

Guides are checked on the way in. A guide that is too long, reads like marketing copy, or names a URL that does not exist on your product is rejected and not saved. You get the specific failure back, with the numbers.

  • Plan guides cap at 6,000 characters; site-level guides at 4,000.
  • Sentences average under 16 words, with under 15% over 30 words. The agent says this out loud.
  • No marketing language — the rejection names the phrase it objected to.
  • Every URL must match a page Floe has crawled. If your site has not been crawled yet the check cannot run, and the result tells you so — verify the links yourself when you see that.

Read floe://guide-contract from your tool for the full contract.

A hand-written guide is pinned. It stays exactly as you wrote it, and stops picking up improvements from re-crawls. There is no un-pin button today; ask us if you need one reverted.

A guide that drives your product gives one step per beat. Pass primaryTaskSteps to create_guide with exactly one step for each numbered beat, in the same order. entryPoint.clickPath takes objects — { "type": "navigate", "url": "/leads" } or { "type": "click", "text": "Priya Shah" } — and a navigate without a URL or a click without text is rejected before anything is saved. update_guide cannot change the steps or the entry path, so keep the same number of beats when you edit a guide's content. floe://guide-contract has the beat format and a worked example.

Guided workflows

Claude Code and Claude Desktop surface Floe's prompts directly. In Claude Code the demo tour prompt appears as /mcp__floe__build_demo_walkthrough, followed by your site id; Demo Agent → Setup shows Owners and Admins the command with yours filled in until a demo tour is live. It walks through the whole job: what to read first, how to shape the walkthrough, what order to write things in. Run it from your product's repository, so it can read each page's route and labels from your code.

Whether your AI tool shows guided prompts is up to that tool. If it does not show them, paste this instead, with your site id:

Build the product walkthrough in Floe for site <your site id>, using the floe tools.
1. Run get_demo_readiness. If product sign-in is missing, tell me.
2. Run list_plans. If a PRODUCT_WALKTHROUGH exists, get_plan it and improve
   it with update_task instead of making a second one.
3. Read get_product_knowledge (features, then workflows) and top_questions,
   and, if you can read MCP resources, floe://task-schema and
   floe://guide-contract.
4. Plan up to seven steps: where a user lands, the job they do every day,
   and the result they get. End on a page that has data on the demo account.
5. create_plan with type PRODUCT_WALKTHROUGH, then create_task for each step.
   Read this repository for each page's route, heading and button labels;
   if you have no repository, ask me for them.
6. create_guide bound to the plan, then activate_plan.
7. Run get_demo_readiness again.

A consent link is valid for 10 minutes and can be completed only once. If it has expired or already been approved or denied, start connecting again from your AI tool.

Custom OAuth clients and request limits

Registration supports none (a public client with PKCE) and client_secret_post. If the authentication method is omitted, Floe selects none and returns that selection in the registration response. Use the returned authentication method.

MCP and OAuth request bodies are limited to 1 MiB. Malformed JSON returns 400, and an oversized body returns 413. Reduce the request size before retrying. OAuth registration, token and revocation errors can be read by browser clients from their own origin.

Revoking a connection

Organization → Connected apps lists every AI tool you have connected to that organization, what access each has, and when it was last used. Revoking one stops it working within a minute.

You see and revoke your own connections. A colleague's connection is theirs to revoke.