Skip to main content

Temporal MCP Server

Overview

This is a Model Context Protocol (MCP) server that provides tools for interacting with Temporal workflow orchestration. It enables AI assistants and other MCP clients to manage Temporal workflows, schedules, and workflow executions through a standardized interface. The server supports both local and remote Temporal instances.

Read more on the Temporal Code Exchange

Distributions

Tools

Workflow Execution

  • start_workflow - Start a new Temporal workflow execution with specified parameters, workflow ID, and task queue
  • get_workflow_result - Retrieve the result of a completed workflow execution
  • describe_workflow - Get detailed information about a workflow execution including status, timing, and metadata
  • list_workflows - List workflow executions based on a query filter with pagination support (limit/skip)
  • get_workflow_history - Retrieve the complete event history of a workflow execution
  • get_workflow_event - Retrieve a single workflow history event with decoded payload fields when present

Workflow Control

  • query_workflow - Query a running workflow for its current state without affecting execution
  • signal_workflow - Send a signal to a running workflow to change its behavior or provide data
  • cancel_workflow - Request cancellation of a running workflow execution
  • terminate_workflow - Forcefully terminate a workflow execution with a reason
  • continue_as_new - Signal a workflow to continue as new (restart with new inputs while preserving history link)

Batch Operations

  • batch_signal - Send a signal to multiple workflows matching a query (configurable batch size)
  • batch_cancel - Cancel multiple workflows matching a query (configurable batch size)
  • batch_terminate - Terminate multiple workflows matching a query with a specified reason (configurable batch size)

Schedule Management

  • create_schedule - Create a new schedule for periodic workflow execution using cron expressions
  • list_schedules - List all schedules with pagination support (limit/skip)
  • describe_schedule - Get detailed configuration and runtime information about a schedule, including its spec, action, state, recent executions, and upcoming action times
  • pause_schedule - Pause a schedule to temporarily stop workflow executions
  • unpause_schedule - Resume a paused schedule
  • delete_schedule - Permanently delete a schedule
  • trigger_schedule - Manually trigger a scheduled workflow immediately

Temporal Documentation

For more information about Temporal, refer to the official Temporal documentation:

VS Code MCP Config

Add a .vscode/mcp.json file to your workspace. Choose the approach that fits your setup.

Docker (environment variables)

Recommended when running via Docker. Configuration is passed through environment variables.

{
  "servers": {
    "temporal": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "TEMPORAL_HOST",
        "-e", "TEMPORAL_NAMESPACE",
        "-e", "TEMPORAL_TLS_ENABLED",
        "-e", "TEMPORAL_TLS_CLIENT_CERT_PATH",
        "-e", "TEMPORAL_TLS_CLIENT_KEY_PATH",
        "-e", "TEMPORAL_API_KEY",
        "mcp/temporal"
      ],
      "env": {
        "TEMPORAL_HOST": "localhost:7233",
        "TEMPORAL_NAMESPACE": "default",
        "TEMPORAL_TLS_ENABLED": "false",
        "TEMPORAL_TLS_CLIENT_CERT_PATH": "/path/to/client.pem",
        "TEMPORAL_TLS_CLIENT_KEY_PATH": "/path/to/client.key",
        "TEMPORAL_API_KEY": "your-api-key"
      }
    }
  }
}

Python via uvx (CLI arguments)

Recommended when running from PyPI via uvx. No local install required — uvx fetches and runs the package automatically. Configuration is passed as CLI arguments.

{
  "servers": {
    "temporal": {
      "command": "uvx",
      "args": [
        "temporal-mcp-server",
        "--host", "localhost:7233",
        "--namespace", "default",
        "--tls-enabled", "false",
        "--tls-cert", "/path/to/client.pem",
        "--tls-key", "/path/to/client.key",
        "--api-key", "your-api-key"
      ]
    }
  }
}

Configuration Options

Option CLI Argument Environment Variable Default
Temporal host --host TEMPORAL_HOST localhost:7233
Namespace --namespace TEMPORAL_NAMESPACE default
TLS --tls-enabled TEMPORAL_TLS_ENABLED auto-detect
mTLS cert path --tls-cert TEMPORAL_TLS_CLIENT_CERT_PATH
mTLS key path --tls-key TEMPORAL_TLS_CLIENT_KEY_PATH
API key --api-key TEMPORAL_API_KEY

CLI arguments take precedence over environment variables. When TEMPORAL_API_KEY is set, TLS is enabled automatically. When mTLS cert/key paths are provided, TLS is also enabled automatically.

Development

Running Tests

Install development dependencies:

pip install -r requirements-dev.txt

Run the test suite:

pytest test.py -v

Building the Docker Image

docker build -t mcp/temporal:latest .

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

temporal_mcp_server-1.7.0.tar.gz (35.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

temporal_mcp_server-1.7.0-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file temporal_mcp_server-1.7.0.tar.gz.

File metadata

  • Download URL: temporal_mcp_server-1.7.0.tar.gz
  • Upload date:
  • Size: 35.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for temporal_mcp_server-1.7.0.tar.gz
Algorithm Hash digest
SHA256 0b0650022d03f74e69702297131a28127fc14730d368baee364a819ee00a8e0f
MD5 8dbb29b320f71bd69b8a2259a5cf2a0f
BLAKE2b-256 5d03ad19d56cbd6658221d3a2bc9e36ddc767f506443859c5e1877a02abba4df

See more details on using hashes here.

Provenance

The following attestation bundles were made for temporal_mcp_server-1.7.0.tar.gz:

Publisher: release.yml on GethosTheWalrus/temporal-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file temporal_mcp_server-1.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for temporal_mcp_server-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e98f840c0d48f60ba7a2e92dfdf5720e066b6b6d01e60c1eb4d818956fcdafc4
MD5 afee65865908588bc072e3f317817725
BLAKE2b-256 c97ea6b6648c7194eda68d255b31e1c1dfc0b46e330edaffdd01f3993d623002

See more details on using hashes here.

Provenance

The following attestation bundles were made for temporal_mcp_server-1.7.0-py3-none-any.whl:

Publisher: release.yml on GethosTheWalrus/temporal-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.9.1

2 files

1.9.0

2 files

1.8.0

2 files

1.7.1

2 files

This release

1.7.0 This release

2 files

1.6.0

2 files

1.5.0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.0

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page