Skip to content

CrewAI

CrewAI is an open-source Python framework for orchestrating teams of AI agents. Each agent has a defined role, goal, and backstory, and they collaborate to complete complex tasks through sequential or hierarchical workflows. The MCP Adapter connects these agents to external tool servers like Vinkius Cloud, so your "researcher" agent can query databases while your "writer" agent drafts reports.


CA
CrewAI
★ 41k+ · crewai.com
TRANSPORT
Streamable HTTP ✓
PLATFORM
Python · Framework
MCP VIA
MCP Adapter DSL

Role-Based Agent Crews with MCP Tools

CrewAI's defining concept is the "crew" — a team of agents with distinct roles that collaborate on a shared objective. A sales analysis crew might have a data analyst agent (queries CRM via MCP), a market researcher agent (uses web search), and a report writer agent (generates summaries). Each agent accesses only the tools relevant to its role.

The MCP Adapter provides a simple DSL for connecting agents to any MCP server. It handles tool discovery, parameter mapping, and result parsing — you just point it at a URL and the agent's tools are ready.

v1.10 highlights for MCP:

  • MCP Adapter DSL — one-liner to connect any agent to MCP servers
  • Role-based agents — each with a role, goal, and backstory for specialized behavior
  • Sequential and hierarchical — run agents in sequence or with a manager that delegates
  • Full async — tasks, flows, knowledge, memory, and tools all support async
  • Code execution — agents write and run code with allow_code_execution
  • Manager agents — hierarchical coordinator that delegates subtasks
  • 41k+ stars — one of the most widely adopted agent frameworks

Python Setup

1. Create a Token

In Vinkius Cloud, go to your server → Connection TokensCreate. Copy the URL.

2. Wire the MCP Adapter

python
from crewai import Agent, Crew, Task
from crewai.tools import MCPServerAdapter

# Connect to Vinkius Cloud MCP server
mcp = MCPServerAdapter(url="https://edge.vinkius.com/{TOKEN}/mcp")

# Create an agent with MCP tools
analyst = Agent(
    role="Data Analyst",
    goal="Extract insights from production data",
    tools=mcp.tools()
)

3. Run the Crew

python
crew = Crew(agents=[analyst], tasks=[...])
result = crew.kickoff()

Agents call MCP tools autonomously during crew execution.


FAQ

Can different agents in a crew access different MCP servers? Yes. Each agent can be configured with its own set of MCP tools. One agent might connect to a database server while another uses a monitoring server.

How does the MCP Adapter discover tools? It queries the MCP server on initialization and maps each tool to a CrewAI-compatible format. Tool schemas, descriptions, and parameters are preserved.

Does CrewAI support async MCP calls? Yes. v1.10 added full async support across tasks, tools, and agent executors. MCP calls benefit from this for parallel crew execution.

Is CrewAI free? Open-source under MIT. CrewAI Enterprise is available for production deployments with additional features.