CrewAI fits a research team that can write some Python and wants agents to search, read and summarize on its own terms. The open-source framework is MIT-licensed and free to run on your machines, it ships 75+ tools with a dedicated search-and-research family, and it can read your own PDFs, spreadsheets and notes as a knowledge base. The real costs sit elsewhere: your model provider and most search APIs bill you directly. Teams with sensitive material can take a fully local path through Ollama. Teams with nobody who codes should try Studio first, and if the research is also one-off, a hosted assistant will be faster.

The Toolkit take
75+
Tools in the open-source CrewAI catalog, including a dedicated search-and-research family.
No key
ArxivPaperTool uses the public arXiv API
3 results
Default knowledge retrieval, minimum relevance 0.35
50 a month
Workflow executions on the free AMP Basic plan

What a research crew actually does all day

A typical research crew splits the job the way an analyst would. One agent searches and collects sources, another reads and extracts, a third writes the brief. Tasks run in order by default, and each output feeds the next, so the writer only sees what the reader produced. CrewAI's own starter material is built on exactly this pattern. The quickstart builds a Flow whose state holds a topic and a report, then runs a one-agent crew that searches the web and writes a markdown report to disk. The first-crew guide gives a researcher agent the SerperDevTool and saves its findings to a report file.

That shape suits literature scans, competitor and market sweeps, background checks and recurring digests. It suits them less when the question needs judgment the team has not written down. Agents follow role, goal and backstory text, so a vague brief produces a vague report. Our CrewAI examples walk through the official starter projects in more detail. For research work, the deciding questions come next: where the sources come from, what the agents remember, and who checks the output.

💡
Toolkit tip
Start with keyless sources

ArxivPaperTool and the You.com free search tier need no API key, so a first research crew can run before you open any search-API account.

The search layer, and which tools need a key

The research family in the open-source catalog covers Serper, Brave, Exa, LinkUp, GitHub, Website, Code Docs, YouTube, Tavily, Arxiv and SerpApi. Nearly all of them call a third-party service, so each one means another account and, past its free tier, another bill outside CrewAI. SerperDevTool reads a key from the SERPER_API_KEY variable and returns 10 results by default; its docs page says Serper offers a free tier [1]. Brave's web, news, image and video tools run on a free Brave plan, while its local points-of-interest tools need a paid one.

Tool Key needed Worth knowing for research
ArxivPaperTool No Public arXiv API, 1 to 100 results (default 5), optional PDF download
You.com search (MCP) No for you-search Free tier: 100 queries a day; research and contents need a key
SerperDevTool Yes (free tier) 10 results by default
TavilyResearchTool Yes Returns a synthesized report with citations
ExaSearchTool Yes Highlights on, full page content off by default
GithubSearchTool Personal access token Code, repos, pull requests, issues

Tavily deserves a closer look for report work. TavilyResearchTool hands back a synthesized, cited report instead of raw links, with model choices mini, pro or auto and citation formats numbered, MLA, APA or Chicago [2]. It can also stream progress and shape its output to a JSON schema you supply. The plain TavilySearchTool defaults to 5 results, basic depth and a general topic, with news and finance topics available, and it truncates long results to protect the context window.

Two cautions. WebsiteSearchTool and CodeDocsSearchTool are labeled experimental, and the WebsiteSearchTool page warns it may not be accessible yet. For reading a specific page, URLReadTool is the steadier choice. It fetches up to 5 MiB with a 30-second timeout, pulls text out of PDF, DOCX and XLSX files, does not log in anywhere, and refuses private or loopback addresses unless you allow a host by name. The full catalog, with key and no-key tools side by side, is in our CrewAI tools guide.

Curious how CrewAI feels in practice?Start freeTry CrewAI free →

Turning your own documents into a knowledge base

Most research teams already own the best sources: past reports, interview notes, datasets. CrewAI gives you two ways to put them in front of agents. Knowledge sources accept raw strings, text files, PDF, CSV, Excel and JSON, attached either to one agent or to the whole crew, each level with its own storage collection. Web pages work too, once the docling package is installed. Retrieval returns 3 results with a minimum relevance score of 0.35 by default, both adjustable, and the agent's model first rewrites the task into a focused search query on its own [3].

