Octopus Integration
How Octopus AI agents expose their capabilities as MCP tools via the octopus-tools server — and how workflows can invoke agent-owned tools the same way they invoke any MCP tool.
The Octopus–MCP Bridge
Octopus agents register their tools with the platform at startup via the OctopusToolBridge. This bridge presents itself to the Flow Studio engine as a standard MCP server with server ID octopus-tools. From a workflow perspective, calling an Octopus agent tool is identical to calling any other MCP tool.
Octopus Agent (OctopusToolBridge)
│ registers tools at startup
▼
IMCPServerRegistry
└── serverId: "octopus-tools"
├── tool: "creditScoreAnalyzer"
├── tool: "fraudRiskAssessor"
└── tool: "kycDocumentValidator"
│
▼
MCPToolCallNode (serverId: "octopus-tools", toolName: "creditScoreAnalyzer")
│
▼
OctopusToolBridge.DispatchAsync(toolName, parameters)
│
▼
Octopus Agent — executes tool logic, returns result
Dynamic Tool Registration
Octopus agent tools are dynamic — they are registered at agent startup and may differ between deployments. The tool catalog for octopus-tools is fetched live from the bridge at design time. The palette in Flow Studio shows the current set of registered Octopus tools with their parameter schemas.
// Octopus agent registration (called at agent startup):
public class CreditScoreAgent : OctopusAgent
{
protected override IEnumerable<OctopusTool> DefineTools() =>
[
new OctopusTool
{
Name = "creditScoreAnalyzer",
Description = "Analyses credit risk from financial data and returns a score 0–1000",
InputSchema = new JsonSchemaBuilder()
.Property("applicantId", JsonSchema.String().Required())
.Property("includeExplanation", JsonSchema.Boolean())
.Build()
}
];
}
Calling an Octopus Tool from a Workflow Node
{
"nodeType": "MCPToolCall",
"name": "scoreCreditRisk",
"config": {
"serverId": "octopus-tools",
"toolName": "creditScoreAnalyzer",
"inputMap": {
"applicantId": "$json.applicantId",
"includeExplanation": true
},
"timeoutSeconds": 45
}
}
Workflow → Octopus vs. Octopus → Workflow
| Direction | Mechanism | Use Case |
|---|---|---|
| Workflow calls Octopus tool | MCPToolCallNode with serverId: "octopus-tools" | Structured workflow step needing AI reasoning from an agent |
| Octopus agent starts a workflow | IWorkflowOrchestrator.StartAsync() called from agent code | Agent-driven process initiation (e.g., detected anomaly triggers remediation workflow) |
| Octopus agent calls MCP tool | Agent uses its own IMCPClientFactory directly | Agent autonomously calls another AI tool without workflow involvement |
timeoutSeconds to at least 60 for agent-backed tools. The Octopus bridge itself enforces a 120-second maximum per tool call — beyond that, the bridge cancels the agent invocation and returns a timeout error.