CO

Conductor MCP Server REST API Integration

Integrate with Conductor (OSS & Orkes) REST APIs using the MCP server to build, manage, and monitor workflows efficiently.

Quick Install
npx -y @conductor-oss/conductor-mcp

Overview

The Conductor MCP Server is a Model Context Protocol (MCP) adapter that lets AI agents and other MCP clients interact programmatically with a Conductor orchestration instance (Conductor OSS or Orkes). It runs as a local MCP server process and exposes a curated set of workflow-management tools so agents can create, modify, execute, and inspect workflows without directly calling Conductor REST endpoints.

Using the MCP server simplifies integration between conversational agents (Claude, Cursor, etc.) and Conductor by wrapping common operations — creating workflow definitions, starting executions, querying runs, and gathering metrics — into a predictable, discoverable set of MCP tools. This is useful for fast prototyping of automation flows, on-demand orchestration driven by LLMs, and programmatic workflow monitoring within agent-driven UIs.

Features

  • Create, update, and version Conductor workflow definitions
  • Start and stop workflow executions and retrieve execution results
  • Query workflow and task status, history, and execution metadata
  • Schedule recurring workflows and manage cron-based triggers
  • Run ad-hoc HTTP tasks or system tasks as part of a workflow
  • Authentication and configuration via JSON file or environment variables
  • Designed to be plugged into MCP-capable agents like Claude and Cursor
  • Lightweight CLI/daemon suitable for local development or container deployment

Installation / Configuration

Install from PyPI:

pip install conductor-mcp

Create a JSON configuration file with your Conductor credentials:

{
  "CONDUCTOR_SERVER_URL": "https://developer.orkescloud.com/api",
  "CONDUCTOR_AUTH_KEY": "<YOUR_APPLICATION_AUTH_KEY>",
  "CONDUCTOR_AUTH_SECRET": "<YOUR_APPLICATION_SECRET_KEY>"
}

Important: many setups require the server URL to include the /api suffix (for example, https://developer.orkescloud.com/api).

Environment variable alternatives (the server will read these if no config file is provided):

export CONDUCTOR_SERVER_URL="https://your-conductor-host/api"
export CONDUCTOR_AUTH_KEY="your-auth-key"
export CONDUCTOR_AUTH_SECRET="your-auth-secret"

Run the MCP server (simple):

conductor-mcp --config /absolute/path/to/config.json

Run from the Git repository using uv (project uses astral/uv tooling):

gh repo clone conductor-oss/conductor-mcp
uv sync
uv run conductor-mcp --config /absolute/path/to/config.json

For local development, you can use the included local_development.py helper with the --local_dev flag to source environment variables.

Available Tools / Resources

The MCP server exposes a set of tools that map to common Conductor operations. Examples of exposed capabilities:

  • workflows.create(definition): create or update a workflow definition (supports schemaVersion 1/2)
  • workflows.list(filter): list available workflows and metadata
  • executions.start(name, input, version): start a workflow execution
  • executions.get(executionId): fetch execution status and history
  • executions.search(query): search executions (by correlationId, status, time range)
  • tasks.run(taskType, input): trigger or simulate a task execution (HTTP task, simple task)
  • schedules.create(name, cron, workflow): create or modify a scheduled workflow
  • metrics.get(workflowName, timeframe): retrieve execution counts, failure rates

Available resources and links:

  • GitHub: https://github.com/conductor-oss/conductor-mcp
  • PyPI package: conductor-mcp (pip install conductor-mcp)
  • Conductor documentation (OSS & Orkes): check your provider docs for REST API details
  • Model Context Protocol docs: https://modelcontextprotocol.io

Use Cases

  • Agent-driven workflow creation

    • Prompt an LLM to generate a workflow that integrates multiple HTTP APIs (for example, gather weather, enrich with local NOTAMs, and decide risk). The agent uses workflows.create to persist that definition to Conductor and executions.start to run it.
  • Scheduled notifications

    • Build a recurring workflow named “NotifyStonks” that checks stock prices daily and sends emails to a list of recipients. Use schedules.create to make it run on a cron cadence and workflows.create to define the flow.
  • Interactive troubleshooting and monitoring

    • Use an MCP-enabled agent to query recent failed executions with executions.search, then fetch full execution traces with executions.get to diagnose and propose fixes.
  • CI / automation

    • Invoke executions.start from CI to run end-to-end integration tests implemented as Conductor workflows, and use metrics.get to collect pass/fail statistics.

Example prompts you can send to an MCP-enabled agent:

  • “Create and execute a Conductor Workflow that calls public endpoints to gather current Seattle weather and outputs flight risk factors for small aircraft over South Lake Union using VFR today. Only use public endpoints without API keys.”
  • “Create a daily workflow ‘NotifyStonks’ (schemaVersion 2) that accepts email addresses and a stock symbol, checks current stock prices, and sends an email to the list if the stock is up or down.”

Tips and Notes

  • Authentication: supply CONDUCTOR_AUTH_KEY and CONDUCTOR_AUTH_SECRET via config file or environment variables.
  • URL trailing path: include /api in CONDUCTOR_SERVER_URL where required by your Conductor provider.
  • Security: keep config files containing secrets outside source control; consider using environment variables or secrets management in production.
  • Development: use uv tooling included in the repo for consistent virtualenv and run behaviors.

This MCP server is intended as a bridge between LLM-driven automation and Conductor’s orchestration capabilities, enabling rapid creation and management of workflows from conversational or programmatic contexts.

Common Issues & Solutions

The conductor-mcp package fails to start when using fastmcp version 2.14.1 due to a compatibility issue with the updated mount() API.

✓ Solution

I ran into this too! The issue arises because fastmcp 2.14.1 changed the mount() API, requiring the server instance as the first argument instead of a string prefix. By installing an earlier version of fastmcp, we can avoid this crash. This workaround ensures that conductor-mcp functions correctly without running into the attribute error. uv tool install conductor-mcp --with "fastmcp>=2.2.5,<2.14"

npm install @ChromeDevTools/chrome-devtools-mcp