AOPX
Server Details
Selects between supported SEARCH providers for ECONOMY or CRITICAL mode.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
The tools are mostly distinct: public_outcomes exposes latest individual results, public_stats exposes aggregate figures, and recommend_provider/report_outcome form a clear action/feedback pair. The only mild ambiguity is between public_outcomes and public_stats, but their descriptions separate events from aggregates well.
The names use a readable snake_case style, but the convention is mixed: public_outcomes and public_stats are noun-like public data endpoints, while recommend_provider and report_outcome are verb_noun actions. This split is logical but not a single consistent verb_noun pattern across all tools.
Four tools is well-scoped for a narrow recommendation-and-outcome service. Each tool serves a distinct role in the public reporting and recommendation lifecycle, with no obvious redundancy or bloat.
The core workflow is covered: recommend a provider, execute outside AOPX, then report the real outcome, with public results and statistics available for transparency. Minor gaps exist, such as no way to fetch a specific past recommendation by ID, but agents can operate effectively within the stated scope.
Available Tools
4 toolspublic_outcomesBInspect
Return the latest reported production outcomes for AOPX. Provider identities are exposed only through public aliases.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does reveal that provider identities are exposed only through public aliases, which is a meaningful privacy trait. However, it does not mention whether the operation is read-only, whether authentication is required, or any rate limits. For a simple read operation, this is partial but not comprehensive transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with the purpose front-loaded in the first sentence. The second sentence adds a concise privacy note. There is no redundant or vague language; every word contributes value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one optional parameter and an output schema. The description covers the main purpose and a key privacy detail. It omits any mention of ordering or pagination, but given the existence of an output schema and the simplicity of the tool, this is not a critical gap. The description is nearly complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description makes no reference to the 'limit' parameter. Since schema description coverage is 0%, the description should have compensated by explaining the parameter's meaning, but it does not. The agent is left with only the schema's bare type and default, which is insufficient given the lack of any parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Return') and a precise resource ('latest reported production outcomes for AOPX'), which clearly distinguishes it from siblings like public_stats and report_outcome. It also adds a distinctive note about provider aliases, further clarifying what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no explicit guidance on when to use this tool versus alternatives. It does not mention conditions, exclusions, or reference any sibling tool, leaving the agent to infer the appropriate context solely from the purpose statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
public_statsAInspect
Return aggregate AOPX production consultation/outcome statistics. LAB benchmarks, tests, shadow runs and replay events are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral burden. It adds meaningful context by specifying that LAB benchmarks, tests, shadow runs, and replay events are excluded, making clear the tool returns only production aggregate data. Given the output schema exists, the lack of return-format details is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with the main purpose front-loaded and the data-scope exclusions clearly stated. No filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a parameterless, read-only statistics tool with an output schema available, so the description only needs to convey what data is included and excluded, which it does. The exclusion sentence adds essential scope context, making the definition complete for successful invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is empty with 100% coverage. There is nothing for the description to add regarding parameter meanings, so the baseline 4 for no-parameter tools applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Return') and identifies the exact resource: aggregate AOPX production consultation/outcome statistics. It clearly distinguishes itself from siblings like public_outcomes and report_outcome by emphasizing aggregate stats rather than individual outcomes or reporting actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool by saying it returns production statistics and excluding non-production data, but it does not explicitly mention alternatives or provide when-not-to-use guidance. An agent can infer usage context, but the routing is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend_providerAInspect
Return a provider recommendation for the SEARCH category. Supported modes are ECONOMY and CRITICAL. AOPX only recommends; it does not execute or pay the provider. After executing the returned provider path, call report_outcome with the same recommendation_id so the real production result can feed future evidence-based recommendations.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | ||
| client_id | No | ||
| max_cost_eur | No | ||
| max_latency_ms | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explicitly states 'AOPX only recommends; it does not execute or pay the provider', which is a critical non-execution trait that prevents misuse. It also discloses the necessity of a follow-up call to feed future recommendations, giving the agent a clear sense of the tool's side effects and lifecycle. While it doesn't cover permissions or rate limits, the core non-mutating behavior is clearly surfaced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the primary purpose, then states the key behavioral caveat, and finishes with the required follow-up. Every sentence adds essential information with no redundancy, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters and no annotations, the description covers the core purpose, modes, and a critical post-execution step, which is useful. However, it fails to describe the purpose of the three optional parameters, and while an output schema exists, it does not mention any return details other than the recommendation_id indirectly. This leaves the agent guessing about parameter meanings and the structure of the recommendation result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for unexplained parameters. It does explain the required 'mode' enum (ECONOMY and CRITICAL), but it completely omits the optional parameters client_id, max_cost_eur, and max_latency_ms, leaving their semantics unknown to the agent. This is a significant gap for a moderately complex tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'returns a provider recommendation' for a specific 'SEARCH category', which is a concrete verb+resource combination. It also distinguishes itself from sibling tools like report_outcome, public_outcomes, and public_stats, which are about outcome reporting or statistics, not recommendation generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool (to obtain a provider recommendation in ECONOMY or CRITICAL mode) and gives an explicit follow-up instruction to call report_outcome with the recommendation_id. It does not explicitly state when not to use it or name alternatives, but the workflow directive is strong enough to guide correct usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_outcomeAInspect
Report the real production result of a previous AOPX recommendation. Call this after executing the provider path returned by recommend_provider. The recommendation_id must exist, only one outcome is accepted per recommendation, and the reported provider attempts must match the recommended primary/fallback path.
| Name | Required | Description | Default |
|---|---|---|---|
| attempts | Yes | ||
| recommendation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the behavioral disclosure burden. It adds key operational constraints not visible in the schema: a recommendation accepts only one outcome, and attempts must match the recommended primary/fallback path. It does not detail side effects, authentication, or failure semantics, but the core write-once behavior is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler, front-loaded with purpose and call context. The constraints (id existence, single outcome, path match) are packed into the final sentence without repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with an output schema, the description provides the essential usage context: when to call, what to validate, and what shape the attempts must take. It misses an explicit statement about whether the report is a permanent write and any error/conflict behavior, but the information needed to invoke it correctly is largely present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must add parameter meaning. It gives useful constraints for recommendation_id (must exist, one outcome only) and for attempts (must match the recommended path), but it does not explain the individual ProviderAttempt fields such as cost_eur, error_type, latency_ms, or quality_score. This is an adequate but incomplete compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description opens with a specific verb and resource: reporting the real production result of a previous AOPX recommendation. It also orients the agent by tying the call to recommend_provider's returned route, which separates it from the read-only siblings public_outcomes and public_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger: call after executing the provider path returned by recommend_provider. It also sets preconditions (recommendation_id must exist, single outcome per recommendation, attempts must match the path). It does not enumerate when-not-to-use cases or alternative tools, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
public_outcomes - First observed
public_stats - First observed
recommend_provider - First observed
report_outcome
Related MCP Connectors
Multi-engine search for AI agents. Trust scoring, local corpus, MCP-native. Self-hostable, BYOK.
Web search for AI agents — one tool across 6 engines, routed to the cheapest + cached.
Search and compare MCP servers, agent tools, and skills using current maintenance signals.
Search the agentic web. 4,100+ sites, 11 tools incl. check_url + verify_mcp for probe-before-use.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI clients to perform unified web searches across multiple search providers with automatic key rotation, failover, and circuit breaking, and to inspect provider status and capabilities.MIT
- AlicenseNot gradedqualityCmaintenanceReplaces DSH's built-in web_search with pluggable MCP search backends such as Tavily, Brave, Exa, Perplexity, DuckDuckGo, or custom HTTP/stdio servers. Users configure providers in the settings UI with secure credential references, while the model keeps calling the native web_search tool.MIT
- AlicenseBqualityAmaintenanceOne endpoint, five search providers. Search broker for AI agents with automatic fallback, RRF ranking, and budget enforcement. The LiteLLM of web search.1397 PyPI5MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web search, extraction, and research across multiple provider backends with persistent multi-key rotation and auditable routing. Supports MCP, CLI, and Agent Skill entry points.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.