Downloads in the 30 and 7 days to October 10, 2026. Refreshed weekly.
Package Information
No reported malware or high/critical advisories · Details
The current version has no OSV.dev malware reports and no critical or high-severity vulnerabilities.
Package Insights
((week_daily_avg - month_daily_avg) / month_daily_avg) * 100More insights and metrics
Downloads by OS
Python Versions
Top Countries
Weekly Downloads
GitHub Stars
Dependencies
193 optional dependencies
-
ag-ui-protocol==0.1.15[core]extra == "core"
-
ag-ui-protocol==0.1.15[crewai]extra == "crewai"
-
ag-ui-protocol==0.1.15[dragent]extra == "dragent"
-
ag-ui-protocol==0.1.15[langgraph]extra == "langgraph"
-
ag-ui-protocol==0.1.15[llamaindex]extra == "llamaindex"
-
aiohttp<4.0.0,>=3.14.3[auth]extra == "auth"
-
aiohttp<4.0.0,>=3.14.3[drmcp]extra == "drmcp"
-
aiohttp<4.0.0,>=3.14.3[drmcpbase]extra == "drmcpbase"
-
aiohttp<4.0.0,>=3.14.3[drmcputils]extra == "drmcputils"
-
aiohttp<4.0.0,>=3.14.3[drtools]extra == "drtools"
-
aiohttp-retry<3.0.0,>=2.8.3[drmcp]extra == "drmcp"
-
aiohttp-retry<3.0.0,>=2.8.3[drmcpbase]extra == "drmcpbase"
-
anthropic<1.0.0,~=0.71.0[crewai]extra == "crewai"
-
async-lru>=2.3.0[drmcp]extra == "drmcp"
-
azure-ai-inference<2.0.0,>=1.0.0b9[crewai]extra == "crewai"
-
beautifulsoup4<5.0.0,>=4.12.0[drmcp]extra == "drmcp"
-
beautifulsoup4<5.0.0,>=4.12.0[drtools]extra == "drtools"
-
cachetools<8.0.0,>=5.0.0[dragent]extra == "dragent"
-
cachetools<8.0.0,>=5.0.0[drmcp]extra == "drmcp"
-
cachetools<8.0.0,>=5.0.0[drmcpbase]extra == "drmcpbase"
-
colorama<1.0.0,>=0.4.6[core]extra == "core"
-
colorama<1.0.0,>=0.4.6[crewai]extra == "crewai"
-
colorama<1.0.0,>=0.4.6[dragent]extra == "dragent"
-
colorama<1.0.0,>=0.4.6[langgraph]extra == "langgraph"
-
colorama<1.0.0,>=0.4.6[llamaindex]extra == "llamaindex"
-
crewai<2.0.0,>=1.15.21[crewai]extra == "crewai"
-
crewai-tools<2.0.0,>=1.15.21[crewai]extra == "crewai"
-
datarobot<4.0.0,>=3.19.0[auth]extra == "auth"
-
datarobot<4.0.0,>=3.19.0[core]extra == "core"
-
datarobot<4.0.0,>=3.19.0[crewai]extra == "crewai"
-
datarobot<4.0.0,>=3.19.0[dragent]extra == "dragent"
-
datarobot<4.0.0,>=3.19.0[drmcp]extra == "drmcp"
-
datarobot<4.0.0,>=3.19.0[drmcpbase]extra == "drmcpbase"
-
datarobot<4.0.0,>=3.19.0[drmcputils]extra == "drmcputils"
-
datarobot<4.0.0,>=3.19.0[drtools]extra == "drtools"
-
datarobot<4.0.0,>=3.19.0[langgraph]extra == "langgraph"
-
datarobot<4.0.0,>=3.19.0[llamaindex]extra == "llamaindex"
-
datarobot-asgi-middleware<1.0.0,>=0.2.0[drmcp]extra == "drmcp"
-
datarobot-moderations<12.0.0,>=11.3.7[core]extra == "core"
-
datarobot-moderations<12.0.0,>=11.3.7[crewai]extra == "crewai"
-
datarobot-moderations<12.0.0,>=11.3.7[dragent]extra == "dragent"
-
datarobot-moderations<12.0.0,>=11.3.7[langgraph]extra == "langgraph"
-
datarobot-moderations<12.0.0,>=11.3.7[llamaindex]extra == "llamaindex"
-
datarobot-opentelemetry<1.0.0,>=0.4.0[dragent]extra == "dragent"
-
datarobot-opentelemetry<1.0.0,>=0.4.0[llamaindex]extra == "llamaindex"
-
datarobot-predict<2.0.0,>=1.13.2[core]extra == "core"
-
datarobot-predict<2.0.0,>=1.13.2[crewai]extra == "crewai"
-
datarobot-predict<2.0.0,>=1.13.2[dragent]extra == "dragent"
-
datarobot-predict<2.0.0,>=1.13.2[drmcp]extra == "drmcp"
-
datarobot-predict<2.0.0,>=1.13.2[drtools]extra == "drtools"
-
datarobot-predict<2.0.0,>=1.13.2[langgraph]extra == "langgraph"
-
datarobot-predict<2.0.0,>=1.13.2[llamaindex]extra == "llamaindex"
-
fastmcp<4.0.0,>=3.4.1[drmcp]extra == "drmcp"
-
fastmcp<4.0.0,>=3.4.1[drmcpbase]extra == "drmcpbase"
-
httpx<1.0.0,>=0.28.1[auth]extra == "auth"
-
httpx<1.0.0,>=0.28.1[drmcp]extra == "drmcp"
-
httpx<1.0.0,>=0.28.1[drmcpbase]extra == "drmcpbase"
-
httpx<1.0.0,>=0.28.1[drmcputils]extra == "drmcputils"
-
httpx<1.0.0,>=0.28.1[drtools]extra == "drtools"
-
httpx-retries>=0.4.0[core]extra == "core"
-
httpx-retries>=0.4.0[crewai]extra == "crewai"
-
httpx-retries>=0.4.0[dragent]extra == "dragent"
-
httpx-retries>=0.4.0[langgraph]extra == "langgraph"
-
httpx-retries>=0.4.0[llamaindex]extra == "llamaindex"
-
langchain-mcp-adapters<0.2.0,>=0.1.12[langgraph]extra == "langgraph"
-
langgraph<2.0.0,>=1.0.0[langgraph]extra == "langgraph"
-
litellm<2.0.0,>=1.96.2[crewai]extra == "crewai"
-
litellm<2.0.0,>=1.96.2[eval]extra == "eval"
-
litellm<2.0.0,>=1.96.2[langgraph]extra == "langgraph"
-
litellm<2.0.0,>=1.96.2[llamaindex]extra == "llamaindex"
-
llama-index-core<0.15.0,>=0.14.0[llamaindex]extra == "llamaindex"
-
llama-index-llms-bedrock-converse>=0.15.0[core]extra == "core"
-
llama-index-llms-bedrock-converse>=0.15.0[crewai]extra == "crewai"
-
llama-index-llms-bedrock-converse>=0.15.0[dragent]extra == "dragent"
-
llama-index-llms-bedrock-converse>=0.15.0[langgraph]extra == "langgraph"
-
llama-index-llms-bedrock-converse>=0.15.0[llamaindex]extra == "llamaindex"
-
llama-index-llms-langchain<1.0.0,>=0.8.0[llamaindex]extra == "llamaindex"
-
llama-index-llms-litellm<0.7.0,>=0.4.1[llamaindex]extra == "llamaindex"
-
llama-index-tools-mcp<0.5.0,>=0.1.0[llamaindex]extra == "llamaindex"
-
mcpadapt>=0.1.9[crewai]extra == "crewai"
-
mem0ai<2.0.0,>=1.0.4[dragent]extra == "dragent"
-
nemo-evaluator-launcher[eval]extra == "eval"
-
nvidia-nat==1.7.0[dragent]extra == "dragent"
-
nvidia-nat-a2a==1.7.0[dragent]extra == "dragent"
-
nvidia-nat-crewai==1.7.0[crewai]extra == "crewai"
-
nvidia-nat-langchain==1.7.0[dragent]extra == "dragent"
-
nvidia-nat-langchain==1.7.0[langgraph]extra == "langgraph"
-
nvidia-nat-llama-index==1.7.0[llamaindex]extra == "llamaindex"
-
nvidia-nat-mcp==1.7.0[dragent]extra == "dragent"
-
nvidia-nat-opentelemetry==1.7.0[dragent]extra == "dragent"
-
okta-client-python<1.0.0,>=0.2.0[auth]extra == "auth"
-
okta-client-python<1.0.0,>=0.2.0[drmcp]extra == "drmcp"
-
okta-client-python<1.0.0,>=0.2.0[drmcpbase]extra == "drmcpbase"
-
okta-client-python<1.0.0,>=0.2.0[drmcputils]extra == "drmcputils"
-
okta-client-python<1.0.0,>=0.2.0[drtools]extra == "drtools"
-
openai<3.0.0,>=2.30.0[core]extra == "core"
-
openai<3.0.0,>=2.30.0[crewai]extra == "crewai"
-
openai<3.0.0,>=2.30.0[dragent]extra == "dragent"
-
openai<3.0.0,>=2.30.0[drmcp]extra == "drmcp"
-
openai<3.0.0,>=2.30.0[langgraph]extra == "langgraph"
-
openai<3.0.0,>=2.30.0[llamaindex]extra == "llamaindex"
-
opentelemetry-api<2.0.0,>=1.22.0[drmcp]extra == "drmcp"
-
opentelemetry-api<2.0.0,>=1.22.0[drmcpbase]extra == "drmcpbase"
-
opentelemetry-api<2.0.0,>=1.22.0[drtools]extra == "drtools"
-
opentelemetry-exporter-otlp<2.0.0,>=1.43.0[drmcp]extra == "drmcp"
-
opentelemetry-exporter-otlp-proto-http<2.0.0,>=1.22.0[drmcp]extra == "drmcp"
-
opentelemetry-exporter-otlp-proto-http<2.0.0,>=1.22.0[drmcpbase]extra == "drmcpbase"
-
opentelemetry-exporter-otlp-proto-http<2.0.0,>=1.22.0[drtools]extra == "drtools"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[core]extra == "core"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[crewai]extra == "crewai"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[dragent]extra == "dragent"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[drmcp]extra == "drmcp"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-aiohttp-client<1.0.0,>=0.64b0[llamaindex]extra == "llamaindex"
-
opentelemetry-instrumentation-crewai<1.0.0,>=0.62.1[crewai]extra == "crewai"
-
opentelemetry-instrumentation-fastapi<1.0.0,>=0.64b0[dragent]extra == "dragent"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[core]extra == "core"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[crewai]extra == "crewai"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[dragent]extra == "dragent"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[drmcp]extra == "drmcp"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-httpx<1.0.0,>=0.64b0[llamaindex]extra == "llamaindex"
-
opentelemetry-instrumentation-langchain<1.0.0,>=0.62.1[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-llamaindex<1.0.0,>=0.62.1[llamaindex]extra == "llamaindex"
-
opentelemetry-instrumentation-openai<1.0.0,>=0.62.1[core]extra == "core"
-
opentelemetry-instrumentation-openai<1.0.0,>=0.62.1[crewai]extra == "crewai"
-
opentelemetry-instrumentation-openai<1.0.0,>=0.62.1[dragent]extra == "dragent"
-
opentelemetry-instrumentation-openai<1.0.0,>=0.62.1[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-openai<1.0.0,>=0.62.1[llamaindex]extra == "llamaindex"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[core]extra == "core"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[crewai]extra == "crewai"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[dragent]extra == "dragent"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[drmcp]extra == "drmcp"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-requests<1.0.0,>=0.64b0[llamaindex]extra == "llamaindex"
-
opentelemetry-instrumentation-threading<1.0.0,>=0.64b0[core]extra == "core"
-
opentelemetry-instrumentation-threading<1.0.0,>=0.64b0[crewai]extra == "crewai"
-
opentelemetry-instrumentation-threading<1.0.0,>=0.64b0[dragent]extra == "dragent"
-
opentelemetry-instrumentation-threading<1.0.0,>=0.64b0[langgraph]extra == "langgraph"
-
opentelemetry-instrumentation-threading<1.0.0,>=0.64b0[llamaindex]extra == "llamaindex"
-
opentelemetry-sdk<2.0.0,>=1.22.0[drmcp]extra == "drmcp"
-
opentelemetry-sdk<2.0.0,>=1.22.0[drmcpbase]extra == "drmcpbase"
-
opentelemetry-sdk<2.0.0,>=1.22.0[drtools]extra == "drtools"
-
perplexityai<1.0,>=0.27[drmcp]extra == "drmcp"
-
perplexityai<1.0,>=0.27[drtools]extra == "drtools"
-
polars<2.0.0,>=1.0.0[drmcp]extra == "drmcp"
-
polars<2.0.0,>=1.0.0[drtools]extra == "drtools"
-
pyarrow<24.0.0,>=23.0.1[core]extra == "core"
-
pyarrow<24.0.0,>=23.0.1[crewai]extra == "crewai"
-
pyarrow<24.0.0,>=23.0.1[dragent]extra == "dragent"
-
pyarrow<24.0.0,>=23.0.1[drmcp]extra == "drmcp"
-
pyarrow<24.0.0,>=23.0.1[drtools]extra == "drtools"
-
pyarrow<24.0.0,>=23.0.1[langgraph]extra == "langgraph"
-
pyarrow<24.0.0,>=23.0.1[llamaindex]extra == "llamaindex"
-
pydantic<3.0.0,>=2.6.1[auth]extra == "auth"
-
pydantic<3.0.0,>=2.6.1[drmcp]extra == "drmcp"
-
pydantic<3.0.0,>=2.6.1[drmcpbase]extra == "drmcpbase"
-
pydantic<3.0.0,>=2.6.1[drmcputils]extra == "drmcputils"
-
pydantic<3.0.0,>=2.6.1[drtools]extra == "drtools"
-
pydantic-settings<3.0.0,>=2.14.2[auth]extra == "auth"
-
pydantic-settings<3.0.0,>=2.14.2[drmcp]extra == "drmcp"
-
pydantic-settings<3.0.0,>=2.14.2[drmcpbase]extra == "drmcpbase"
-
pydantic-settings<3.0.0,>=2.14.2[drmcputils]extra == "drmcputils"
-
pydantic-settings<3.0.0,>=2.14.2[drtools]extra == "drtools"
-
pyjwt<3.0.0,>=2.15.0[auth]extra == "auth"
-
pyjwt<3.0.0,>=2.15.0[core]extra == "core"
-
pyjwt<3.0.0,>=2.15.0[crewai]extra == "crewai"
-
pyjwt<3.0.0,>=2.15.0[dragent]extra == "dragent"
-
pyjwt<3.0.0,>=2.15.0[drmcp]extra == "drmcp"
-
pyjwt<3.0.0,>=2.15.0[drmcpbase]extra == "drmcpbase"
-
pyjwt<3.0.0,>=2.15.0[drmcputils]extra == "drmcputils"
-
pyjwt<3.0.0,>=2.15.0[drtools]extra == "drtools"
-
pyjwt<3.0.0,>=2.15.0[langgraph]extra == "langgraph"
-
pyjwt<3.0.0,>=2.15.0[llamaindex]extra == "llamaindex"
-
pypdf<7.0.0,>=6.19.0[drmcp]extra == "drmcp"
-
pypdf<7.0.0,>=6.19.0[drtools]extra == "drtools"
-
python-dateutil<3.0.0,>=2.9.0[drmcp]extra == "drmcp"
-
python-dateutil<3.0.0,>=2.9.0[drtools]extra == "drtools"
-
python-dotenv<2.0.0,>=1.1.0[drmcp]extra == "drmcp"
-
pyyaml>=6.0[eval]extra == "eval"
-
requests<3.0.0,>=2.33.0[core]extra == "core"
-
requests<3.0.0,>=2.33.0[crewai]extra == "crewai"
-
requests<3.0.0,>=2.33.0[dragent]extra == "dragent"
-
requests<3.0.0,>=2.33.0[drmcp]extra == "drmcp"
-
requests<3.0.0,>=2.33.0[langgraph]extra == "langgraph"
-
requests<3.0.0,>=2.33.0[llamaindex]extra == "llamaindex"
-
rich<16.0.0,>=13.0.0[drmcp]extra == "drmcp"
-
starlette>=1.3.1[dragent]extra == "dragent"
-
starlette>=1.3.1[drmcp]extra == "drmcp"
-
starlette>=1.3.1[drmcpbase]extra == "drmcpbase"
-
tavily-python<1.0.0,>=0.7.20[drmcp]extra == "drmcp"
-
tavily-python<1.0.0,>=0.7.20[drtools]extra == "drtools"
-
tensile<1.0.0,>=0.12.0[dragent]extra == "dragent"