temporal-invoice-mcp
Provides tools for managing invoice workflows on Temporal, including triggering, approving, rejecting, and checking status of long-running interactive processes.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@temporal-invoice-mcptrigger an invoice workflow from a sample file"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Invoice Demo with Temporal + MCP
Video:

Prerequisites:
Python3+
uv(curl -LsSf https://astral.sh/uv/install.sh | sh)Temporal Local Setup Guide
1. Clone & install
git clone https://github.com/your-org/temporal-mcp-invoice-demo.git
cd temporal-mcp-invoice-demo
uv venv
source .venv/bin/activate
uv pip install temporalio fastmcp2. Launch Temporal locally
temporal server start-dev3. Start the worker
python worker.py [--fail-validate] [--fail-payment]Quick demo boot
Instead of starting the server and worker manually you can launch them in a
tmux session using the boot-demo.sh helper script:
./boot-demo.shClaude for Desktop Instructions (Sonnet 4)
1. Follow steps 1-3 above
2. Edit your Claude Config (Claude > Settings > Developer > Edit Config)
{
"mcpServers": {
"invoice_processor": {
"command": "/Path/To/Your/Install/Of/uv",
"args": [
"--directory",
"/Path/To/temporal-invoice-mcp",
"run",
"server.py"
]
}
}
}3. Restart Claude for Desktop after editing your config
If successful you'll see
invoice_processorunder 'Search & Tools'
4. To kick off processing the mock invoice, run:
trigger <paste: samples/invoice_acme.json>Use your MCP client (e.g., Claude Desktop) to call the trigger, approve,
reject, and status tools. The trigger tool now returns both the
workflow_id and run_id of the started workflow. Pass these values to the
approve, reject, and status tools. The sample invoice lives at
samples/invoice_acme.json. Inspect Temporal Web at http://localhost:8233.
Kill and restart the worker at any time to observe deterministic replay.
5. Results
Claude submits the invoice workflow:
It can get status:
Claude + MCP can send inputs and updates to the process workflow such as approvals, or even do a combination of actions - all agentically, explaining in human analogies what's going on if you ask it to:
What's Cool About This:
Agents and applications connected by MCP can provide a powerful way for humans to interact with processes and applications
(as long as the applications have an API to interact with)
MCP tools don't have to be just one API call - you can get process status and even send it more information as it proceeds
Temporal makes modeling a long-running, durable, interactive transaction simple to integrate with MCP
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Aslan11/temporal-invoice-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server