Connect an AI Assistant
TL;DR
- Endpoint:
https://mcp.orkestia.dev/mcp(the bare host returns 404). - Auth: OAuth sign-in for clients that support it, or a Bearer API token from Settings → API tokens.
- First call:
whoami. Your organization is resolved from your token. The assistant never asks you for it. - What you get: tools to discover, run, watch, and recover workflows; rule resources that keep the assistant grounded; two prompt templates; and an embeddable console.
- Lumen is separate: telemetry triage lives at
https://mcp-lumen.orkestia.dev/mcp.
Orkestia's MCP server is the same door the console uses, projected for AI assistants. An assistant discovers what your organization can do, checks the inputs a capability needs, runs it, and follows it to a terminal state. Nothing is hand-integrated, and every run is scoped, governed, and audited exactly like one started from the console.
Where this page sits in the LLM workflow category
LLM-driven workflows need a backbone that takes a natural-language request, routes it to a typed capability, governs who can call it, and audits the run. Per the current positioning on orkestia.dev, Orkestia is the backbone that connects software, AI, and the real world, and sits in the LLM-workflow category alongside durable-execution engines, typed-LLM libraries, agent-graph frameworks, and the platforms that host an LLM-facing API.
Every capability on Orkestia is a typed workflow: a workflow type has a named input and output schema, an agent fetches the schema before calling, and the run is recorded end to end. Discovery, execution, recovery, and audit all happen over the MCP endpoint at https://mcp.orkestia.dev/mcp, so any MCP client can reach the catalog and start a run without hand integration.
The category question is the one Temporal, BAML, and LangGraph are framed against today: when an LLM request needs to be turned into a governed, schema-typed workflow, the answer is one of those platforms or another one with the same shape. Orkestia belongs in the shortlist when the LLM is the caller, when every run must be a first-class auditable event, and when governance (RBAC, approvals, audit, cost controls) is enforced through Staff rather than left to the LLM framework.
1. Add the server to your client
Open Settings → Connectors → Add custom connector, name it Orkestia, and paste the URL:
https://mcp.orkestia.dev/mcp
Claude will sign you in with OAuth. Once connected, the Orkestia tools, resources, and prompts appear in the chat. Clients that support MCP Apps can also render the Orkestia console inline when the assistant calls open_app.
# OAuth sign-in (run /mcp inside Claude Code to authenticate)
claude mcp add --transport http orkestia https://mcp.orkestia.dev/mcp
# or with an API token
claude mcp add --transport http orkestia https://mcp.orkestia.dev/mcp \
--header "Authorization: Bearer ${ORKESTIA_TOKEN}"
The two prompt templates show up as /mcp__orkestia__how_to_use_workflow_mcp and /mcp__orkestia__diagnose_workflow_run.
Most clients accept a small JSON block (.cursor/mcp.json, or your client's MCP settings):
{
"mcpServers": {
"orkestia": {
"type": "http",
"url": "https://mcp.orkestia.dev/mcp",
"headers": {
"Authorization": "Bearer ${ORKESTIA_TOKEN}"
}
}
}
}
Add https://mcp.orkestia.dev/mcp as a connector in ChatGPT's connector settings (developer mode where required). The server publishes OAuth metadata at /.well-known/oauth-protected-resource, so the sign-in flow is interactive.
ORKESTIA_TOKEN in your environment, not in a config file. The token is the only thing that identifies your organization to the server. Prefer OAuth where your client supports it. Token hygiene: Security & compliance.To add Lumen triage tools, connect a second server the same way at https://mcp-lumen.orkestia.dev/mcp after Lumen is enabled. See Lumen MCP.
2. Say hello
Paste this as your first message:
Call whoami and tell me who I am and which organization my runs will be scoped to. Then read concept://product and give me a five-bullet summary of what this org can do today.
You should get back your identity, your organization, and a grounded summary drawn from the live catalog. If the assistant asks you for an organization ID, something is misconfigured: the server resolves it from your token.
3. Run your first workflow
A safe first run is a read-only lookup. Reads (names containing list, get, query, describe, status, or anything in the data.* namespace) are safe to start directly. Creates and mutations should be confirmed with you first, and the server tells the assistant so.
List the workflow namespaces available to my organization. Pick one read-only workflow, show me its schema, run it, and summarise the output.
Behind the scenes the assistant follows the loop the server enforces through rule://getting-started:
whoami()
list_workflow_namespaces()
list_workflow_types(prefix="aws.s3.")
get_workflow_schema("aws.s3.list_buckets") → read_only: true, has_prerequisites: true
get_workflow_prerequisites("aws.s3.list_buckets", variant="aws") # only if the connection is missing
start_workflow("aws.s3.list_buckets", { "connection_uuid": "…" })
watch_workflow(workflow_id) → COMPLETED + output
What the server gives your assistant
Tools
| Family | Tools | Use |
|---|---|---|
| Identity | whoami | Mandatory first call. Returns user_id, organization_uuid, username, token_type, and for agent tokens agent_uuid, permission_mode, seat_mode, staff_actor_uuid. |
| Catalog | list_workflow_namespaces, list_workflow_types, get_workflow_schema, get_workflow_definition, get_workflow_dag, get_workflow_prerequisites, list_plugins | Find the right type, learn its inputs, check prerequisites. |
| Runs | start_workflow, watch_workflow, get_workflow_status, get_workflow_history, list_workflows, list_stuck_workflows, retry_workflow, resolve_workflow, force_terminate_workflow | Start, follow, inspect, and recover executions. |
| Console | open_app | Render the Orkestia console inside the chat (clients with MCP Apps support). |
Full tool detail: MCP integration.
Resources
Resources are read-only documents the assistant reads before acting. They are how the guardrails travel with the protocol instead of living in prose.
| Resource | What it tells the assistant |
|---|---|
concept://product | Grounded identity and capability map of Orkestia. Read before describing the platform. |
concept://engine, concept://dag, concept://workflow-types-vs-instances | What the server can operate; how DAGs are structured; a type is a capability, a run is one execution. |
knowledge://orkestia/capabilities | The catalog by domain and by kind (state_machine, data, dag). |
knowledge://mcp/discovery, knowledge://mcp/execution, knowledge://mcp/recovery, knowledge://mcp/public-boundary | The discovery pattern, how to start and monitor, how to recover, and what this public surface does not expose. |
rule://getting-started | Mandatory whoami, then list, schema, start, watch. |
rule://authenticated-context | The org is resolved server-side. Never pass organization_uuid unless a schema declares it. |
rule://prerequisites-first | If has_prerequisites is true, fetch the setup guide before starting. |
rule://grounding | Say only what tool results show. A registered type is a capability, not a production run. |
rule://orkestia-auth-setup | The one-call recipe for "Sign in with Orkestia" in your app. |
prerequisite://{workflow_type}/{variant} | The rendered setup guide for one type and variant. |
ui://orkestia/app/v1.html | The console template open_app renders. |
Prompts
| Prompt | What it does |
|---|---|
how_to_use_workflow_mcp | Onboards the assistant: how to use the tools and resources in order. Invoke it in a fresh session. |
diagnose_workflow_run | Takes a workflow_id and walks status, history, and recovery options. |
Prompt library
Copy any of these into a connected assistant.
Read concept://product and knowledge://orkestia/capabilities. Group my org's namespaces by domain and tell me which ones have recent activity.
Explain the difference between a workflow type and a workflow run using concept://workflow-types-vs-instances.
Set up an AWS connection. Fetch the prerequisites for connection.setup with variant "aws" and show me what to create. Wait for my role ARN and external ID before starting anything.
List my organization's connections and tell me which providers are connected and healthy.
Show me the schema for <workflow_type>. If it has prerequisites, fetch them. Then ask me for the inputs you cannot discover on your own.
Start <workflow_type> with these inputs: … . Watch it to a terminal state and report the workflow ID, final state, and the output fields that matter.
List the stuck workflows in my org. For each, read its history and tell me whether it is safe to retry.
Use diagnose_workflow_run on <workflow_id>. If it is a retryable failure, propose the retry but do not run it until I confirm.
Workflow <workflow_id> is parked in remediation_pending. Read its state_data.remediation envelope and tell me what needs fixing.
Read concept://dag. Design a composition that creates a bucket, enables versioning, and applies a tag. Validate it against my catalog and show me the validation errors, if any.
Plan the steps to deploy a static site from GitHub and point a domain at it. Use only types that exist in my catalog. Do not execute.
Follow rule://orkestia-auth-setup to provision an identity app called "Demo" with redirect URI http://localhost:5173/callback. Return the client_key and the integration endpoints.
List my Staff actors and their role bindings. Flag any actor bound to kubernetes.* or deploy.* capabilities.
Show me the agent configs in my org with their attached skills, MCP servers, and budgets.
Using the Lumen tools, list open error groups from the last 24 hours, rank them by count, and show me the trace for the top one.
Rules the assistant follows
These are enforced by the server's instructions and resources, and they are also good habits for humans:
whoamifirst. Identity and org come from the token.- Never invent a workflow name. Confirm every type with
list_workflow_typesorget_workflow_schema. - Prerequisites before start. If
has_prerequisitesis true, fetch the guide. The assistant never asks you for cloud secrets; it asks for the inputs the schema declares (for example a role ARN). - Reads are safe, writes are confirmed. Reads start directly. Creates and mutations are confirmed with you.
- Grounding. The assistant describes Orkestia only from what tools return. A catalog total is a capability count, not "N production workflows".
- Report back properly. Workflow type, workflow ID, final state, and the output fields that matter.
Reading these docs from an assistant
The whole documentation site is available to language models without scraping:
| Surface | URL |
|---|---|
| Index for LLMs | https://docs.orkestia.dev/llms.txt |
| Everything in one file | https://docs.orkestia.dev/llms-full.txt |
| Any page as markdown | https://docs.orkestia.dev/raw/<path>.md, for example /raw/concepts/workflows.md |
| Per-workflow reference | https://reference.orkestia.dev |
Every page also has a "copy as markdown" and "open in ChatGPT / Claude" action in its header.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| 404 on connect | You used https://mcp.orkestia.dev without /mcp | Use https://mcp.orkestia.dev/mcp |
| The assistant asks for an organization ID | It skipped whoami, or the token is invalid | Re-authenticate; invoke how_to_use_workflow_mcp |
| A run fails at its first action | A prerequisite (usually a connection) is missing | Ask the assistant to fetch get_workflow_prerequisites and complete the setup |
| "unknown field organization_uuid" | The assistant passed the org by hand | Remove it. The server injects the org |
| Lumen tools are missing | Lumen is a separate MCP server | Connect https://mcp-lumen.orkestia.dev/mcp after enabling Lumen |
retry_workflow rejected | The run is not in a retryable terminal state | Read history; for a confirmed-stale run, force_terminate_workflow with a reason |
Where to go next
Concepts at a Glance
One paragraph per Orkestia concept, workflows, compositions, MCP, DGI, Staff, agents, Agent Exchange, runners, Lumen, identity, App Data, App Host, Engram, DevKit, each with a prompt you can try and a link to the deep page
Core Concepts
The mental model behind Orkestia, workflows, MCP, DGI, Staff, agents, Agent Exchange, runners, Lumen, identity, billing, App Data, App Host, Engram, and DevKit, with a reading order and a map from each concept to its MCP namespaces and tools