Three defaults matter here. Knowledge embeddings use OpenAI's text-embedding-3-small even when your agents run on another provider, so an OpenAI key may be needed anyway; Ollama, Voyage AI, Google, Azure and OpenRouter embedders can replace it. Storage is local ChromaDB. And sources are re-embedded on every kickoff by default, which slows large collections; initializing the knowledge parameter directly avoids that. When a project ends, crewai reset-memories with the knowledge option clears the stored knowledge; memory is reset separately with the -m option.

The second route is RagTool, a tool the agent calls when it decides it needs to look something up. It loads PDF, CSV, JSON, JSONL, DOCX, XML, GitHub repositories, PostgreSQL, MySQL, Slack, Dropbox, images and custom sources. Its embedding list is long, from OpenAI and Cohere to Ollama, Sentence Transformer and ONNX, and it can store vectors in Qdrant. The search tools with Search in their name, such as PDFSearchTool, work the same way and default to OpenAI embeddings with ChromaDB or Qdrant.

Memory that carries from one study to the next

Knowledge is what you hand the agents. Memory is what they keep. CrewAI now uses one unified Memory class, rebuilt in March 2026, which you switch on for a crew with memory=True and which Flows carry built in. It stores records in LanceDB under a project-local folder. Recall ranks results by semantic similarity, recency and importance, weighted 0.5, 0.3 and 0.2 by default, with a 30-day recency half-life. When a new record looks more than 85% similar to an old one, the model decides whether to keep, update, delete or insert, which keeps duplicates down.

For research groups that share one deployment, source tags and a private flag isolate each person's memories, and scopes restrict which branches an agent can read. Two defaults cost money or privacy. The memory embedder is OpenAI's text-embedding-3-large, so the default path needs an OpenAI key. Memory content is also sent to the configured model for analysis. That is fine for public material. It is not fine for everything.

⚠️
Watch out
Default embeddings call OpenAI

Knowledge and memory embed through OpenAI by default even when agents use another model; set an Ollama embedder if sources must stay on your machines.

Keeping sensitive sources on your own machines

Sensitive sources can stay on your own hardware. The docs describe a fully local setup: an Ollama model paired with an Ollama embedder, with no external API involved. Knowledge can embed locally through Ollama as well, and the memory docs themselves advise a local model for sensitive data. Every OpenAI default has to go, though. If you use crew planning, set planning_llm to the local model too, and point any Search tools at an Ollama embedder. Ollama connects either through the optional LiteLLM extra or as an OpenAI-compatible endpoint with a base URL. The framework needs Python 3.10 or newer and below 3.14.

A few settings deserve a check before confidential work starts. The open-source package sends anonymous usage telemetry by default, covering things like tool names and agent roles, and it switches off with the CREWAI_DISABLE_TELEMETRY or OTEL_SDK_DISABLED variable. The separate share_crew option is opt-in, and when enabled it sends full crew data, including task descriptions and outputs, to CrewAI to improve the library and train models. Leave it off. Tracing is separate again: nothing uploads unless you approve or log in. On the hosted platform, CrewAI's Terms let it use customer data, including outputs, to improve its services and train models.

Files can go straight to agents too. The early-access file support handles images, PDFs, audio, video and text through the crewai[file-processing] extra, but providers differ: Gemini accepts all of those, Anthropic and Bedrock take images and PDF, and OpenAI's completions API takes images only. Per-provider caps apply as well; the docs list OpenAI PDFs at up to 32 MB and 100 pages, and Bedrock PDFs at up to 4.5 MB. For long scanned reports, check those limits before choosing the model.

Checking the work before anyone cites it

Agents summarize confidently whether or not the source supports them. CrewAI gives you several checkpoints. Task guardrails come as Python functions or as plain-language rules that the agent's model enforces; several can run in sequence, and a failed check sends the task back for up to 3 retries by default. Structured output through output_pydantic or output_json forces a fixed shape, such as a table of claims and source URLs, though a failed conversion leaves only the raw text. Setting human_input on a task makes a person review the final answer before it moves on.

