General-AgentBench (cxcscmu/General-AgentBench) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 325 tools. No publisher has claimed this listing.

C
Warning
74/100

General-AgentBench

Benchmark Test-Time Scaling of General LLM Agents

Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

cxcscmu

Source: github_code

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
🚨
Secret credentials may flow to a network call
4 flows detected: WEATHER_API_KEY, SMITHERY_API_KEY. We can’t prove the destination matches the brand the credential belongs to.
🚨
Reads files from sensitive locations
Touches: engine/.env
🔐
You'll be asked for 10 credentials: WEATHER_API_KEY, NASA_API_KEY, GEMINI_API_KEY, API_KEY, TAVILY_API_KEY, AZURE_OPENAI_API_KEY, OPENROUTER_API_KEY, AWS_SECRET_ACCESS_KEY, OPENAI_API_KEY, SMITHERY_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes294 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

findParks

Search for national parks based on state, name, activities, or other criteria

getParkDetails

Get detailed information about a specific national park

getAlerts

Get current alerts for national parks including closures, hazards, and important information

getVisitorCenters

Get information about visitor centers and their operating hours

getCampgrounds

Get information about available campgrounds and their amenities

getEvents

Find upcoming events at parks

getApiOverview
getApiOperation
resolve-library-id

Resolves a package/product name to a Context7-compatible library ID and returns a list of matching libraries. You MUST call this function before 'get-library-docs' to obtain a valid Context7-compatible library ID UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org

get-library-docs

Fetches up-to-date documentation for a library. You must call 'resolve-library-id' first to obtain the exact Context7-compatible library ID required to use this tool, UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org/project/version' in their query.

getNetworks

REQUIRED FIRST STEP: Get all supported blockchain networks. Always call this first to see available networks before using any network-specific functions. Returns network IDs like "ethereum", "solana", etc.

getNetworkDexes

Get available DEXes on a specific network. First call getNetworks to see valid network IDs.

getNetworkPools

PRIMARY POOL FUNCTION: Get top liquidity pools on a specific network. This is the MAIN way to get pool data - there is NO global pools function. Use this instead of any "getTopPools" or "getAllPools" concepts.

getDexPools

Get pools from a specific DEX on a network. First use getNetworks, then getNetworkDexes to find valid DEX IDs.

getPoolDetails

Get detailed information about a specific pool. Requires network ID from getNetworks and a pool address.

getTokenDetails

Get detailed information about a specific token on a network. First use getNetworks to get valid network IDs.

getTokenPools

Get liquidity pools containing a specific token on a network. Great for finding where a token is traded.

getPoolOHLCV

Get historical price data (OHLCV) for a pool - essential for price analysis, backtesting, and visualization. Requires network and pool address.

getPoolTransactions

Get recent transactions for a specific pool. Shows swaps, adds, removes. Requires network and pool address.

search

Search across ALL networks for tokens, pools, and DEXes by name, symbol, or address. Good starting point when you don't know the specific network.

getStats

Get high-level statistics about the DexPaprika ecosystem: total networks, DEXes, pools, and tokens available.

list_icons

Get a list of all available Hugeicons icons

search_icons

Search for icons by name or tags. Use commas to search for multiple icons (e.g. 'home, notification, settings')

get_platform_usage

Get platform-specific usage instructions for Hugeicons

add

Adds two numbers together

subtract

Subtracts the second number from the first number

multiply

Multiplies two numbers together

division

Divides the first number by the second number

sum

Adds any number of numbers together

mean

Calculates the arithmetic mean of a list of numbers

median

Calculates the median of a list of numbers

mode

Finds the most common number in a list of numbers

min

Finds the minimum value from a list of numbers

max

Finds the maximum value from a list of numbers

floor

Rounds a number down to the nearest integer

ceiling

Rounds a number up to the nearest integer

round

Rounds a number to the nearest integer

get_price

Get latest price for an OKX instrument

get_candlesticks

Get candlestick data for an OKX instrument

get-museum-object

Get a museum object by its ID, from the Metropolitan Museum of Art Collection

list-departments

List all departments in the Metropolitan Museum of Art (Met Museum)

search-museum-objects
get_car_brands

