docs: add a guide for connecting your own AI agent over MCP - #8241
docs: add a guide for connecting your own AI agent over MCP#8241dimitrieh wants to merge 4 commits into
Conversation
|
|
||
| | What is needed | On FlowFuse Cloud | Self-hosted | | ||
| | --- | --- | --- | | ||
| | The platform MQTT broker and Team Broker | Already configured | You configure both | |
There was a problem hiding this comment.
for SH this depends. and is likely going to be resolved with FlowFuse/helm#1010
There was a problem hiding this comment.
Now reads "Whether anything is needed from you depends on how your platform was installed" and no longer presents it as a step. Moved to the closing section, per your comment below.
There was a problem hiding this comment.
We might want to check this one still in follow up reviews
| } | ||
| ``` | ||
|
|
||
| ### From a model provider API |
There was a problem hiding this comment.
For the team to consider, do we want to document this?
| This differs from FlowFuse Expert, which holds every write behind an approval card of its | ||
| own. A connected third-party agent does not use those approval cards. | ||
|
|
||
| What does not vary is the scope you granted. FlowFuse enforces it on every call, so a |
There was a problem hiding this comment.
scope of the PAT or what gets assigned during the authentication
There was a problem hiding this comment.
Covered: "What is always enforced by FlowFuse is what you granted, whether that came from signing in or from the scope on an access token."
States capability and permissions once instead of repeating them, drops the prerequisites framing in favour of the agent resolving version issues, and reframes the editor session as agent-guided.
|
Reworked from the review. The structural point drove most of it: capability and permissions were restated in four places, so they are now stated once and everything else refers to that. Prerequisites removed. No "before you start", no version checklist. Versions moved to a closing "Getting the best out of it" section that opens by saying this is not something to set up in advance, because the agent tells you what is in the way and helps resolve it. Self-hosted broker is now "depends on how your platform was installed" rather than a setup step, per FlowFuse/helm#1010. Wording. AI agent throughout, never assistant. FlowFuse applications, and flows inside your Node-RED instances. Editing rights rather than changes. Dropped "deliberately" and "exposure"; the editor session is agent-guided, with the header control for indicating which browser session it works in. Added the point that your own agent means your own model or provider, in both this guide and the Expert index. Softened. No-delete and manual deploy both carry "for now" plus the intent about acting as required in production and in setups where experimentation is permitted. Read access now simply has no ability to change anything. Tool annotations are described as recommended usage and permissions. Two things to note:
|
|
Up for review |
| On FlowFuse Cloud: | ||
|
|
||
| ``` | ||
| https://app.flowfuse.com/api/v1/mcp |
There was a problem hiding this comment.
yes, this is the final endpoint we landed on, https://app.flowfuse.com/mcp
| Self-hosted, substitute your own platform address: | ||
|
|
||
| ``` | ||
| https://flowfuse.example.com/api/v1/mcp |
| register remote instances and assign them to applications, take snapshots, and build and edit | ||
| flows. | ||
|
|
||
| An agent with read access has no ability to change anything. FlowFuse Tables is read-only for |
|
|
||
| Asking about your platform needs nothing open. Editing flows happens in a live Node-RED | ||
| editor, so that you can see the work as it happens on the canvas rather than receiving a | ||
| result you have to go and check. |
There was a problem hiding this comment.
also because the agent is receiving the full effect of built in node-red validation and can error correct itself if it makes mistakes
| platform header there is a control for indicating which of your current browser sessions the | ||
| agent should work in, so if you have several open you can point it at the right one. Ending | ||
| the session, or closing the tab, ends the agent's access to your editor. Switching team also | ||
| ends it. |
There was a problem hiding this comment.
this will happen automagically, we tested out instructing the agent to use/pin browser tabs via skills and worked perfectly; we just need to implement a skills tool so the agents can learn skills before they do stuff
cc @andypalmi
|
|
||
| ### Command-line and editor agents | ||
|
|
||
| Claude Code, Cursor, Visual Studio Code and Gemini CLI all connect to the same address. Where |
There was a problem hiding this comment.
I havent tested all of the providers yet, but the minimum requirement is for the client to have http support for mcp servers
|
|
||
| ### Local and self-hosted models | ||
|
|
||
| Use any MCP-capable client, such as LM Studio, LibreChat or Open WebUI, pointed at your own |
| Some clients authenticate with a token in a header rather than signing in. This is a property | ||
| of the client, not of the kind of agent: both routes reach the same FlowFuse. | ||
|
|
||
| Create a [Personal Access Token](/docs/user/user-settings/#personal-access-tokens) and |
There was a problem hiding this comment.
this is the intermediary step until we get oauth in, where users have to manualy create their PAT and add it in the config; once oauth kicks in users should only point their clients to the http mcp endpoint and the agent will do the rest;
I don't think we need to describe the intermediary step, the plan is to get mcp oauth in in 3.0 too
| FlowFuse tools carry their recommended usage and permissions, so a connected agent knows what | ||
| each one is for before it calls it. Whether your agent then asks you to confirm is up to that | ||
| agent, and it differs between them. FlowFuse Expert's own approval cards are a first-party | ||
| feature and do not apply here. |
There was a problem hiding this comment.
3rd party clients should also include HITL from the get go, it was included in my video in which i recorded claude desktop asking for permission before tool execution
| agent, and it differs between them. FlowFuse Expert's own approval cards are a first-party | ||
| feature and do not apply here. | ||
|
|
||
| What is always enforced by FlowFuse is what you granted, whether that came from signing in or |
There was a problem hiding this comment.
PAT's only add an aditional layer of enforcement at team level / generic read-write
Adds
docs/user/expert/third-party-agents.mdfor the 3.0 third-party agent feature, and an entry point to it from the Expert index. Written as a how-to, organised by what the reader is trying to do rather than by tool.Two things to confirm before merge
1. The endpoint path. The guide documents
/api/v1/mcp, matching #8192. Onmainafter #8237,forge/ee/routes/index.jsregisters the mcp routes with no prefix andforge/ee/routes/mcp/index.jsregisters the server withprefix: '/mcp', which reads as the root path. The siblingregistrationsroute still carries a full/api/v1/teams/:teamId/mcpprefix. If the intended public path is/mcp, this needs changing in three places in the guide.2. OAuth. The guide leads with signing in and treats access tokens as the alternative for clients that only accept a header, per the 3.0 plan. That depends on #7423 landing. If it slips, the sign-in steps and the per-agent sections need reordering.
A gap this surfaced
docs/user/logs.mddocuments a sparkle icon for FlowFuse Expert actions and a terminal icon for API actions via a Personal Access Token, and says the logs cover "supported FlowFuse Expert and API actions only". It does not describe third-party agent activity. I have linked that section rather than describe a marker I could not verify, but the page likely needs updating for 3.0.Notes
nr-assistantvia the Application's Dependencies tab and restarting, since a stale instance connects fine but cannot build flows.npm run test:docsstrips anchors and only checks file existence, so anchors were checked separately.