Activepieces is an open source automation platform that allows you to connect various services and automate workflows. When configured as an MCP (Model Context Protocol) server, it can be used with AI tools like Claude Desktop, Cursor, or Windsurf to extend LLM capabilities through its extensive collection of integration pieces.
There are several ways to install and run the Activepieces MCP server:
The simplest way to get started is with Docker:
docker run -d \
-p 8080:8080 \
-e AP_JWT_SECRET=your-jwt-secret \
-e AP_FRONTEND_URL=http://localhost:8080 \
--name activepieces \
activepieces/activepieces
Make sure to replace your-jwt-secret
with a secure random string for production use.
For a more comprehensive setup, you can use Docker Compose:
version: "3.8"
services:
activepieces:
image: activepieces/activepieces
container_name: activepieces
ports:
- "8080:8080"
environment:
- AP_JWT_SECRET=your-jwt-secret
- AP_FRONTEND_URL=http://localhost:8080
# Add other environment variables as needed
volumes:
- activepieces_data:/app/data
restart: unless-stopped
volumes:
activepieces_data:
Save this to a file named docker-compose.yml
and run:
docker-compose up -d
Activepieces can be configured using environment variables. Here are the most important ones:
AP_JWT_SECRET=your-jwt-secret # Required: Secret for JWT tokens
AP_FRONTEND_URL=http://localhost:8080 # Required: URL where the UI is hosted
By default, Activepieces uses SQLite. For production, you might want to use PostgreSQL:
AP_DATABASE_TYPE=postgres
AP_POSTGRES_DATABASE=activepieces
AP_POSTGRES_HOST=postgres
AP_POSTGRES_PASSWORD=postgres
AP_POSTGRES_PORT=5432
AP_POSTGRES_USERNAME=postgres
AP_SIGN_UP_ENABLED=true # Enable/disable sign up
[email protected] # Admin user email
AP_ADMIN_PASSWORD=password # Admin user password
To use Activepieces as an MCP server with LLMs:
After setting up the server, navigate to http://localhost:8080
(or your configured URL) and create an account.
Once logged in, create a new project where you'll set up your automations.
Set up connections to the services you want to use in your workflows. This typically involves:
Flows are the core of Activepieces. They consist of triggers and actions:
To expose your flows as MCP endpoints:
# Example of configuring an MCP endpoint
curl -X POST http://localhost:8080/api/v1/mcp/config \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"flowId": "your-flow-id",
"name": "My MCP Endpoint",
"description": "Endpoint description",
"isPublic": true
}'
Connect your Activepieces MCP server to tools like Claude Desktop, Cursor, or Windsurf:
http://localhost:8080/api/v1/mcp
)Activepieces comes with over 280 pre-built integration pieces. Here's how to use them:
Navigate to the pieces marketplace in the Activepieces UI to see all available integrations.
When adding a piece to your flow:
1. Add the OpenAI piece to your flow
2. Configure the OpenAI API key in the connections section
3. Set up the prompt and other parameters
4. Test the piece with a sample input
Activepieces supports flow control with loops and branches:
You can add custom code steps with the Code piece:
// Example code step
export const code = async (inputs) => {
// Process inputs
const processedData = inputs.data.map(item => {
return {
id: item.id,
name: item.name.toUpperCase()
};
});
// Return outputs
return {
processedData
};
};
Activepieces has built-in AI capabilities:
If you're experiencing connection issues:
1. Check your network configuration
2. Verify that your API keys are correct
3. Ensure the external service is available
If your flows aren't executing correctly:
1. Check the logs in the flow execution history
2. Test each step individually to isolate the issue
3. Verify that your connections are still valid
If LLMs can't connect to your MCP server:
1. Verify the server URL is correct
2. Check that the API key has the necessary permissions
3. Ensure the MCP endpoints are properly configured
For more detailed information, visit the official Activepieces documentation.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"cursor-rules-mcp": {
"command": "npx",
"args": [
"-y",
"cursor-rules-mcp"
]
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.