# Camunda (BPMN Engine) MCP for AI Agents AI Agent Connect

> Camunda (BPMN Engine) MCP connects your Camunda engine to your AI agent so you can manage business workflows using natural language. It lets you deploy BPMN models, start process instances, and manage user tasks directly from your chat. Instead of switching between tabs, you can use your agent to monitor incidents, check cluster topology, and inspect process definitions in real-time.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_y90Ds8k0UbZiOWswYWNQuOxmGmJvdjC4E519twOc/ai-agent-connect
- **Tags:** bpmn, workflow-automation, process-orchestration, camunda-8, human-tasks

## Description

Managing complex business workflows often means constantly switching between the Camunda Modeler and the Operate dashboard. You spend your day hunting for bottlenecks, checking task statuses, and manually digging through logs to see why a process stalled. This Connector changes that by bringing your orchestration engine directly into your AI agent. You can now ask your agent to start a new process instance with specific variables, find out which team members are stuck on human tasks, or pull the XML for a definition to see how a workflow is actually wired up. It handles the heavy lifting of interacting with the Camunda engine so you can stay focused on the logic. Whether you're troubleshooting a failed job or just need to see the health of your cluster topology, you can get those answers in a single conversation. It's a way to make your AI act as a technical process orchestrator, giving you a hands-on way to manage your BPMN resources without leaving your primary workspace. You'll find this is a major win when you're already in your IDE or a chat client and just need to move a process along or verify a variable without opening another browser tab. By including this in your Vinkius catalog, you get a direct line to your process management tools that feels natural and stays out of your way until you need it.

## Tools

### get_user_task_form
Fetches the form linked to a specific user task. It shows what data is required from a human.

### get_variable
Gets the value of a specific process or local variable. It's perfect for verifying data points.

### search_groups
Finds user groups within your Camunda environment. Use this to manage team permissions.

### activate_jobs
Polls jobs for workers to ensure they are processed. This keeps your background tasks moving.

### assign_user_task
Assigns a specific user task to a person in your workflow. It helps keep your team organized.

### complete_job
Marks an activated job as finished. Use this to move your processes forward.

### complete_user_task
Completes a user task and adds specific variables. It records the data needed for the next step.

### deploy_resources
Deploys BPMN, DMN, or Form resources to your engine. This makes pushing updates much faster.

### fail_job
Marks a job as failed to trigger retries or incidents. It helps you test error handling logic.

### get_incident
Pulls the specific details of a process incident. Use this to see exactly what went wrong.

### get_process_definition_xml
Retrieves the BPMN XML of a process definition. It lets you inspect the underlying logic.

### get_process_instance
Gets the status and details of a specific process instance. You can check progress in real time.

### get_topology
Shows the cluster topology and partition status. This is great for checking your infrastructure health.

### get_user_task
Shows the details of a specific user task. Use this to see who is currently blocked.

### search_incidents
Searches for all current process incidents. This helps you find production issues quickly.

### search_jobs
Searches for job instances across your engine. Use this to find specific background tasks.

### search_process_definitions
Finds all deployed process definitions. It helps you see what's currently live in your system.

### search_process_instances
Searches for specific process instances. Use this to track down a particular order or request.

### search_tenants
Searches for tenants in a multi-tenant setup. It helps manage different client environments.

### search_user_tasks
Finds all pending human tasks in the system. Use this to see where the work is stalled.

### search_users
Searches for users within your environment. Use this to find specific team members.

### search_variables
Searches for process or local variables. It helps you find the data you need for debugging.

### start_process_instance
Starts a new process instance with specific variables. Use this to kick off new workflows.

### throw_job_error
Throws a BPMN error from a running job. This is useful for testing your error handling paths.

### unassign_user_task
Removes a user task assignment from a person. Use this to reallocate work to someone else.

## Prompt Examples

**Prompt:** 
```
Start a new instance of the 'order-fulfillment' process with orderId 550.
```

**Response:** 
```
I've started the process instance for **order-fulfillment**. Here are the details:

*   **Instance Key:** 2251799813685249
*   **Status:** Active
*   **Variables:** `orderId: 550`

The process is now moving through the initial validation steps.
```

**Prompt:** 
```
Search for all pending user tasks assigned to 'admin'.
```

