メインコンテンツへスキップ

EKB Runtime

Endpoint: /runtime/mcp
Permission: Use (odin:use) — consent label Use your agents and tools

Runtime turns what already exists in EKB into named MCP tools. Draft / unpublished work is never exposed — publishing is what makes custom tools available over MCP.

Prerequisites​

  • Consent to Use your agents and tools for this client
  • Access to the project(s) whose agents, tools, KB, or smart tables you want to use
  • Published workflows / custom tools if you need run_* tools

Tools the client sees​

Always present​

ToolPurposeKey inputs
list_odin_projectsDiscover project ids, names, and descriptions(none)
search_knowledgeSearch a project knowledge base and return matching passages with sourcesquery (required); project_id (required unless pinned); optional max_results (default 10)
query_smart_tableRead rows from a smart table by name or idtable (required); project_id (required unless pinned); optional search, limit, page, sort_column, sort_direction

Use search_knowledge for looking up facts in documents. Use an ask_<agent> tool when you want an agent to reason over those results.

Dynamic tools (per project)​

PatternMeaningKey inputs
ask_<agent_name>Ask a reachable agentmessage (required); optional chat_id to continue a conversation
run_<tool_name>Run a published custom tool / workflowInputs mirror the tool’s declared schema (real names and types)

Naming notes:

  • Agent and tool names are slugified for MCP (punctuation normalized)
  • With multiple projects and no pin, names may include a project qualifier
  • Tool lists can be large; pin a project when you know the target

Every ask_* response includes a chat_id. Pass it back on the next call to continue the same conversation; omit it to start fresh.

Pin a project​

Send this header from your MCP client config:

x-project-id: <your-project-id>
ModeBehavior
With pinTools scoped to that project; project_id often optional on static tools
Without pinMay aggregate across projects you can access; project_id required on search_knowledge / query_smart_table

Discover ids with list_odin_projects if you do not already know them.

Publishing and visibility​

ResourceExposed over Runtime when
AgentYou can reach it in EKB with the same account
Custom tool / workflowIt is published (drafts are omitted)
Knowledge base passagesDocument is visible to you (including Access Tags)
Smart table rowsTable exists in a project you can access

Runtime does not grant extra visibility. Access Tags and project membership still filter what search and agents can return.

When to use Runtime​

  • “Ask our support / HR / ops agent from Claude”
  • “Run this published workflow with these inputs”
  • “Search the KB” or “pull rows from a smart table”
  • Any client that should use EKB without permission to change configuration

Tips​

  • Publish workflows before expecting them as run_* tools
  • Prefer Runtime-only connections on laptops and assistants that must not edit agents
  • Prefer ask_* when you want judgment; prefer search_knowledge / query_smart_table for direct lookup
  • Keep conversations coherent by reusing chat_id

Troubleshooting​

SymptomWhat to check
Expected run_* missingPublish the tool; confirm the account can see it in the product
Wrong or huge tool listSet x-project-id
Search returns nothing sensitive you expected to hideAccess Tags / project access for the calling user — Runtime acts as that user
project_id is requiredCall list_odin_projects or pin with x-project-id
Conversation resets every turnPass chat_id from the previous ask_* response