AI Agent With MCP
Este projeto Γ© um playground para criar o primeiro servidor MCP (Model Context Protocol), um protocolo que permite integrar LLMs a recursos externos de forma padronizada.
Installation
npx ai-agent-with-mcpAsk AI about AI Agent With MCP
Powered by Claude Β· Grounded in docs
I know everything about AI Agent With MCP. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
MCP Server with Google ADK Project
This project implements a Model Context Protocol (MCP) server using Google's Agent Development Kit (ADK) for building intelligent agents and tools. The system features multiple specialized agents that collaborate through a coordinator agent to handle different types of requests.
Project Structure
βββ agents/ # Contains agent implementations
β βββ coordinator_agent.py # LLM-based intelligent request router
β βββ data_analysis_agent.py # Agent for analyzing data files with visualization
β βββ search_agent.py # Agent for web searches and information retrieval
β βββ code_generator_agent.py # Agent for generating code based on descriptions
βββ tools/ # Contains tool implementations
β βββ code_generator_tool.py # Generates code in various programming languages
β βββ data_analysis_tool.py # Analyzes data and creates visualizations
β βββ data_reader_tool.py # Reads data from various file formats
β βββ report_generator_tool.py # Generates formatted reports
β βββ web_search_tool.py # Performs web searches
βββ input_data/ # Directory for input data files (CSV, Excel)
βββ analysis_output/plots/ # Generated data visualizations
βββ reports/ # Generated analysis reports
βββ generated_code/ # Generated code outputs
βββ server.py # MCP Server implementation using FastMCP
βββ requests_log.txt # Log of requests and responses
βββ README.md # This file
Prerequisites
- Python 3.9+
- Groq and OpenRouter Key
Working Flow Architecture
Setup
- Clone this repository
- Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate - Install dependencies:
pip install -r requirements.txt - Set up your Groq & Openrouter Key: add key in .env if available otherwise create file as
touch .env
add key
OPENROUTER_API_KEY="ADD_Your_Key"
GROQ_API_KEY="ADD_Your_Key"
Running the MCP Server
python server.py
This will start the MCP server on http://0.0.0.0:8080
Available Agents
Coordinator Agent
The coordinator agent uses LLM-based routing to direct requests to the most appropriate specialized agent. It analyzes the content of the request and determines which agent can best handle it.
Search Agent
Performs web searches and provides information on various topics.
Example Request:
curl -X POST http://localhost:8080/ask -H "Content-Type: application/json" -d '{"query":"What is Model Context Protocol?"}'
Data Analysis Agent
Analyzes data from various file formats (CSV, Excel) and generates reports with visualizations.
Example Request:
curl -X POST http://localhost:8080/ask -H "Content-Type: application/json" -d '{"file_path": "sales_data.xlsx","query":"make a report for these data"}'
Code Generator Agent
Generates code in various programming languages based on natural language descriptions.
Example Request:
curl -X POST http://localhost:8080/ask -H "Content-Type: application/json" -d '{"query":"Python code for fibonacci series","language":"python"}'
API Endpoints
/ask- General endpoint that routes to the appropriate specialized agent/search- Endpoint for direct web searches/analyze-data- Endpoint for data analysis/generate-code- Endpoint for code generation/chat/completions- Chat completion endpoint for conversational interaction
MCP Tools
The server exposes the following MCP tools:
ask- Routes the user's query to the most appropriate agentsearch- Searches the web for informationanalyze_data- Analyzes data files and generates reports with visualizationsgenerate_code- Generates code based on natural language descriptions
Extending This Project
To add new agents:
- Create a new file in the
agents/directory - Implement the agent class with an async
process()method - Update the coordinator agent to recognize and route to the new agent
To add new tools:
- Create a new file in the
tools/directory - Implement the tool functionality with comprehensive docstrings
- Import and use the tool in your agents
