Model Context Protocol (MCP) is like a USB for AI tools - it provides a standardized way for AI agents to discover and use different capabilities. Think of it as plugging in new abilities for your AI agents! With our flexible dictionary-based implementation, agents can easily discover and use tools without needing to know their implementation details.
The MCP ecosystem is growing rapidly with many powerful servers available:
- Brave Search - Web and local search capabilities
- Filesystem - Complete file and directory operations
- Playwright - Browser automation and web scraping
- MongoDB - Direct database interactions
- Sequential Thinking - Structured reasoning and planning
- FLUX - Image generation and manipulation
- Selenium - Web automation and testing
- SQLite - Local database operations
- Vector Store - Embedding and similarity search
- And many more!
Check out the MCP Servers Repository for the latest list of available servers. The ecosystem is rapidly growing with new capabilities being added regularly!
- Install Requirements:
# Create and activate virtual environment
python -m venv .env
source .env/bin/activate # On Windows: .env\Scripts\activate
# Install required packages
pip install mcp
- Configure MCP:
# Copy the example config
cp mcp_config.example.json mcp_config.json
# Edit mcp_config.json with your settings
{
"mcpServers": {
"brave-search": {
"enabled": true,
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your-api-key-here"
}
},
"filesystem": {
"enabled": true,
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/your/working/directory"
]
}
}
}
- Start AutoGen Studio:
autogenstudio ui --port 8080
Our implementation uses a flexible dictionary-based approach, making it easy to discover and use tools:
# 1. List Available Servers
servers = await mcp(tool='list_available_servers')
# 2. Discover Server Tools
tools = await mcp(
server='brave-search',
tool='tool_details'
)
# 3. Use Tools with Dictionary Arguments
# Web Search Example
result = await mcp(
server='brave-search',
tool='brave_web_search',
arguments={
'query': 'Latest AI developments',
'count': 5
}
)
# File Operations Example
result = await mcp(
server='filesystem',
tool='read_file',
arguments={
'path': '/path/to/your/file'
}
)
We provide ready-to-use templates to help you get started:
-
Gallery Examples (
/gallerys
):- Pre-configured tool setups
- Example implementations
- Best practices demonstrations
-
Team Templates (
/teams
):- Complete agent workflows
- Tool integration examples
- Task-specific configurations
To use a template:
- Copy the desired template from
/gallerys
or/teams
- Customize the JSON configuration for your needs
- Load it in AutoGen Studio
- Web search capabilities
- Local business search
- Configurable result limits
- Fresh content filtering
- Read/Write files
- Directory operations
- File searches
- Metadata operations
The MCP ecosystem is constantly growing. Add new servers to your config to expand capabilities!
The MCP client checks these locations for config files:
- Current directory:
./mcp_config.json
- User config:
~/.config/autogen/mcp_config.json
- Environment:
$MCP_CONFIG_PATH
Run the test suite:
pytest tests/test_mcp_client.py -v
pytest tests/test_mcp_json.py -v
The /mcp_workspace
directory is provided for testing but ignored by git. Your tests will create this automatically.
- Python 3.12+
- Node.js and npx
- MCP Python SDK
- AutoGen Studio
MIT License - See LICENSE file for details