CrewAI Tools

A rich collection of ready-to-use and custom-buildable tools that extend the capabilities of CrewAI agents.

Library
PyPI
v1.15.16
57,288stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
91/100Excellent
Development Activity100
Maintenance100
Community76
Maturity48
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
81/100Excellent
Architecture80
Code Quality78
Innovation82
Learning Curve84

CrewAI Tools is the official tool library for CrewAI, the popular multi-agent framework. It provides a large catalog of ready-to-use tools that give agents concrete capabilities: web search and scraping, file and database access, vector-store retrieval, code execution, and integrations with third-party APIs and AI services.

Beyond the built-in tools, the package supplies base classes and decorators for authoring custom tools, plus adapters that bring tools from ecosystems like LangChain into CrewAI. It is the primary way to move a CrewAI agent from reasoning-only to actually acting on the outside world.

What You Get

  • Dozens of prebuilt tools for web search, scraping, file I/O, and database queries.
  • Vector-database and RAG tools for Qdrant, Weaviate, MongoDB, and PGVector.
  • AI-powered tools such as DALL-E image generation and vision analysis.
  • Base classes and a @tool decorator for authoring custom tools quickly.

Common Use Cases

  • Giving CrewAI agents the ability to search the web and scrape pages during a task.
  • Adding retrieval-augmented generation over a vector store to an agent crew.
  • Wrapping an internal API or database as a reusable custom tool for agents.

Under The Hood

Architecture

The library centers on a BaseTool abstraction (Pydantic-backed) and a @tool decorator; each concrete tool under crewai_tools/tools/ implements a _run method with a typed args schema. A generate_tool_specs.py step emits tool.specs.json describing every tool. CrewAI agents receive a list of these tool instances and invoke them by name during the reasoning loop.

Tech Stack

Python packaged with uv, built on Pydantic for tool schemas and the CrewAI core. Individual tools pull in optional dependencies for the services they wrap (scraping engines, vector-database clients, model SDKs), keeping the base install lean via extras.

Code Quality

The repo includes a tests suite, a BUILDING_TOOLS.md authoring guide, and a generated tool.specs.json contract. The standalone repository is now deprecated in favor of the maintained lib/crewai-tools package inside the main CrewAI monorepo, which carries active CI and releases.

API Design

Tool authoring is intentionally low-boilerplate: subclass BaseTool with a name, description, and args_schema, or annotate a function with @tool. Attaching tools to an agent is a plain list assignment. The consistency of the description/args_schema contract is what lets the LLM select and call tools reliably, and the documentation at docs.crewai.com covers each tool.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search