Pachetul crewai-tools și serverele MCP în CrewAI în CrewAI & Sisteme Multi-Agent

Unelte (Tools), Date Structurate & Guardrails CrewAI 1.15 (octombrie 2026)

Uneltele gata făcute din crewai-tools și cele două moduri de a conecta servere MCP: câmpul mcps și MCPServerAdapter.

Sintaxă & invocare Python
from crewai_tools import SerperDevTool, ScrapeWebsiteTool, FileReadTool

cautare_web = SerperDevTool(n_results=5)
scraper = ScrapeWebsiteTool()
cercetator = Agent(..., tools=[cautare_web, scraper, FileReadTool()])

Ce face Pachetul crewai-tools și serverele MCP în CrewAI

Pachetul de unelte se instalează cu pip install 'crewai[tools]' și include unelte pentru căutare web, citirea de site-uri și fișiere, căutare în documente și integrări. Exemple: SerperDevTool (căutare Google prin serper.dev), ScrapeWebsiteTool, FileReadTool și uneltele de căutare semantică, ca PDFSearchTool.

SerperDevTool are nevoie de SERPER_API_KEY; serper.dev are un plan gratuit. Parametrii opționali country, location și locale restrâng rezultatele, iar n_results stabilește câte rezultate întoarce.

Pentru MCP, documentația recomandă câmpul mcps pe Agent: primește URL-uri de servere HTTPS, integrări din catalogul CrewAI sau configurații structurate (MCPServerStdio, MCPServerHTTP, MCPServerSSE) și necesită uv add mcp. Pentru cazuri avansate, cu gestionarea manuală a conexiunii, există MCPServerAdapter din crewai-tools, instalat cu uv pip install 'crewai-tools[mcp]'. Transporturile suportate sunt stdio, SSE și Streamable HTTP.

Sintaxă și opțiuni

Opțiune / Parametru Descriere
SerperDevTool(n_results, country, location, locale) Căutare Google; cere SERPER_API_KEY.
ScrapeWebsiteTool(website_url=...) Fără URL, agentul poate citi orice site găsit; cu URL, citește site-ul dat.
FileReadTool / DirectoryReadTool Citirea fișierelor și a directoarelor locale.
mcps=[...] Pe Agent: servere MCP ca șiruri sau configurații structurate.
MCPServerAdapter(server_params) Context manager care conectează manual un server MCP și întoarce uneltele lui.

Exemple practice

Exemplul 1: Căutare cu rezultate localizate

SerperDevTool(country="fr", locale="fr", location="Paris, Paris, Ile-de-France, France", n_results=2)

Exemplul 2: Server MCP prin câmpul mcps

from crewai.mcp import MCPServerStdio

agent = Agent(
    role="Research Analyst",
    goal="Research and analyze information",
    backstory="Expert researcher",
    mcps=[MCPServerStdio(command="npx", args=["-y", "@modelcontextprotocol/server-filesystem"])],
)

Exemplul 3: MCPServerAdapter pentru control manual

with MCPServerAdapter(server_params, connect_timeout=60) as mcp_tools:
    agent = Agent(..., tools=mcp_tools)

Greșeli frecvente și bune practici

  • Cauți CodeInterpreterTool. A fost eliminat din crewai-tools; pentru execuție de cod, documentația recomandă un serviciu de sandbox dedicat.
  • Folosești MCPServerAdapter pentru cazuri simple. Câmpul mcps este varianta recomandată.
  • Combini căutarea cu scraping fără să limitezi n_results. Fiecare rezultat citit adaugă tokeni în context.

Comenzi înrudite