MCP Crew AI Server is a lightweight Python-based server designed to run, manage and create CrewAI workflows. This project leverages the Model Context Protocol (MCP) to communicate with Large Language Models (LLMs) and tools such as Claude Desktop or Cursor IDE, allowing you to orchestrate multi-agent workflows with ease.
- Automatic Configuration: Automatically loads agent and task configurations from two YAML files (
agents.yml
andtasks.yml
), so you don't need to write custom code for basic setups. - Command Line Flexibility: Pass custom paths to your configuration files via command line arguments (
--agents
and--tasks
). - Seamless Workflow Execution: Easily run pre-configured workflows through the MCP
run_workflow
tool. - Local Development: Run the server locally in STDIO mode, making it ideal for development and testing.
There are several ways to install the MCP Crew AI server:
pip install mcp-crew-ai
pip install git+https://github.com/adam-paterson/mcp-crew-ai.git
git clone https://github.com/adam-paterson/mcp-crew-ai.git
cd mcp-crew-ai
pip install -e .
- Python 3.11+
- MCP SDK
- CrewAI
- PyYAML
- agents.yml: Define your agents with roles, goals, and backstories.
- tasks.yml: Define tasks with descriptions, expected outputs, and assign them to agents.
Example agents.yml
:
zookeeper:
role: Zookeeper
goal: Manage zoo operations
backstory: >
You are a seasoned zookeeper with a passion for wildlife conservation...
Example tasks.yml
:
write_stories:
description: >
Write an engaging zoo update capturing the day's highlights.
expected_output: 5 engaging stories
agent: zookeeper
output_file: zoo_report.md
Once installed, you can run the MCP CrewAI server using either of these methods:
mcp-crew-ai --agents path/to/agents.yml --tasks path/to/tasks.yml
For a more streamlined experience, you can use the UV execution command:
uvx mcp-crew-ai --agents path/to/agents.yml --tasks path/to/tasks.yml
Or run just the server directly:
uvx mcp-crew-ai-server
This will start the server using default configuration from environment variables.
--agents
: Path to the agents YAML file (required)--tasks
: Path to the tasks YAML file (required)--topic
: The main topic for the crew to work on (default: "Artificial Intelligence")--process
: Process type to use (choices: "sequential" or "hierarchical", default: "sequential")--verbose
: Enable verbose output--variables
: JSON string or path to JSON file with additional variables to replace in YAML files--version
: Show version information and exit
You can also provide additional variables to be used in your YAML templates:
mcp-crew-ai --agents examples/agents.yml --tasks examples/tasks.yml --topic "Machine Learning" --variables '{"year": 2025, "focus": "deep learning"}'
These variables will replace placeholders in your YAML files. For example, {topic}
will be replaced with "Machine Learning" and {year}
with "2025".
Contributions are welcome! Please open issues or submit pull requests with improvements, bug fixes, or new features.
This project is licensed under the MIT Licence. See the LICENSE file for details.
Happy workflow orchestration!