Get all available car brands from FIPE API. Returns: List of car brands with their codes and names

search_car_price

Search for car models and prices by brand name. Args: brand_name: The car brand name to search for (e.g., "Toyota", "Honda", "Ford") Returns: Car models with current market prices from FIPE database

get_vehicles_by_type

Get vehicles by type (cars, motorcycles, trucks). Args: vehicle_type: Type of vehicles to fetch ("carros"/"cars", "motos"/"motorcycles", "caminhoes"/"trucks") Returns: List of vehicle brands for the specified type

get_fruit_nutrition

Get nutritional information and details for a given fruit name.

get_steam_trending_games

Get real trending games from Steam platform with live data from multiple sources.

get_steam_top_sellers

Get real top selling games from Steam platform with live sales data.

get_steam_most_played

Get real-time most played games from Steam with live player statistics from SteamCharts.

get_epic_free_games

Get current and upcoming free games from Epic Games Store with real promotion data.

get_epic_trending_games

Get trending games from Epic Games Store.

get_all_trending_games

Get comprehensive real-time gaming data from all platforms (Steam and Epic Games).

get_api_health

Check the health status of the Gaming Trend Analytics API.

execute_bash

Execute a bash command in the terminal within a persistent shell session. ### Command Execution * One command at a time: You can only execute one bash command at a time. If you need to run multiple commands sequentially, use `&&` or `;` to chain them together. * Persistent session: Commands execute

str_replace_editor

