CrewAI MCP Adapter

by dshivendra

MCP Client 14 stars
  • agent-framework

About

What is CrewAI MCP Adapter?

A Python library that extends CrewAI's adapter ecosystem with Model Context Protocol (MCP) integration support and comprehensive tooling for custom agent and tool development. It runs on Python 3.11+ and is aimed at developers building CrewAI‑based agent systems.

How to use CrewAI MCP Adapter?

Install via pip install crewai-adapters or from source. Use CrewAIAdapterClient to connect to an MCP server (e.g., await client.connect_to_mcp_server("math", command="python", args=["math_server.py"])), retrieve tools via client.get_tools(), and assign them to CrewAI agents and tasks.

Key features of CrewAI MCP Adapter

- Native CrewAI integration and adapter patterns
- MCP protocol support for tool integration
- Easy-to-use interface for extending and creating adapters
- Type-safe implementation with Pydantic
- JSON Schema validation for tool parameters
- Async/await support with detailed execution metadata

Use cases of CrewAI MCP Adapter

- Creating CrewAI agents that use external MCP-based tools
- Extending CrewAI with custom adapters for different protocols
- Performing calculations or data operations via MCP servers
- Building type-safe agent toolchains with parameter validation

FAQ from CrewAI MCP Adapter

What is the difference between this and standard CrewAI tools?

This adapter enables integration with any MCP‑compliant server, allowing you to use tools from outside the CrewAI ecosystem with full type safety and validation.

What Python version is required?

Python 3.11 or higher.

Does this support multiple MCP servers?

Yes, the client can connect to multiple MCP servers using the connect_to_mcp_server method.

What is the license?

MIT License.

Details

Author
dshivendra
GitHub stars
14
Category
agent-framework
Repository
dshivendra/crewai_mcp_adapter

MseeP.ai Security Assessment Badge

CrewAI MCP Adapter

A Python library extending CrewAI's adapter ecosystem with Model Context Protocol (MCP) integration support and comprehensive tooling for custom agent and tool development.

Features

- 🔌 Native CrewAI integration and adapter patterns
- 🛠️ MCP protocol support for tool integration
- 🧩 Easy-to-use interface for extending and creating new adapters
- 📝 Type-safe implementation with Pydantic
- 🔍 JSON Schema validation for tool parameters
- 🚀 Async/await support
- 📊 Detailed execution metadata

Installation

You can install the package directly from PyPI:

pip install crewai-adapters

Or install from source:

pip install git+https://github.com/dshivendra/crewai_mcp_adapter.git

Quick Start

from crewai import Agent, Task
from crewai_adapters import CrewAIAdapterClient
from crewai_adapters.types import AdapterConfig

async def main():
async with CrewAIAdapterClient() as client:
# Connect to MCP server
await client.connect_to_mcp_server(
"math",
command="python",
args=["math_server.py"]
)

# Create agent with tools
agent = Agent(
name="Calculator",
goal="Perform calculations",
tools=client.get_tools()
)

# Execute task
task = Task(
description="Calculate (3 + 5) × 12",
agent=agent
)
result = await task.execute()
print(f"Result: {result}")

if __name__ == "__main__":
import asyncio
asyncio.run(main())

Documentation

For detailed documentation, see:
- Getting Started Guide
- API Reference
- Examples

Development

Prerequisites

- Python 3.11 or higher
- crewai package
- pydantic package
- mcp package

Install Development Dependencies

pip install -e ".[test,docs]"

Running Tests

pytest tests/ -v

Publishing

To publish a new version to PyPI:

1. Update version in pyproject.toml
2. Build the package:

   python -m build

3. Upload to PyPI:
   python -m twine upload dist/*

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.