Durable Execution
Building long-running interactive MCP tools with Temporal

Building long-running interactive MCP tools with Temporal

8/21/2025

What this post added

This post details the architecture and implementation of long-running, interactive MCP tools powered by Temporal Workflows. It showcases the Temporal Invoice MCP sample, demonstrating how to expose Workflow interactions (start, status, approve, reject) as MCP tools. Key technical aspects include using `client.start_workflow` to initiate Workflows, `handle.signal` for state changes (e.g., `ApproveInvoice`), and `handle.query` for retrieving Workflow state (`GetInvoiceStatus`). The post highlights the use of `workflow.wait_condition` for human interaction and the benefits of Temporal's durable execution for handling complex, multi-step AI processes.

Read the original post ↗