CrewAI's platform docs also describe a Hallucination Guardrail that scores an output's faithfulness to reference context from 0 to 10, with an optional pass threshold. The vendor says each check adds about 1 to 3 seconds per task and costs LLM calls. Multi-agent runs burn tokens quickly, so set spend limits early. Our CrewAI AI playbook covers guardrails, planning and delegation in depth.

💡
Toolkit tip
Ask for claims plus sources

Use output_pydantic or output_json to make the writer return each claim next to its source URL, so a reviewer can check it line by line.

Ready to put CrewAI to the test?Start freeTry CrewAI free →

Moving a crew from a laptop to a schedule

Running crews locally costs CrewAI nothing. Recurring jobs, such as a weekly literature digest, can move to CrewAI AMP (Agent Management Platform), where each deployed crew becomes an automation with triggers and traces. The free Basic plan covers 2 automations and 50 workflow executions a month on CrewAI cloud, with no additional executions available on Basic [4]. By our arithmetic, that is about 1.7 executions a day on a 30-day month. More executions or automations, customer infrastructure, enterprise connectors, SSO, role-based access, PII redaction and dedicated support sit on the custom-priced Enterprise plan.

CrewAI's blog describes one research-style deployment: a healthcare staffing company that automated physician credentialing checks, covering license, medical board and sanction-list lookups, with an agent that pushes JSON results into Snowflake. It is a vendor account, and it shows the pattern well. Narrow, repeatable lookups against known sources are where research agents earn their keep. Open-ended questions still need a person.

Frequently asked questions

Can CrewAI read papers behind a login or paywall?+

URLReadTool does not authenticate, so it reads only what a page serves without a login. Content you are licensed to use can be downloaded and added as a knowledge source instead.

Can CrewAI agents search YouTube content?+

Yes. YoutubeVideoSearchTool and YoutubeChannelSearchTool run semantic search over YouTube content and use OpenAI embeddings by default.

Why does an upgrade break an existing memory store?+

Older local memory stores built with 1536-dimension embeddings can clash with the current 3072-dimension default embedder. Deleting the memory directory or running crewai reset-memories -m fixes it.

Can a research crew use LangChain or LlamaIndex tools?+

Yes. CrewAI documents wrapping LangChain tools and lists a LlamaIndex tool, even though the crewai package itself does not depend on LangChain.

Should your research team build on CrewAI?

Yes, if someone on the team writes Python and the work repeats: the same kinds of searches, the same document sets, the same report format. Start with ArxivPaperTool or a free search tier, add your own files as knowledge, and decide early whether embeddings and memory should stay local. Budget for model and search-API bills from day one, since CrewAI does not carry them. If nobody codes, try Studio first; if the research is also one-off, a hosted assistant will serve you faster.

Sources
  1. [1] CrewAI documentation: Google Serper Search (2026-11) https://docs.crewai.com/en/tools/search-research/serperdevtool
  2. [2] CrewAI documentation: Tavily Research Tool (2026-11) https://docs.crewai.com/en/tools/search-research/tavilyresearchtool
  3. [3] CrewAI documentation: Knowledge (2026-11) https://docs.crewai.com/en/concepts/knowledge
  4. [4] CrewAI pricing (2026-11) https://crewai.com/pricing
All 7 sources we used for this article
  1. 1. CrewAI documentation: Google Serper Search (2026-11) https://docs.crewai.com/en/tools/search-research/serperdevtool
  2. 2. CrewAI documentation: Tavily Research Tool (2026-11) https://docs.crewai.com/en/tools/search-research/tavilyresearchtool
  3. 3. CrewAI documentation: Knowledge (2026-11) https://docs.crewai.com/en/concepts/knowledge
  4. 4. CrewAI pricing (2026-11) https://crewai.com/pricing
  5. 5. CrewAI documentation: Installation https://docs.crewai.com/en/installation
  6. 6. CrewAI Terms of Use https://crewai.com/terms-of-use
  7. 7. AWS Marketplace: CrewAI Enterprise Platform reviews (from G2) https://aws.amazon.com/marketplace/reviews/reviews-list/prodview-2lisdk6meykru