Multi-Agent Research Assistant MCP Server
Asistente de investigación multiagente y servidor MCP
Este proyecto implementa la tarea en dos partes pequeñas:
Un flujo de trabajo multiagente de LangGraph con un Supervisor y dos trabajadores especialistas.
Un servidor FastMCP con dos herramientas y un cliente que llama a esas herramientas.
El modelo de lenguaje es Ollama, por lo que no se requiere ninguna clave de API de OpenAI.
1. Qué demuestra el proyecto
El Supervisor recibe una pregunta y elige al trabajador adecuado:
User question
|
v
Supervisor Agent
|------------------------------|
v v
Research Agent Analysis Agent
| |
v v
Knowledge-base tool Comparison toolPara una pregunta que necesita a ambos trabajadores, el Supervisor primero pide evidencia al Agente de Investigación y luego entrega esa evidencia al Agente de Análisis.
La parte de MCP es independiente de la parte de LangGraph:
MCP Client ---> FastMCP Server
|------ get_weather(city)
|------ get_news(topic)Related MCP server: AIE8-MCP Server
2. Requisitos previos
Windows PowerShell
Python 3.10 o más reciente
Ollama
Un modelo de Ollama como
llama3.2
El repositorio ya contiene el entorno virtual solicitado en multivenv.
3. Instalación
Abra PowerShell en el directorio del proyecto:
cd D:\LLMEngg_8-Multi-Agent-Research-Assistant-MCP-Server
.\multivenv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
Copy-Item .env.example .envSi PowerShell no permite la activación, use el entorno virtual directamente para cada comando:
.\multivenv\Scripts\python.exe -m pip install -r requirements.txtNo use un Python del sistema diferente. De lo contrario, importaciones como langchain_core podrían faltar.
4. Configurar Ollama
Inicie Ollama en un terminal aparte. Si Ollama ya está en ejecución como aplicación de escritorio, omita ollama serve.
ollama serve
ollama pull llama3.2La configuración predeterminada en .env es:
OLLAMA_MODEL=llama3.2
OLLAMA_BASE_URL=http://localhost:11434Puede usar otro modelo, pero debe admitir chat y llamadas a herramientas lo suficientemente bien para LangGraph. Por ejemplo:
OLLAMA_MODEL=qwen2.5:7b5. Ejecutar el asistente multiagente
Ejecute una pregunta solo de investigación:
python main.py "What does MCP do?"Esto debería enrutarse al Agente de Investigación, que busca en data/knowledge_base.txt.
Ejecute una pregunta de análisis:
python main.py "Compare these two ideas: solar power uses sunlight; wind power uses moving air."Esto debería enrutarse al Agente de Análisis, que usa compare_texts.
Ejecute una pregunta de colaboración:
python main.py "Research solar and wind power, then compare their main trade-offs."Esta pregunta necesita a ambos trabajadores. El flujo de trabajo esperado es:
El Supervisor llama a
ask_research_agent.El Agente de Investigación llama a
search_knowledge_base.El Supervisor envía la evidencia a
ask_analysis_agent.El Agente de Análisis llama a
compare_texts.El Supervisor devuelve una respuesta final.
La pregunta predeterminada también se puede ejecutar sin un argumento:
python main.py6. Ejecutar la demostración de MCP
El cliente llama a ambas herramientas de FastMCP:
python -m mcp_client.clientLa salida esperada es similar a:
Weather: Cloudy, 15 C
News: Mock headline: New developments in artificial intelligence are being monitored by the research team.El cliente usa el transporte de cliente en proceso de FastMCP, por lo que la demostración es fiable y fácil de ejecutar localmente. Aun así, usa el protocolo real de cliente/servidor de MCP. El servidor independiente se puede iniciar para un host compatible con MCP con:
python mcp_server/server.pyEse servidor independiente usa el transporte stdio de MCP.
7. Ejecutar las pruebas
python -m pytest -qLas pruebas cubren las herramientas deterministas sin requerir Ollama ni la descarga de un modelo. La construcción de LangGraph también se puede verificar sin hacer una solicitud al modelo:
$env:OLLAMA_MODEL = "llama3.2"
python -c "from agents.supervisor import build_supervisor; build_supervisor(); print('Supervisor created')"8. Estructura de archivos
agents/
model.py Shared ChatOllama configuration
research_agent.py Research worker created with create_react_agent
analysis_agent.py Analysis worker created with create_react_agent
supervisor.py Supervisor and wrapped worker tools
tools/
research_tool.py Local knowledge-base lookup tool
analysis_tool.py Structured two-text comparison tool
data/
knowledge_base.txt Local evidence used by the Research Agent
mcp_server/
server.py FastMCP server and its two tools
mcp_client/
client.py Client demonstration calling both MCP tools
main.py Command-line entry point for the Supervisor
tests/ Deterministic tool tests
requirements.txt Python dependencies
.env.example Ollama configuration template9. Lista de verificación de los objetivos de la tarea
Objetivo de la tarea | Implementación |
Construir un agente Supervisor |
|
Construir un Agente de Investigación con |
|
Construir un Agente de Análisis con |
|
Dar al Agente de Investigación una herramienta de recuperación de información |
|
Dar al Agente de Análisis una herramienta de comparación de dos fragmentos |
|
Envolver a los trabajadores como herramientas para el Supervisor |
|
Añadir mensajes de sistema específicos del rol | Cada módulo de agente define su propio mensaje |
Construir un servidor MCP con al menos dos herramientas |
|
Demostrar un cliente MCP que llama a las herramientas |
|
Probar escenarios de investigación, análisis y colaboración | Comandos de la Sección 5 |
10. Solución de problemas
No module named langchain_core
Se está usando el Python del sistema. Active multivenv o use la ruta directa del intérprete:
.\multivenv\Scripts\python.exe main.py "What does MCP do?"connection refused de Ollama
Inicie Ollama y confirme que el modelo existe:
ollama serve
ollama list
ollama pull llama3.2El modelo no llama a las herramientas
Use un modelo de chat con capacidad de herramientas, mantenga la pregunta explícita y pruebe el ejemplo de colaboración de la Sección 5. Los modelos pequeños o más antiguos pueden responder directamente sin usar una herramienta.
La base de conocimiento no devuelve ninguna respuesta
El Agente de Investigación solo busca en el archivo local. Añada más párrafos a data/knowledge_base.txt y vuelva a ejecutar la pregunta.
11. Nota importante sobre el alcance
Esta es una implementación educativa sencilla. La base de conocimiento es una fuente de datos local simulada, el tiempo y las noticias son resultados MCP simulados, y el enrutamiento del LLM se prueba manualmente con Ollama. Las herramientas deterministas están cubiertas por pruebas automatizadas.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseBqualityDmaintenanceA FastMCP server providing real-time weather, news retrieval, and local note management tools for autonomous CrewAI agents. It enables context-aware multi-agent workflows with observability and high-speed inference integration.4
- FlicenseBqualityDmaintenanceAn MCP server that provides web search capabilities through the Tavily API and weather data retrieval tools. It demonstrates how to integrate external APIs into AI applications and build agentic workflows with LangGraph.3
- Flicense-qualityDmaintenanceAn MCP server that provides weather and web search tools, orchestrated by a LangGraph agent with OpenAI for natural language interaction.8
- Flicense-qualityCmaintenanceAn MCP server with six tools including web search, URL fetching, math calculation, and note management. Designed for a live-coding demo integrating FastMCP with LangGraph ReAct agents.8
Related MCP Connectors
MCP server exposing the Backtest360 engine API as tools for AI agents.
Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ANINDASAU/LLMEngg_8-Multi-Agent-Research-Assistant-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server