**Response:** 
```
I found **3 pending tasks** for 'admin'. 

| Task Name | Key | Priority |
| :--- | :--- | :--- |
| Approve Invoice | 4503599627370501 | High |
| Update Shipping | 4503599627370502 | Medium |
| Review Order | 4503599627370503 | Low |

Would you like me to show the details for the 'Approve Invoice' task?
```

**Prompt:** 
```
Show me the BPMN XML for process definition 2251799813685250.
```

**Response:** 
```
I've retrieved the BPMN XML for definition **2251799813685250**. 

It contains the following structure:
*   **Start Event**
*   **Service Task:** Fetch Data
*   **Service Task:** Process Payment
*   **End Event**

Let me know if you'd like me to describe any specific part of this logic.
```

## Capabilities

### Start and manage process instances
Kick off new workflows with custom variables and check their current status.

### Orchestrate human tasks
Assign, unassign, and complete user tasks for your team members.

### Deploy BPMN resources
Push DMN, BPMN, and Form resources directly to your engine.

### Troubleshoot incidents
Search for and inspect process failures to find bottlenecks quickly.

### Monitor cluster health
Get real-time updates on your cluster topology and partition status.

## Use Cases

### Production Incident Response
An ops lead finds a production bottleneck and uses search_incidents to find the failure point, then get_incident to see the specific error message.

### Rapid Workflow Testing
A developer wants to test a new flow and uses start_process_instance to kick off a test run with dummy data without using the Modeler.

### Human Task Management
A manager asks to find all pending tasks and uses search_user_tasks to see who is currently blocked and needs to be reassigned.

### Process Logic Inspection
An engineer needs to see the logic of a live process and uses get_process_definition_xml to inspect the BPMN structure.

## Benefits

- Skip the dashboard: Use search_user_tasks and get_user_task to manage human workflows without ever opening the Operate UI.
- Faster debugging: Use search_incidents and get_incident to pinpoint production bottlenecks and errors in seconds.
- Easier deployments: Use deploy_resources to push BPMN or DMN updates directly from your agent, cutting out manual steps.
- Real-time monitoring: Use get_topology to check your cluster health and partition status instantly during a chat.
- Data-driven actions: Use get_variable to pull specific data points for your workflows on the fly without manual queries.
- Streamlined testing: Use start_process_instance and throw_job_error to test complex error paths and logic during development.

## How It Works

The bottom line is you get a natural language interface for your entire Camunda orchestration engine.

1. Subscribe to the Connector and provide your Camunda Base URL and Bearer Token.
2. Connect your AI client like Claude, Cursor, or Windsurf.
3. Ask your agent to start processes, find tasks, or check definitions.

## Frequently Asked Questions

**Can the Camunda (BPMN Engine) MCP help me manage my production workflows?**
Yes. It lets you start processes, check their status, and manage variables using natural language. You can interact with your live workflows directly through your AI agent.

**How do I use the Camunda (BPMN Engine) MCP to find stuck human tasks?**
You can simply ask your agent to search for pending human tasks. It will scan your environment and list the tasks that are currently waiting for action, showing you who is assigned to them.

**Can I deploy new BPMN models using the Camunda (BPMN Engine) MCP?**
Yes, you can. The Connector includes a tool to deploy BPMN, DMN, and Form resources directly. This lets you push updates to your engine without leaving your chat interface.

**How does the Camunda (BPMN Engine) MCP help with troubleshooting?**
It provides direct access to incident data. You can ask your agent to find all active incidents and then pull specific details to see exactly where a process failed or stalled.

**Can the Camunda (BPMN Engine) MCP check my cluster health?**
Yes, it can retrieve your cluster topology and partition status. This helps you monitor the health of your infrastructure and ensure everything is running correctly.

**Is the Camunda (BPMN Engine) MCP suitable for multi-tenant environments?**
Yes, it supports multi-tenancy. You can search for tenants and manage resources across different environments using the same AI interface.

**Can I start a process instance with specific input data?**
Yes! Use the `start_process_instance` tool and provide the `variables` JSON object. The AI will map your data to the process requirements automatically.

**How do I find all tasks currently assigned to a specific user?**
You can use the `search_user_tasks` tool with a filter like `{"assignee": "user-id"}`. The agent will return a list of all active human tasks for that person.

**Is it possible to see why a process instance is stuck?**
Yes. Use `search_incidents` to find errors in the cluster, and then `get_incident` with the specific key to see the error message and stack trace.