Skip to content

MCP Server

The standalone MCP server (mcp-server/) exposes assistant capabilities as MCP tools for CLI models like Claude Code and Gemini CLI.

ToolDescription
octipus_searchSearch the web via SearXNG
octipus_fetch_pageFetch and extract text from a URL
octipus_list_agentsList running agents with status
octipus_spawn_agentSpawn a new autonomous agent
octipus_stop_agentStop a running agent
octipus_send_messageSend a message to a running agent
octipus_get_agent_eventsGet agent events (polling with cursor)
octipus_list_sessionsList recent chat sessions
octipus_get_messagesGet messages from a session
octipus_list_modelsList available AI models
octipus_model_healthGet model health status
octipus_chatSend a message through the orchestrator
octipus_chat_with_expertChat using a specific expert
octipus_list_expertsList available experts
octipus_list_toolsList available tools
octipus_execute_toolExecute any tool (filesystem, shell, git, browser-ext, etc.)
octipus_list_skillsList domain knowledge skills
octipus_get_skill / octipus_create_skill / octipus_update_skill / octipus_delete_skillManage skills
octipus_search_knowledgeSearch the RAG knowledge base
octipus_index_fileIndex a file into the knowledge base
octipus_create_recurring_task / octipus_list_recurring_tasks / octipus_update_recurring_task / octipus_delete_recurring_taskManage recurring tasks
Terminal window
cd mcp-server && npm install && npm run build

Add to .mcp.json:

{
"mcpServers": {
"assistant": {
"command": "node",
"args": ["mcp-server/dist/index.js"],
"env": {
"OCTIPUS_URL": "http://localhost:3005",
"OCTIPUS_API_KEY": "<your-jwt-or-api-key>"
}
}
}
}

Add to .gemini/settings.json:

{
"mcpServers": {
"assistant": {
"command": "node",
"args": ["mcp-server/dist/index.js"],
"env": {
"OCTIPUS_URL": "http://localhost:3005",
"OCTIPUS_API_KEY": "<your-jwt-or-api-key>"
}
}
}
}

CLI models can interact with your real browser through the MCP bridge:

octipus_execute_tool(tool_id="browser-ext", tool_name="get_tabs", args={})
octipus_execute_tool(tool_id="browser-ext", tool_name="screenshot", args={})
octipus_execute_tool(tool_id="browser-ext", tool_name="navigate", args={"url": "https://example.com"})

Requires the Chrome extension to be connected.

Terminal window
node mcp-server/dist/index.js --transport http --port 3010