crewAIInc / crewAIInc/crewAI

[FEATURE] Add Azure DocumentDB vector search tool integration

Open
#7,302 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request vendor-pitch
Dominant language
Python
Stars
58.8k
Forks
8.5k
Avg merge
1d 15h
Merged PRs (30d)
109

Description

Feature Area

Integration with external tools

Is your feature request related to a an existing bug? Please link it here.

CrewAI currently has a MongoDBVectorSearchTool, but there is no dedicated tool integration for Azure DocumentDB.

Azure DocumentDB is a fully managed NoSQL database service with MongoDB compatibility and native vector search capabilities. Users building RAG agents on Azure DocumentDB currently need to write custom retrieval code instead of using a first-class CrewAI tool.

A dedicated AzureDocumentDBVectorSearchTool would make it easier to use Azure DocumentDB as a vector store for CrewAI agents while keeping the integration clearly scoped to Azure DocumentDB configuration, documentation, authentication, indexing, and vector search behavior.

Describe the solution you'd like

Add a new Azure DocumentDB vector search tool to crewai-tools, separate from the existing MongoDBVectorSearchTool.

Proposed public API:

  • AzureDocumentDBVectorSearchTool
  • AzureDocumentDBVectorSearchConfig
  • AzureDocumentDBToolSchema

The tool should support:

  • Connecting to Azure DocumentDB using a connection string
  • Selecting database and collection
  • Generating embeddings using the existing CrewAI/OpenAI or Azure OpenAI embedding pattern
  • Adding text documents with metadata and embeddings
  • Creating or documenting the required Azure DocumentDB vector index configuration
  • Running vector similarity search against Azure DocumentDB
  • Returning JSON-serializable search results for CrewAI agents
  • Optional query configuration such as limit, filters, score output, and whether to include embeddings

This should be implemented as a new tool package, for example:

crewai_tools/tools/azure_documentdb_vector_search_tool/

The README should include setup instructions, required Azure DocumentDB resource configuration, environment variables, ingestion example, and CrewAI Agent usage example.

Reference Azure DocumentDB docs:
https://learn.microsoft.com/en-us/azure/documentdb/

Describe alternatives you've considered

An alternative is to use the existing MongoDBVectorSearchTool because Azure DocumentDB has MongoDB compatibility. However, that tool is branded and documented for MongoDB/Atlas and uses MongoDB-specific assumptions.

Another alternative is for users to write custom retrieval code outside CrewAI, but that creates duplicated boilerplate for connection handling, embeddings, indexing guidance, ingestion, and query execution.

A dedicated Azure DocumentDB tool would provide a clearer user experience for Azure users and allow Azure-specific documentation, examples, configuration, and future enhancements without overloading the MongoDB integration.

Additional context

Azure DocumentDB documentation describes vector search and embeddings support:
https://learn.microsoft.com/en-us/azure/documentdb/

Related Azure DocumentDB vector search quickstarts:

Existing CrewAI tool for reference:
https://github.com/crewAIInc/crewAI/tree/main/lib/crewai-tools/src/crewai_tools/tools/mongodb_vector_search_tool

The goal is not to modify the MongoDB extension, but to add a new Azure DocumentDB integration with its own name, README, examples, optional dependency, and tests.

Willingness to Contribute

Yes, I'd be happy to submit a pull request

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the existing crewai_tools/tools/mongodb_vector_search_tool/ package and the linked Azure DocumentDB vector-search quickstarts first. Define the new package around the proposed public API, Azure connection and vector-search requirements, then add its README, examples, optional dependency, and tests. Done means the integration supports ingestion and JSON-serializable search results without modifying the MongoDB tool.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, python
Domain
ai, database
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.