agroagent
AgroAgent
KI-Agent für die chilenische Agrarnische, aufgebaut mit einer Agentenarchitektur über das Model Context Protocol (MCP). Statt eines monolithischen Backends stellen vier unabhängige MCP-Server spezialisierte Tools bereit, die ein Orchestrator über eine Agentenschleife mit dem Anthropic SDK koordiniert.
Architektur
apps/
web/ Next.js 16 + TypeScript + Tailwind v4 + Recharts
orchestrator/ FastAPI -- MCP host + agent loop (Anthropic SDK) + rutas REST de dashboard
mcp-servers/
mcp-weather/ tool: get_weather_forecast (Open-Meteo)
mcp-prices/ tool: get_commodity_price (datos abiertos ODEPA)
mcp-db/ tools: get_farmer_history, register_planting (PostgreSQL/SQLAlchemy async)
mcp-rag/ tool: search_sag_documents (RAG sobre normativa SAG -- Pinecone + Voyage AI)
packages/
shared-types/ Modelos Pydantic compartidos entre orchestrator y mcp-serversDer Orchestrator verbindet sich als MCP-Client mit den 4 Servern, fasst deren Tool-Katalog zu einem einzigen zusammen und stellt bereit:
POST /chat– konversationeller Endpunkt (Claude entscheidet je nach Kontext, welche Tools verwendet werden)GET /weather,GET /farmers/{id}/history,GET /prices/trend– deterministische REST-Routen für das Dashboard, die die Tools direkt aufrufen, ohne den LLM zu durchlaufen
Der Wert des Projekts liegt nicht darin, jede Quelle einzeln bereitzustellen, sondern darin, dass der Agent sie miteinander verknüpft: Beispielsweise den Anbauverlauf eines Landwirts mit der Wettervorhersage seiner Region und dem aktuellen Preis seines Produkts in Beziehung zu setzen, um konkrete Entscheidungen vorzuschlagen – und dabei bei Bedarf die genaue SAG-Resolution zu zitieren.
Related MCP server: leafengines-mcp-server
Stack
Backend: Python 3.12+, FastAPI,
mcpSDK (v2), SQLAlchemy async + asyncpg, Pinecone, Voyage AI, Anthropic SDK,uv(Monorepo-Workspace)Frontend: Next.js (App Router), TypeScript, Tailwind CSS v4, Recharts, pnpm
Daten: PostgreSQL (Docker), Open-Meteo API, ODEPA (CKAN-Datastore-API), regulatorische Dokumente des SAG
Voraussetzungen
Python 3.12+ und
uvNode 20+ und
pnpmDocker (für PostgreSQL)
API-Schlüssel: Anthropic, Pinecone, Voyage AI
Einrichtung
# Backend (Python workspace completo)
uv sync --all-packages
# Frontend
cd apps/web && pnpm install && cd ../..
# Base de datos
docker compose up -d postgresErstelle apps/web/.env.local:
NEXT_PUBLIC_ORCHESTRATOR_URL=http://localhost:3001Projekt starten (6 Prozesse)
# Terminal 1
uv run --package mcp-weather uvicorn mcp_weather.app:app --reload --port 4001
# Terminal 2
uv run --package mcp-prices uvicorn mcp_prices.app:app --reload --port 4002
# Terminal 3 (ajusta el puerto de Postgres si no usas el 5432 por defecto)
DATABASE_URL="postgresql+asyncpg://agroagent:agroagent@localhost:5432/agroagent" \
uv run --package mcp-db uvicorn mcp_db.app:app --reload --port 4004
# Terminal 4
PINECONE_API_KEY="..." VOYAGE_API_KEY="..." \
uv run --package mcp-rag uvicorn mcp_rag.app:app --reload --port 4005
# Terminal 5
ANTHROPIC_API_KEY="..." \
uv run --package orchestrator uvicorn orchestrator.app:app --reload --port 3001
# Terminal 6
cd apps/web && pnpm devFrontend unter http://localhost:3000.
Architekturentscheidungen
MCP-Transport: streamable-HTTP, nicht stdio – jeder MCP-Server ist ein eigenständiger Dienst mit eigenem Port/Container, näher an einer echten Microservice-Bereitstellung.
Backend in Python/FastAPI statt NestJS/TypeScript: bewusste Entscheidung aufgrund der Marktnachfrage und um polyglotte Vielseitigkeit zu demonstrieren (das Frontend blieb in TS/React).
RAG: Das Chunking respektiert die nummerierte Struktur der chilenischen Rechtsverordnungen (
2.1,3.1.1usw.), anstatt nach fester Zeichenanzahl zu schneiden; die Metadaten jedes Chunks enthalten die Verordnungsnummer, damit der Agent die Quelle zitieren kann.Vom Agenten getrennte REST-Routen: Das Dashboard leitet deterministische Daten (Wetter, Verlauf, Preise) nicht über den LLM – das vermeidet unnötige Kosten und Latenz; beide Ebenen nutzen dieselben zugrunde liegenden MCP-Tools.
Bekannte Einschränkungen / offene Punkte
Keine Authentifizierung:
farmer_idwird explizit übergeben, es gibt keine Benutzersitzung.Es gibt keine Route zum Anlegen neuer Landwirte (
POST /farmers) – die Testdatensätze wurden manuell eingefügt.mcp-ragunterstützt keine gescannten PDFs ohne Textebene (würde OCR erfordern).Es gibt kein separates
Dockerfilepro Dienst –docker-compose.ymldeckt nur PostgreSQL ab.Die Kulturnamen in
mcp-dbsind nicht gegen die Produktnamen von ODEPA inmcp-pricesnormalisiert.
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
- AlicenseAqualityCmaintenanceAn MCP server that provides real-time access to Brazilian agricultural data, including commodity prices, crop estimates, climate information, and deforestation rates. It integrates data from 19 public sources like CEPEA, CONAB, and IBGE to enable LLMs to analyze the Brazilian agribusiness sector.1026MIT
- AlicenseNot gradedqualityBmaintenanceAgricultural intelligence MCP server providing soil analysis, crop recommendations, weather forecasts, and environmental impact assessment.5MIT
- AlicenseNot gradedqualityAmaintenanceEU Crop Intelligence MCP Server — Yield forecasts, weather analysis, and phenology models for 15 countries. AI agent-native, multi-source intelligence (NASA POWER, Eurostat, Open-Meteo).MIT
- AlicenseNot gradedqualityBmaintenanceMCP Server for accessing 36 Brazilian public data sources and 1 agent, enabling AI agents to query government data on economy, legislation, transparency, judiciary, elections, environment, health, and more.MIT
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP server connecting AI agents to non-custodial staking data across 130+ networks.
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
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/craguila14/agroagent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server