Custom editing tool for viewing, creating and editing files in plain-text format. Commands: * `view`: View a file or directory. If `path` is a file, displays with line numbers. If `path` is a directory, lists non-hidden files up to 2 levels deep. Use `view_range` to specify a line range (e.g., [1, 1

execute_ipython_cell

Run a cell of Python code in an IPython environment. * Define variables and import packages before using them. * Variables defined in IPython are not available outside (e.g., in terminal). * Supports magic commands like %pip. Args: code: The Python code to execute. Supports magic commands. security_

browser

Interact with the browser using Python code. Use it ONLY when you need to interact with a webpage. Available functions: - goto(url: str): Navigate to a URL - go_back(): Navigate back in history - go_forward(): Navigate forward in history - click(bid: str): Click on an element by bid - fill(bid: str,

think

Use this tool to think about something. It will not obtain new information or make any changes to the repository, but just log the thought. Use it when complex reasoning or brainstorming is needed. Common use cases: 1. Exploring a repository and discovering the source of a bug 2. After receiving tes

finish

Signals the completion of the current task or conversation. Use this tool when: - You have successfully completed the user's requested task - You cannot proceed further due to technical limitations or missing information The message should include: - A clear summary of actions taken and their result

send_keystrokes

Send keystrokes to the terminal and wait for the result. This is the primary interaction method for terminal-based tasks. The text inside "keystrokes" will be used completely verbatim as keystrokes. Command Guidelines: - Most bash commands should end with a newline (\\n) to cause them to execute - F

get_terminal_state

Get the current state of the terminal. Returns the visible content of the terminal screen. Use this to check the current state before deciding on the next action. Returns: The current terminal screen content.

wait_for_output

Wait for terminal output without sending any keystrokes. Use this when waiting for a long-running command to complete or waiting for specific output to appear. Args: duration: Number of seconds to wait before returning. Default is 5.0 seconds. pattern: Optional pattern to watch for. Returns early if

mark_task_complete

Mark the current task as complete. This will trigger the solution to be graded and you won't be able to make any further corrections. The first call will ask for confirmation. Call again with confirmed=True to actually mark the task as complete. Args: confirmed: Set to True to confirm task completio

analyze_task

Log your analysis of the current state and plan for next steps. Use this to structure your thinking before executing commands. This is similar to the analysis and plan fields in the Terminus agent. Args: analysis: Your analysis of the current state based on terminal output. What do you see? What has

get_current_weather_tool

Get current weather information for a specific city.

get_weather_forecast_tool

Get weather forecast for a specific city.

search_locations_tool

Search for locations by name.

get_live_temp

Legacy tool: Get current temperature for a city (for backward compatibility). Use get_current_weather_tool for more detailed information.

get_events

Search for conferences matching specific keywords.

nixos_search

Search NixOS packages, options, or programs.

nixos_info

Get detailed info about a NixOS package or option.

nixos_channels

List available NixOS channels with their status.

nixos_stats

Get NixOS statistics for a channel.

home_manager_search

Search Home Manager configuration options.

home_manager_info

Get detailed information about a specific Home Manager option.

home_manager_stats

Get statistics about Home Manager options.

home_manager_list_options

List all Home Manager option categories.

home_manager_options_by_prefix

Get Home Manager options matching a specific prefix.

darwin_search

Search nix-darwin (macOS) configuration options.

darwin_info

Get detailed information about a specific nix-darwin option.

darwin_stats

Get statistics about nix-darwin options.

darwin_list_options

List all nix-darwin option categories.

darwin_options_by_prefix

Get nix-darwin options matching a specific prefix.

nixos_flakes_stats

Get statistics about available NixOS flakes.

nixos_flakes_search

Search NixOS flakes by name, description, owner, or repository.

nixhub_package_versions

Get version history and nixpkgs commit hashes for a specific package from NixHub.io.

nixhub_find_version

Find a specific version of a package in NixHub with smart search.

get_movies

Get movie suggestions based on keyword.

search_arxiv

Search academic papers from arXiv.

search_pubmed

Search academic papers from PubMed.

search_biorxiv

Search academic papers from bioRxiv.

search_medrxiv

Search academic papers from medRxiv.

search_google_scholar

Search academic papers from Google Scholar.

search_iacr

Search academic papers from IACR ePrint Archive.

download_arxiv

Download PDF of an arXiv paper.

download_pubmed

Attempt to download PDF of a PubMed paper.

download_biorxiv

Download PDF of a bioRxiv paper.

download_medrxiv

Download PDF of a medRxiv paper.

download_iacr

Download PDF of an IACR ePrint paper.

read_arxiv_paper

Read and extract text content from an arXiv paper PDF.

194 further tools are not listed here. The complete surface is in the source.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
🔐 secretWEATHER_API_KEY
configAPI_TIMEOUT
configAPI_LANGUAGE
configT_BENCH_TASK_CONTAINER_NAME
🔐 secretNASA_API_KEY
🔐 secretGEMINI_API_KEY
configGOOGLE_CLOUD_REGION
configFASTAPI_ROOT_PATH
🔐 secretAPI_KEY
configAPI_MODEL_NAME
configAPI_HOST
configAPI_PORT
configENABLE_MCP_SEARCH_ENGINE
🔐 secretTAVILY_API_KEY
configWEB_HOST
configAZURE_OPENAI_ENDPOINT
🔐 secretAZURE_OPENAI_API_KEY
🔐 secretOPENROUTER_API_KEY
configAWS_ACCESS_KEY_ID
🔐 secretAWS_SECRET_ACCESS_KEY
configAWS_REGION_NAME
🔐 secretOPENAI_API_KEY
🔐 secretSMITHERY_API_KEY
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployport
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

326/326 tools missing one or more hints — findParks (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); getParkDetails (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); getAlerts (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +323 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool inputs are validated

293/295 tool handlers declare input schemas (99%)

Declare an inputSchema with zod/joi/yup on every tool definition.

Tool test coverage

123/326 tools referenced in tests (38%)

Write tests that reference each tool by name so every tool has at least one test.

No access to sensitive paths

Reads sensitive paths: engine/.env

Remove reads of sensitive system paths. If you genuinely need them, document why in the README.

Shell command execution

6 calls in production code run through a shell (benchmarks/terminal-bench/tasks/protocol-analysis-rs/start.ts:16, benchmarks/terminal-bench/tasks/protocol-analysis-rs/start.ts:23, benchmarks/terminal-bench/tasks/protocol-analysis-rs/start.ts:82)

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Secrets not logged

2 secret values sent to print/logger.warning

Redact or omit secret values from log output.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 7 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/cxcscmu/general-agentbench?variant=verified)](https://m8ven.ai/mcp/cxcscmu/general-agentbench)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 35f5c027c31ddcb3366b28674c6cb2957460c0e2
code hash: 4d53de75c2330ac300eda126aa1de7e41ef43cd7d8bfa8eafc580866f589947d
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client