https://github.com/accenture/mcp-bench
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.6%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: Accenture
- Language: Python
- Default Branch: main
- Size: 16.8 MB
Statistics
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 5
- Releases: 0
Metadata Files
README.md
MCP-Bench: Benchmarking Tool-Using LLM Agents with Complex Real-World Tasks via MCP Servers

Overview
MCP-Bench is a comprehensive evaluation framework designed to assess Large Language Models' (LLMs) capabilities in tool-use scenarios through the Model Context Protocol (MCP). This benchmark provides an end-to-end pipeline for evaluating how effectively different LLMs can discover, select, and utilize tools to solve real-world tasks.
Leaderboard
| Rank | Model | Overall Score | |------|-------|---------------| | 1 | gpt-5 | 0.749 | | 2 | o3 | 0.715 | | 3 | gpt-oss-120b | 0.692 | | 4 | gemini-2.5-pro | 0.690 | | 5 | claude-sonnet-4 | 0.681 | | 6 | qwen3-235b-a22b-2507 | 0.678 | | 7 | glm-4.5 | 0.668 | | 8 | gpt-oss-20b | 0.654 | | 9 | kimi-k2 | 0.629 | | 10 | qwen3-30b-a3b-instruct-2507 | 0.627 | | 11 | gemini-2.5-flash-lite | 0.598 | | 12 | gpt-4o | 0.595 | | 13 | gemma-3-27b-it | 0.582 | | 14 | llama-3-3-70b-instruct | 0.558 | | 15 | gpt-4o-mini | 0.557 | | 16 | mistral-small-2503 | 0.530 | | 17 | llama-3-1-70b-instruct | 0.510 | | 18 | nova-micro-v1 | 0.508 | | 19 | llama-3-2-90b-vision-instruct | 0.495 | | 20 | llama-3-1-8b-instruct | 0.428 |
Overall Score represents the average performance across all evaluation dimensions including rule-based schema understanding, LLM-judged task completion, tool usage, and planning effectiveness. Scores are averaged across single-server and multi-server settings.
Quick Start
Installation
Clone the repository
bash git clone https://github.com/accenture/mcp-bench.git cd mcp-benchInstall dependencies ```bash conda create -n mcpbench python=3.10 conda activate mcpbench cd mcp_servers
Install MCP server dependencies
bash ./install.sh cd .. ```
Set up environment variables ```bash
Create .env file with API keys
Default setup uses both OpenRouter and Azure OpenAI
For Azure OpenAI, you also need to set your API version in file benchmark_config.yaml (line205)
For OpenRouter-only setup, see "Optional: Using only OpenRouter API" section below
cat > .env << EOF export OPENROUTERAPIKEY="youropenrouterkeyhere" export AZUREOPENAIAPIKEY="yourazureopenaiapikeyhere" export AZUREOPENAIENDPOINT="yourazureopenaiendpoint_here" EOF ```
Configure MCP Server API Keys
Some MCP servers require external API keys to function properly. These keys are automatically loaded from ./mcp_servers/api_key. You should set these keys by yourself in file ./mcp_servers/api_key:
```bash
View configured API keys
cat ./mcpservers/apikey ```
Required API keys include (These API keys are free and easy to get. You can get all of them within 10 mins):
- NPS_API_KEY: National Park Service API key (for nationalparks server) - Get API key
- NASA_API_KEY: NASA Open Data API key (for nasa-mcp server) - Get API key
- HF_TOKEN: Hugging Face token (for huggingface-mcp-server) - Get token
- GOOGLE_MAPS_API_KEY: Google Maps API key (for mcp-google-map server) - Get API key
- NCI_API_KEY: National Cancer Institute API key (for biomcp server) - Get API key This api key registration website might require US IP to open, see Issue #10 if you have difficulies for getting this api key.
Basic Usage
```bash
1. Verify all MCP servers can be connected
You should see "28/28 servers connected"
and "All successfully connected servers returned tools!" after running this
python ./utils/collectmcpinfo.py
2. List available models
source .env python run_benchmark.py --list-models
3. Run benchmark (gpt-oss-20b as an example)
run all tasks
source .env python run_benchmark.py --models gpt-oss-20b
single server tasks
source .env python runbenchmark.py --models gpt-oss-20b \ --tasks-file tasks/mcpbenchtaskssinglerunner_format.json
two server tasks
source .env python runbenchmark.py --models gpt-oss-20b \ --tasks-file tasks/mcpbenchtasksmulti2serverrunnerformat.json
three server tasks
source .env python runbenchmark.py --models gpt-oss-20b \ --tasks-file tasks/mcpbenchtasksmulti3serverrunnerformat.json
```
Optional: Add other model providers
To add new models from OpenRouter:
Find your model on OpenRouter
- Visit OpenRouter Models to browse available models
- Copy the model ID (e.g.,
anthropic/claude-sonnet-4ormeta-llama/llama-3.3-70b-instruct)
Add the model configuration
- Edit
llm/factory.pyand add your model in the OpenRouter section (around line 152) - Follow this pattern:
python configs["your-model-name"] = ModelConfig( name="your-model-name", provider_type="openrouter", api_key=os.getenv("OPENROUTER_API_KEY"), base_url="https://openrouter.ai/api/v1", model_name="provider/model-id" # The exact model ID from OpenRouter )
- Edit
Verify the model is available ```bash source .env python run_benchmark.py --list-models
Your new model should appear in the list
```
Run benchmark with your model
bash source .env python run_benchmark.py --models your-model-name
Optional: Using only OpenRouter API
If you only want to use OpenRouter without Azure:
Set up .env file with only OpenRouter:
bash cat > .env << EOF OPENROUTER_API_KEY=your_openrouterkey_here EOFModify the code to access Azure models through OpenRouter:
Edit llm/factory.py and comment out the Azure section (lines 69-101), then add Azure models through OpenRouter instead:
```python
Comment out or remove the Azure section (lines 69-109)
if os.getenv("AZUREOPENAIAPIKEY") and os.getenv("AZUREOPENAI_ENDPOINT"):
configs["o4-mini"] = ModelConfig(...)
...
Add Azure models through OpenRouter (in the OpenRouter section around line 106)
if os.getenv("OPENROUTERAPIKEY"): # Add OpenAI models via OpenRouter configs["gpt-4o"] = ModelConfig( name="gpt-4o", providertype="openrouter", apikey=os.getenv("OPENROUTERAPIKEY"), baseurl="https://openrouter.ai/api/v1", modelname="openai/gpt-4o" )
configs["gpt-4o-mini"] = ModelConfig(
name="gpt-4o-mini",
provider_type="openrouter",
api_key=os.getenv("OPENROUTER_API_KEY"),
base_url="https://openrouter.ai/api/v1",
model_name="openai/gpt-4o-mini"
)
configs["o3"] = ModelConfig(
name="o3",
provider_type="openrouter",
api_key=os.getenv("OPENROUTER_API_KEY"),
base_url="https://openrouter.ai/api/v1",
model_name="openai/o3"
)
configs["o4-mini"] = ModelConfig(
name="o4-mini",
provider_type="openrouter",
api_key=os.getenv("OPENROUTER_API_KEY"),
base_url="https://openrouter.ai/api/v1",
model_name="openai/o4-mini"
)
configs["gpt-5"] = ModelConfig(
name="gpt-5",
provider_type="openrouter",
api_key=os.getenv("OPENROUTER_API_KEY"),
base_url="https://openrouter.ai/api/v1",
model_name="openai/gpt-5"
)
# Keep existing OpenRouter models...
```
This way all models will be accessed through OpenRouter's unified API.
MCP Servers
MCP-Bench includes 28 diverse MCP servers:
- BioMCP - Biomedical research data, clinical trials, and health information
- Bibliomantic - I Ching divination, hexagrams, and mystical guidance
- Call for Papers - Academic conference submissions and call announcements
- Car Price Evaluator - Vehicle valuation and automotive market analysis
- Context7 - Project context management and documentation services
- DEX Paprika - Cryptocurrency DeFi analytics and decentralized exchange data
- FruityVice - Comprehensive fruit nutrition information and dietary data
- Game Trends - Gaming industry statistics and trend analysis
- Google Maps - Location services, geocoding, and mapping functionality
- Huge Icons - Icon search, management, and design resources
- Hugging Face - Machine learning models, datasets, and AI capabilities
- Math MCP - Mathematical calculations and computational operations
- Medical Calculator - Clinical calculation tools and medical formulas
- Metropolitan Museum - Art collection database and museum information
- Movie Recommender - Film recommendations and movie metadata
- NASA Data - Space mission data and astronomical information
- National Parks - US National Parks information and visitor services
- NixOS - Package management and system configuration tools
- OKX Exchange - Cryptocurrency trading data and market information
- OpenAPI Explorer - API specification exploration and testing tools
- OSINT Intelligence - Open source intelligence gathering and analysis
- Paper Search - Academic paper search across multiple research databases
- Reddit - Social media content and community discussions
- Scientific Computing - Advanced mathematical computations and data analysis
- Time MCP - Date, time utilities, and timezone conversions
- Unit Converter - Measurement conversions across different unit systems
- Weather Data - Weather forecasts and meteorological information
- Wikipedia - Encyclopedia content search and retrieval
Project Structure
mcp-bench/
├── agent/ # Task execution agents
│ ├── __init__.py
│ ├── executor.py # Multi-round task executor with retry logic
│ └── execution_context.py # Execution context management
├── benchmark/ # Evaluation framework
│ ├── __init__.py
│ ├── evaluator.py # LLM-as-judge evaluation metrics
│ ├── runner.py # Benchmark orchestrator
│ ├── results_aggregator.py # Results aggregation and statistics
│ └── results_formatter.py # Results formatting and display
├── config/ # Configuration management
│ ├── __init__.py
│ ├── benchmark_config.yaml # Benchmark configuration
│ └── config_loader.py # Configuration loader
├── llm/ # LLM provider abstractions
│ ├── __init__.py
│ ├── factory.py # Model factory for multiple providers
│ └── provider.py # Unified provider interface
├── mcp_modules/ # MCP server management
│ ├── __init__.py
│ ├── connector.py # Server connection handling
│ ├── server_manager.py # Multi-server orchestration
│ ├── server_manager_persistent.py # Persistent connection manager
│ └── tool_cache.py # Tool call caching mechanism
├── synthesis/ # Task generation
│ ├── __init__.py
│ ├── task_synthesis.py # Task generation with fuzzy conversion
│ ├── generate_benchmark_tasks.py # Batch task generation script
│ ├── benchmark_generator.py # Unified benchmark task generator
│ ├── README.md # Task synthesis documentation
│ └── split_combinations/ # Server combination splits
│ ├── mcp_2server_combinations.json
│ └── mcp_3server_combinations.json
├── utils/ # Utilities
│ ├── __init__.py
│ ├── collect_mcp_info.py # Server discovery and tool collection
│ ├── local_server_config.py # Local server configuration
│ └── error_handler.py # Error handling utilities
├── tasks/ # Benchmark task files
│ ├── mcpbench_tasks_single_runner_format.json
│ ├── mcpbench_tasks_multi_2server_runner_format.json
│ └── mcpbench_tasks_multi_3server_runner_format.json
├── mcp_servers/ # MCP server implementations (28 servers)
│ ├── api_key # API keys configuration file
│ ├── commands.json # Server command configurations
│ ├── install.sh # Installation script for all servers
│ ├── requirements.txt # Python dependencies
│ └── [28 server directories]
├── cache/ # Tool call cache directory (auto-created)
├── run_benchmark.py # Main benchmark runner script
├── README.md # Project documentation
├── .gitignore # Git ignore configuration
└── .gitmodules # Git submodules configuration
Citation
If you use MCP-Bench in your research, please cite:
bibtex
@article{wang2025mcpbench,
title={MCP-Bench: Benchmarking Tool-Using LLM Agents with Complex Real-World Tasks via MCP Servers},
author={Wang, Zhenting and Chang, Qi and Patel, Hemani and Biju, Shashank and Wu, Cheng-En and Liu, Quan and Ding, Aolin and Rezazadeh, Alireza and Shah, Ankit and Bao, Yujia and Siow, Eugene},
journal={arXiv preprint arXiv:2508.20453},
year={2025}
}
Star History
Acknowledgments
- Built on the Model Context Protocol by Anthropic
- Thanks to all open-sourced MCP servers implemetation used
Owner
- Name: Accenture
- Login: Accenture
- Kind: organization
- Website: https://accenture.github.io
- Repositories: 185
- Profile: https://github.com/Accenture
Accenture Github site
GitHub Events
Total
- Issues event: 2
- Watch event: 176
- Issue comment event: 7
- Push event: 13
- Pull request event: 4
- Fork event: 17
- Create event: 6
Last Year
- Issues event: 2
- Watch event: 176
- Issue comment event: 7
- Push event: 13
- Pull request event: 4
- Fork event: 17
- Create event: 6
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 3
- Total pull requests: 4
- Average time to close issues: 3 days
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 2.67
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 4
Past Year
- Issues: 3
- Pull requests: 4
- Average time to close issues: 3 days
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 2.67
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 4
Top Authors
Issue Authors
- lewtun (3)
Pull Request Authors
- dependabot[bot] (4)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- node lts-alpine build
- node lts-alpine build
- python 3.11-slim build
- python 3.11-slim build
- node lts-alpine build
- python 3.11-slim build
- node lts-alpine build
- python 3.11-slim build
- python 3.10-slim build
- python 3.11-slim build
- node lts-alpine build
- node lts-alpine build
- python 3.11-slim build
- python 3.10-alpine build
- python 3.10-alpine build
- python 3.12-slim build
- python 3.11-slim build
- python 3.10-slim build
- @types/node ^22.13.14 development
- @typescript-eslint/eslint-plugin ^8.28.0 development
- @typescript-eslint/parser ^8.28.0 development
- eslint ^9.23.0 development
- eslint-config-prettier ^10.1.1 development
- eslint-plugin-prettier ^5.2.5 development
- prettier ^3.5.3 development
- typescript ^5.8.3 development
- typescript-eslint ^8.28.0 development
- @modelcontextprotocol/sdk ^1.12.0
- commander ^14.0.0
- zod ^3.24.2
- @modelcontextprotocol/sdk ^1.4.1
- node-fetch ^3.3.2
- zod ^3.24.2
- @types/axios ^0.9.36 development
- @types/node ^20.17.30 development
- typescript ^5.9.2 development
- @modelcontextprotocol/sdk ^1.9.0
- axios ^1.8.4
- fuse.js ^7.1.0
- @types/node ^22.13.5 development
- typescript ^5.9.2 development
- @modelcontextprotocol/sdk ^1.6.0
- zod ^3.24.2
- @types/node ^20.17.30 development
- @types/react ^18.3.20 development
- @types/react-dom ^18.3.6 development
- @typescript-eslint/eslint-plugin ^8.29.0 development
- @typescript-eslint/parser ^8.29.0 development
- autoprefixer ^10.4.21 development
- eslint ^8.57.1 development
- eslint-config-next ^15.2.4 development
- eslint-plugin-react ^7.37.5 development
- eslint-plugin-react-hooks ^5.2.0 development
- postcss ^8.5.3 development
- prettier ^3.5.3 development
- prettier-plugin-tailwindcss ^0.6.11 development
- tailwindcss ^3.4.17 development
- typescript ^5.8.2 development
- @types/react-syntax-highlighter ^15.5.13
- next ^15.2.4
- react ^18.3.1
- react-dom ^18.3.1
- react-syntax-highlighter ^15.6.1
- rehype-pretty-code ^0.14.1
- sharp ^0.33.5
- shiki ^3.2.1
- @types/node ^22.13.10 development
- ts-node ^10.9.2 development
- typescript ^5.9.2 development
- @modelcontextprotocol/sdk ^1.7.0
- axios ^1.8.4
- dotenv ^16.4.7
- zod ^3.24.2
- @modelcontextprotocol/sdk ^1.17.2
- ajv ^8.17.1
- axios ^1.11.0
- image-to-base64 ^2.2.0
- mcpscout ^0.0.1
- @types/node ^20.11.24 development
- typescript ^5.9.2 development
- @modelcontextprotocol/sdk 0.6.0
- axios ^1.8.2
- @types/node ^22.15.23 development
- mastra ^0.10.1 development
- typescript ^5.8.3 development
- @ai-sdk/openai ^1.3.22
- @mastra/core ^0.10.1
- @mastra/libsql ^0.10.0
- @mastra/loggers ^0.10.0
- @mastra/memory ^0.10.1
- zod ^3.25.32
- mcp [cli]>=1.9.0
- black >=23.11.0
- isort >=5.12.0
- mcp >=1.9.0
- mypy >=1.7.1
- pytest >=7.4.3
- pytest-asyncio >=0.21.1
- mcp *
- requests >=2.28.0
- requests-cache *
- retry-requests *
- mcp *
- requests >=2.28.0
- aiohttp ==3.9.5
- beautifulsoup4 ==4.12.3
- fastmcp >=0.2.0
- lxml ==5.1.0
- uvicorn ==0.24.0
- huggingface-hub >=0.29.3
- mcp >=1.4.1
- beautifulsoup4 >=4.13.3
- mcp >=1.6.0
- requests >=2.32.3
- beautifulsoup4 ==4.13.3
- mcp ==1.6.0
- requests ==2.32.3
- beautifulsoup4 >=4.13.3
- mcp >=1.5.0
- requests >=2.32.3
- fastmcp *
- fastmcp *
- dnspython >=2.7.0
- fastmcp >=0.1.0
- praw >=7.8.1
- redditwarp >=1.3.0
- uvicorn *
- accelerate ==0.31.0
- aiofiles ==23.2.1
- aiohttp ==3.9.5
- aiosignal ==1.3.1
- annotated-types ==0.6.0
- anyio ==4.3.0
- appnope ==0.1.4
- argon2-cffi ==23.1.0
- argon2-cffi-bindings ==21.2.0
- argparse ==1.4.0
- arrow ==1.3.0
- asttokens ==2.4.1
- async-lru ==2.0.4
- asyncio ==3.4.3
- attrs ==23.2.0
- babel ==2.14.0
- beautifulsoup4 ==4.12.3
- bleach ==6.1.0
- certifi ==2024.2.2
- cffi ==1.16.0
- charset-normalizer ==3.3.2
- click ==8.1.7
- colorlog ==6.8.2
- comm ==0.2.2
- contourpy ==1.2.1
- cycler ==0.12.1
- dataclasses ==0.6
- datasets ==2.19.2
- debugpy ==1.8.1
- decorator ==5.1.1
- defusedxml ==0.7.1
- dill ==0.3.8
- distro ==1.9.0
- et-xmlfile ==1.1.0
- eval-type-backport ==0.2.0
- executing ==2.0.1
- fastjsonschema ==2.19.1
- filelock ==3.14.0
- fonttools ==4.51.0
- fqdn ==1.5.1
- frozenlist ==1.4.1
- fsspec ==2024.3.1
- h11 ==0.14.0
- httpcore ==1.0.5
- httpx ==0.27.0
- huggingface-hub ==0.23.3
- idna ==3.7
- ipykernel ==6.29.4
- ipython ==8.23.0
- ipywidgets ==8.1.2
- isoduration ==20.11.0
- jedi ==0.19.1
- jinja2 ==3.1.3
- joblib ==1.4.2
- json5 ==0.9.25
- jsonpointer ==2.4
- jsonschema ==4.21.1
- jsonschema-specifications ==2023.12.1
- jupyter ==1.0.0
- jupyter-client ==8.6.1
- jupyter-console ==6.6.3
- jupyter-core ==5.7.2
- jupyter-events ==0.10.0
- jupyter-lsp ==2.2.5
- jupyter-server ==2.14.0
- jupyter-server-terminals ==0.5.3
- jupyterlab ==4.1.6
- jupyterlab-pygments ==0.3.0
- jupyterlab-server ==2.26.0
- jupyterlab-widgets ==3.0.10
- kiwisolver ==1.4.5
- lab ==8.1
- markdown-it-py ==3.0.0
- markupsafe ==2.1.5
- matplotlib ==3.8.4
- matplotlib-inline ==0.1.7
- mdurl ==0.1.2
- mistune ==3.0.2
- mpmath ==1.3.0
- multidict ==6.0.5
- multiprocess ==0.70.16
- nbclient ==0.10.0
- nbconvert ==7.16.3
- nbformat ==5.10.4
- nest-asyncio ==1.6.0
- networkx ==3.2.1
- nltk ==3.8.1
- notebook ==7.1.3
- notebook-shim ==0.2.4
- numpy ==1.26.4
- openai ==0.28.0
- openai-parallel-toolkit ==0.5.1
- openpyxl ==3.1.2
- overrides ==7.7.0
- packaging ==24.0
- pandas ==2.2.2
- pandocfilters ==1.5.1
- parso ==0.8.4
- pexpect ==4.9.0
- pillow ==10.3.0
- pip ==23.3.1
- platformdirs ==4.2.0
- prometheus-client ==0.20.0
- prompt-toolkit ==3.0.43
- protobuf ==5.27.2
- psutil ==5.9.8
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- pyarrow ==16.1.0
- pyarrow-hotfix ==0.6
- pycparser ==2.22
- pydantic ==2.7.0
- pydantic-core ==2.18.1
- pygments ==2.17.2
- pyparsing ==3.1.2
- python-dateutil ==2.9.0.post0
- python-json-logger ==2.0.7
- pytz ==2024.1
- pyyaml ==6.0.1
- pyzmq ==26.0.2
- qtconsole ==5.5.1
- qtpy ==2.4.1
- referencing ==0.34.0
- regex ==2024.4.28
- requests ==2.32.3
- rfc3339-validator ==0.1.4
- rfc3986-validator ==0.1.1
- rich ==13.7.1
- rpds-py ==0.18.0
- safetensors ==0.4.3
- send2trash ==1.8.3
- sentencepiece ==0.2.0
- setuptools ==68.2.2
- shellingham ==1.5.4
- simplejson ==3.19.2
- six ==1.16.0
- sniffio ==1.3.1
- soupsieve ==2.5
- stack-data ==0.6.3
- sympy ==1.12
- tabulate ==0.9.0
- terminado ==0.18.1
- tiktoken ==0.6.0
- tinycss2 ==1.2.1
- together ==1.2.0
- tokenizers ==0.19.1
- torch ==2.3.0
- tornado ==6.4
- tqdm ==4.66.2
- traitlets ==5.14.3
- transformers ==4.41.2
- txt2tags ==3.9
- typer ==0.12.3
- types-python-dateutil ==2.9.0.20240316
- typing-extensions ==4.11.0
- tzdata ==2024.1
- uri-template ==1.3.0
- urllib3 ==2.2.1
- wcwidth ==0.2.13
- webcolors ==1.13
- webencodings ==0.5.1
- websocket-client ==1.7.0
- wheel ==0.41.2
- widgetsnbextension ==4.0.10
- xxhash ==3.4.1
- yarl ==1.9.4
- accelerate ==0.31.0
- aiofiles ==23.2.1
- aiohttp ==3.9.5
- aiosignal ==1.3.1
- annotated-types ==0.6.0
- anyio ==4.3.0
- appnope ==0.1.4
- argon2-cffi ==23.1.0
- argon2-cffi-bindings ==21.2.0
- argparse ==1.4.0
- arrow ==1.3.0
- asttokens ==2.4.1
- async-lru ==2.0.4
- asyncio ==3.4.3
- attrs ==23.2.0
- babel ==2.14.0
- beautifulsoup4 ==4.12.3
- bleach ==6.1.0
- certifi ==2024.2.2
- cffi ==1.16.0
- charset-normalizer ==3.3.2
- click ==8.1.7
- colorlog ==6.8.2
- comm ==0.2.2
- contourpy ==1.2.1
- cycler ==0.12.1
- dataclasses ==0.6
- datasets ==2.19.2
- debugpy ==1.8.1
- decorator ==5.1.1
- defusedxml ==0.7.1
- dill ==0.3.8
- distro ==1.9.0
- et-xmlfile ==1.1.0
- eval-type-backport ==0.2.0
- executing ==2.0.1
- fastjsonschema ==2.19.1
- filelock ==3.14.0
- fonttools ==4.51.0
- fqdn ==1.5.1
- frozenlist ==1.4.1
- fsspec ==2024.3.1
- h11 ==0.14.0
- httpcore ==1.0.5
- httpx ==0.27.0
- huggingface-hub ==0.23.3
- idna ==3.7
- ipykernel ==6.29.4
- ipython ==8.23.0
- ipywidgets ==8.1.2
- isoduration ==20.11.0
- jedi ==0.19.1
- jinja2 ==3.1.3
- joblib ==1.4.2
- json5 ==0.9.25
- jsonpointer ==2.4
- jsonschema ==4.21.1
- jsonschema-specifications ==2023.12.1
- jupyter ==1.0.0
- jupyter-client ==8.6.1
- jupyter-console ==6.6.3
- jupyter-core ==5.7.2
- jupyter-events ==0.10.0
- jupyter-lsp ==2.2.5
- jupyter-server ==2.14.0
- jupyter-server-terminals ==0.5.3
- jupyterlab ==4.1.6
- jupyterlab-pygments ==0.3.0
- jupyterlab-server ==2.26.0
- jupyterlab-widgets ==3.0.10
- kiwisolver ==1.4.5
- lab ==8.1
- markdown-it-py ==3.0.0
- markupsafe ==2.1.5
- matplotlib ==3.8.4
- matplotlib-inline ==0.1.7
- mdurl ==0.1.2
- mistune ==3.0.2
- mpmath ==1.3.0
- multidict ==6.0.5
- multiprocess ==0.70.16
- nbclient ==0.10.0
- nbconvert ==7.16.3
- nbformat ==5.10.4
- nest-asyncio ==1.6.0
- networkx ==3.2.1
- nltk ==3.8.1
- notebook ==7.1.3
- notebook-shim ==0.2.4
- numpy ==1.26.4
- openai ==0.28.0
- openai-parallel-toolkit ==0.5.1
- openpyxl ==3.1.2
- overrides ==7.7.0
- packaging ==24.0
- pandas ==2.2.2
- pandocfilters ==1.5.1
- parso ==0.8.4
- pexpect ==4.9.0
- pillow ==10.3.0
- pip ==23.3.1
- platformdirs ==4.2.0
- prometheus-client ==0.20.0
- prompt-toolkit ==3.0.43
- protobuf ==5.27.2
- psutil ==5.9.8
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- pyarrow ==16.1.0
- pyarrow-hotfix ==0.6
- pycparser ==2.22
- pydantic ==2.7.0
- pydantic-core ==2.18.1
- pygments ==2.17.2
- pyparsing ==3.1.2
- python-dateutil ==2.9.0.post0
- python-json-logger ==2.0.7
- pytz ==2024.1
- pyyaml ==6.0.1
- pyzmq ==26.0.2
- qtconsole ==5.5.1
- qtpy ==2.4.1
- referencing ==0.34.0
- regex ==2024.4.28
- requests ==2.32.3
- rfc3339-validator ==0.1.4
- rfc3986-validator ==0.1.1
- rich ==13.7.1
- rpds-py ==0.18.0
- safetensors ==0.4.3
- send2trash ==1.8.3
- sentencepiece ==0.2.0
- setuptools ==68.2.2
- shellingham ==1.5.4
- simplejson ==3.19.2
- six ==1.16.0
- sniffio ==1.3.1
- soupsieve ==2.5
- stack-data ==0.6.3
- sympy ==1.12
- tabulate ==0.9.0
- terminado ==0.18.1
- tiktoken ==0.6.0
- tinycss2 ==1.2.1
- together ==1.2.0
- tokenizers ==0.19.1
- torch ==2.3.0
- tornado ==6.4
- tqdm ==4.66.2
- traitlets ==5.14.3
- transformers ==4.41.2
- txt2tags ==3.9
- typer ==0.12.3
- types-python-dateutil ==2.9.0.20240316
- typing-extensions ==4.11.0
- tzdata ==2024.1
- uri-template ==1.3.0
- urllib3 ==2.2.1
- wcwidth ==0.2.13
- webcolors ==1.13
- webencodings ==0.5.1
- websocket-client ==1.7.0
- wheel ==0.41.2
- widgetsnbextension ==4.0.10
- xxhash ==3.4.1
- yarl ==1.9.4
- mcp *
- scipy *
- mcp *
- requests *
- requests-cache *
- retry-requests *
- httpx >=0.28.1
- mcp [cli]>=1.6.0
- PyPDF2 >=3.0.0
- beautifulsoup4 >=4.12.0
- fastmcp *
- feedparser *
- httpx [socks]>=0.28.1
- lxml >=4.9.0
- mcp [cli]>=1.6.0
- requests *
- PyPDF2 >=3.0.0
- aiohttp ==3.12.15
- beautifulsoup4 >=4.11.0
- black >=23.11.0
- certifi *
- diskcache *
- fastapi >=0.95.0
- fastmcp *
- feedparser *
- httpx >=0.28.1
- huggingface-hub >=0.29.3
- isort >=5.12.0
- lxml >=4.9.0
- matplotlib *
- mcp >=1.0.0
- mcp >=1.9.0
- mypy >=1.7.1
- numpy *
- platformdirs *
- praw *
- psutil *
- pydantic >=2.10.6
- pytest >=7.4.3
- pytest-asyncio >=0.21.1
- python-dotenv >=1.0.0
- redditwarp *
- requests >=2.28.0
- requests-cache *
- rich >=14.0.0
- scipy *
- sympy *
- typer >=0.15.2
- uvicorn >=0.21.0
- wikipedia *
- matplotlib >=3.10.3
- mcp [cli]>=1.9.2
- numpy >=2.2.6
- pydantic *
- sympy >=1.14.0
- typing *
- fastmcp >=0.1.0
- flask *
- numpy *
- openmeteo-requests *
- pandas *
- requests >=2.28.0
- requests-cache *
- retry-requests *
- fastmcp >=2.5.0
- python-dotenv >=1.0.0
- requests >=2.28.0
- fastmcp >=2.3.0
- python-dotenv >=1.0.0
- requests >=2.31.0
- wikipedia-api >=0.8.0
- black >=23.0.0 development
- flake8 >=6.0.0 development
- mypy >=1.0.0 development
- pytest >=7.0.0 development
- pytest-cov >=4.0.0 development
- pytest-mock >=3.10.0 development
- fastmcp >=2.3.0
- python-dotenv >=1.0.0
- requests >=2.31.0
- wikipedia-api >=0.8.0