* INTPYTHON-580 Design and Implement MongoDBVectorSearchTool
* add implementation
* wip
* wip
* finish tests
* add todo
* refactor to wrap langchain-mongodb
* cleanup
* address review
* Fix usage of EnvVar class
* inline code
* lint
* lint
* fix usage of SearchIndexModel
* Refactor: Update EnvVar import path and remove unused tests.utils module
- Changed import of EnvVar from tests.utils to crewai.tools in multiple files.
- Updated README.md for MongoDB vector search tool with additional context.
- Modified subprocess command in vector_search.py for package installation.
- Cleaned up test_generate_tool_specs.py to improve mock patching syntax.
- Deleted unused tests/utils.py file.
* update the crewai dep and the lockfile
* chore: update package versions and dependencies in uv.lock
- Removed `auth0-python` package.
- Updated `crewai` version to 0.140.0 and adjusted its dependencies.
- Changed `json-repair` version to 0.25.2.
- Updated `litellm` version to 1.72.6.
- Modified dependency markers for several packages to improve compatibility with Python versions.
* refactor: improve MongoDB vector search tool with enhanced error handling and new dimensions field
- Added logging for error handling in the _run method and during client cleanup.
- Introduced a new 'dimensions' field in the MongoDBVectorSearchConfig for embedding vector size.
- Refactored the _run method to return JSON formatted results and handle exceptions gracefully.
- Cleaned up import statements and improved code readability.
* address review
* update tests
* debug
* fix test
* fix test
* fix test
* support azure openai
---------
Co-authored-by: lorenzejay <lorenzejaytech@gmail.com>
* feat: add explictly package_dependencies in the Tools
* feat: collect package_dependencies from Tool to add in tool.specs.json
* feat: add default value in run_params Tool' specs
* fix: support get boolean values
This commit also refactor test to make easier define newest attributes into a Tool
* feat: generate tool specs file based on their schema definition
* generate tool spec after publishing a new release
* feat: support add available env-vars to tool.specs.json
* refactor: use better identifier names on tool specs
* feat: change tool specs generation to run daily
* feat: add auth token to notify api about tool changes
* refactor: use humanized_name instead of verbose_name
* refactor: generate tool spec after pushing to main
This commit also fix the remote upstream & updated the notify api