Orkestia
Blog
Staff & Agents

Configs, skills, and MCP

The agent definition — model, guidance, workflow-backed skills, MCP servers, and how they gate every tool call

Staff shows an actor. The agent config is what that actor actually runs. Change the config and the next session picks it up — no redeploy.

Agent config

PieceWhat it declares
Model profileWhich LLM, via your org's AI connection
GuidanceStanding instruction documents
Skills / skill packagesWorkflow-backed abilities the tool-policy gate allows
MCP serversExtra tool servers, plus the built-in workflow MCP
Runner groupMust be agent-eligible
BudgetSpend ceiling checked as the session works
Memory flagsEngram read/write/strategy — Memory & cost

Configs are agents.agent-config.* workflows: create, update, clone, attach/detach skills and MCP. There is a draft-from-description path (the hire wizard uses it).

Console: Build → Configs (/configs).

Skills

A skill is not free-form tool access. It names the workflows that implement it. The runtime blocks a call to a capability no attached skill grants — before execution.

Bundle skills into packages to reuse the same grant set across actors. Manage them under Build → Skills.

A freshly hired actor that "does nothing" almost always has zero workflow-backed skills (or none that match the task). Attach a skill that grants the workflows you expect, then invoke again.

MCP servers

Two kinds:

  1. Built-in Orkestia workflow MCP — always-on for the org's agents. Same tools as MCP integration: whoami, list_workflow_types, get_workflow_schema, start_workflow, watch_workflow, retry/stuck helpers. Hire attaches it by default.
  2. Your servers — register a URL, refresh tools, attach to configs. Build → MCP servers. OAuth-capable servers have a callback route in Staff.

Register → refresh → attach to the config → next session loads the tool list. Health-check failures show on the MCP detail page.

How a call is allowed

tool call
  → skill policy (is this workflow granted on the config?)
  → Staff RBAC (does this actor's role allow the workflow?)
  → budget check
  → engine starts the workflow (same RbacGuard as a human)

Denied attempts are recorded. There is no "Staff chat bypass."

End-user agents

Apps you build can put an agent in front of end-users (agents.end-user.*, including streaming). The end-user identity is injected into the run; the agent still only has its skills, roles, and budget. That is a product feature on top of this substrate, not a second runtime.

One Identity app → one AgentConfig. If you need two agent products (app vs legacy, or two brands), provision two Identity apps. Do not copy another app's virtuals or configs onto this one.

Hire flow

Where configs are created for most customers.

Identity

When the actor must call MCP from outside Staff.

agents.* catalog

Typed schemas for every substrate workflow.