Agent Traffic Lab
Server Details
Execute supported agent tasks through verified providers with fallback and durable outcomes.
- Status
- Healthy
- Uptime
- 99.6% over 77 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- wenhua6666668-oss/agent-traffic-lab-mcp
- GitHub Stars
- 1
- Server Listing
- Agent Traffic Lab
TDQS
Scored across 1 tool
With only one tool in the set, there is no possibility of confusing it with another tool. Its purpose—completing an authorized external task—is clearly stated.
The single tool uses a clear, consistent snake_case pattern with a domain prefix (atl_complete_task). No mixed conventions are present.
A single tool is expected to handle search, extraction, summary, translation, classification, fallback, validation, and outcome recording. This is far too much for one operation and suggests a severely under-scoped surface for the server’s apparent domain.
The description explicitly refers to a separate atl_decide tool for routing evidence, but that tool is absent. There is also no way to inspect providers, outcomes, or execution history, leaving significant gaps for an agent traffic/routing lab.
Available Tools
1 toolatl_complete_taskAInspect
Execute a user-authorized external search, public web/content extraction, summary, translation, or classification task. ATL selects an eligible verified provider or tool, performs the supported task where supply is available, may use bounded fallback on eligible failures, validates the result, and records execution Outcome. Routine use: this operation is suited to user-authorized external information tasks that need a completed result rather than routing evidence, even if no prior provider has failed. Rescue use: it can retry the original authorized task when a prior provider fails, times out, is rate-limited, is unavailable, or returns an invalid result. For routing evidence without execution, use the separate atl_decide tool. Do not duplicate work already completed, override a user-specified provider or tool, or infer authorization for private inputs. The task must be user-authorized; do not submit private or local-only information without permission. Supported capabilities and provider availability are limited, so completion is not guaranteed. No ATL API key is required for the public first-use path.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | The natural-language task to complete. Include the goal and any relevant input, constraints, or desired output. | |
| required_capability | No | Optional capability hint. Omit unless the caller already knows the required capability; ATL normally derives a structured TaskSpec from the task. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | True only when execution succeeded and ATL's task-level result verifier accepted the result. |
| stage | Yes | The furthest ATL product stage reached for this call. |
| result | Yes | The provider's task result. When ok=false, inspect result_validation before trusting it. |
| decision | Yes | ATL Decision evidence retained for advanced/debug consumers. |
| execution | Yes | ATL execution evidence retained for advanced/debug consumers; null when execution did not start. |
| capability | Yes | The supported capability selected or inferred for the task; empty if unavailable. |
| fallback_used | Yes | Whether bounded fallback/failover was used during execution. |
| execution_status | Yes | Provider execution status; EXECUTED alone does not imply task correctness. |
| result_validation | Yes | ATL task-level correctness checks. passed must be true before the result is treated as product success. |
| discovery_resume_used | No | True when ATL synchronously ran bounded discovery/promotion and retried the same task. |
| discovery_resume_status | No | Outcome of the same-call discovery resume attempt when used. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, openWorldHint=true), it discloses meaningful runtime behavior: provider selection, bounded fallback on eligible failures, result validation, Outcome recording, no completion guarantee, and no API key needed for the public path. Authorization and privacy constraints are also stated, which the annotations do not cover.
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?
Front-loaded with the core purpose and well-organized via 'Routine use'/'Rescue use' framing. However, the authorization warning is stated twice ('do not infer authorization for private inputs' and 'The task must be user-authorized; do not submit private or local-only information'), which is mild redundancy in an already long block.
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?
Given an output schema exists, return values need not be described. The description covers authorization prerequisites, failure/fallback semantics, provider-selection behavior, exclusions, and the sibling boundary, leaving nothing an agent needs in order to invoke it correctly.
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 100% with only two parameters, both fully documented, so the schema already carries the semantic load. The description adds only indirect context (that ATL derives a TaskSpec and that the capability hint is normally omitted), which is marginal beyond the schema. Baseline 3 is appropriate.
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?
Opens with a specific verb (Execute) and enumerates the concrete task types it covers (external search, extraction, summary, translation, classification), so the agent knows exactly what class of work this performs. It also explicitly names the sibling boundary ('For routing evidence without execution, use the separate atl_decide tool'), so the tool is distinguishable without opening either schema.
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?
Provides labeled 'Routine use' and 'Rescue use' scenarios, states the exact failure conditions that trigger the rescue path (fails, times out, is rate-limited, unavailable, invalid result), and names the alternative tool plus the condition selecting it. It also lists exclusions: don't duplicate completed work, don't override a user-specified provider, don't infer authorization.
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.
3 tool updates
- Removed
atl_decide - Removed
atl_execute - Removed
atl_outcome
1 tool update
- Changed
atl_decide1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "alternatives": { + "description": "Bounded alternate eligible routes, if any.", + "type": "array" + }, + "capability_evidence": { + "description": "Evidence that the selected route supports the required capability.", + "type": [ + "object", + "null" + ] + }, + "correlation_id": { + "description": "ATL correlation identifier associated with this Decision.", + "type": "string" + }, + "decision_id": { + "description": "Decision reference to pass unchanged to atl_execute when ok=true.", + "type": [ + "string", + "null" + ] + }, + "decision_status": { + "description": "Decision state such as DECISION_OK or NO_EXECUTABLE_PROVIDER.", + "type": "string" + }, + "error_code": { + "description": "Structured routing/rejection code when ok=false.", + "type": [ + "string", + "null" + ] + }, + "executable_handoff": { + "description": "Verified provider/tool handoff evidence for the selected route when available.", + "type": [ + "object", + "null" + ] + }, + "expires_at_ms": { + "description": "Decision expiration timestamp in Unix milliseconds when available.", + "type": [ + "integer", + "null" + ] + }, + "feedback_state": { + "description": "Whether prior provider feedback/reputation evidence was available or used.", + "type": "object" + }, + "message": { + "description": "Routing detail or rejection explanation.", + "type": [ + "string", + "null" + ] + }, + "next_step": { + "description": "Machine-readable atl_execute handoff added when the Decision is executable.", + "type": [ + "object", + "null" + ] + }, + "ok": { + "description": "True when ATL produced a valid executable Decision.", + "type": "boolean" + }, + "outcome": { + "description": "Outcome correlation handoff containing the exact token bound to this Decision.", + "type": [ + "object", + "null" + ] + }, + "reason_codes": { + "description": "Bounded routing reason codes supporting the Decision.", + "type": "array" + }, + "request_id": { + "description": "ATL request identifier associated with this Decision.", + "type": "string" + }, + "route": { + "description": "Machine-readable routing handoff evidence.", + "type": "object" + }, + "routing_boundary_evidence": { + "description": "Routing-boundary diagnostics when available.", + "type": [ + "object", + "null" + ] + }, + "selected": { + "description": "Selected provider/service/capability summary when an executable route exists.", + "type": [ + "object", + "null" + ] + }, + "status_code": { + "description": "ATL Decision status code for this routing request.", + "type": "integer" + } + }, + "required": [ + "ok", + "status_code", + "decision_status" + ], + "type": "object" +}
2 tool updates
- Changed
atl_execute1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "adapter": { + "description": "Provider adapter used for the execution.", + "type": "string" + }, + "attempts": { + "description": "Ordered provider-attempt evidence, including bounded fallback attempts.", + "type": "array" + }, + "authorization_id": { + "description": "Execution authorization identifier validated by ATL.", + "type": "string" + }, + "billing_mode": { + "description": "Verified billing mode when known.", + "type": [ + "string", + "null" + ] + }, + "capability_id": { + "description": "Capability executed by the selected provider.", + "type": [ + "string", + "null" + ] + }, + "correlation_id": { + "description": "ATL correlation identifier associated with the Decision.", + "type": "string" + }, + "credential_source": { + "description": "Credential provenance used for provider execution when applicable.", + "type": [ + "string", + "null" + ] + }, + "decision_reference": { + "description": "ATL Decision reference that authorized this execution.", + "type": "string" + }, + "error_code": { + "description": "Structured rejection/failure code when ok=false.", + "type": "string" + }, + "execution_deadline_exhausted": { + "description": "Whether the global bounded execution deadline was exhausted.", + "type": "boolean" + }, + "execution_status": { + "description": "EXECUTED on provider success; FAILED when execution completed unsuccessfully.", + "type": "string" + }, + "failover_used": { + "description": "Whether more than one provider was attempted.", + "type": "boolean" + }, + "message": { + "description": "Structured rejection/failure explanation when ok=false.", + "type": "string" + }, + "observed_cost": { + "description": "Observed execution cost when verified; null when unknown.", + "type": [ + "number", + "null" + ] + }, + "observed_latency_ms": { + "description": "Observed provider execution latency in milliseconds.", + "type": [ + "number", + "null" + ] + }, + "ok": { + "description": "True only when the Decision-authorized execution reached EXECUTED.", + "type": "boolean" + }, + "output_text": { + "description": "Validated provider output text.", + "type": "string" + }, + "output_truncated": { + "description": "Whether ATL bounded/truncated the provider output.", + "type": "boolean" + }, + "provider_id": { + "description": "Provider that produced the final execution attempt.", + "type": [ + "string", + "null" + ] + }, + "reason_code": { + "description": "Validation or execution reason code; empty when no reason is needed.", + "type": "string" + }, + "request_id": { + "description": "ATL request identifier associated with the Decision.", + "type": "string" + }, + "response_contract_valid": { + "description": "Whether the provider response passed ATL's execution response contract validation.", + "type": "boolean" + }, + "service_id": { + "description": "Selected provider service identifier.", + "type": [ + "string", + "null" + ] + }, + "usage": { + "description": "Provider usage evidence when available.", + "type": "object" + } + }, + "required": [ + "ok" + ], + "type": "object" +}
- Changed
atl_outcome1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "accepted": { + "description": "Whether ATL accepted the evidence as a new Outcome.", + "type": [ + "boolean", + "null" + ] + }, + "attempt_count": { + "description": "Number of observed execution attempts when available.", + "type": [ + "integer", + "null" + ] + }, + "attribution_summary": { + "description": "Provider/outcome attribution evidence when available.", + "type": [ + "object", + "null" + ] + }, + "correlation_id": { + "description": "Correlation identifier associated with the reported Decision.", + "type": "string" + }, + "duplicate": { + "description": "Whether this report was safely deduplicated against existing Outcome evidence.", + "type": [ + "boolean", + "null" + ] + }, + "error_code": { + "description": "Structured rejection code when the report was not accepted.", + "type": [ + "string", + "null" + ] + }, + "feedback_status": { + "description": "Feedback processing status when available.", + "type": [ + "string", + "null" + ] + }, + "final_provider_id": { + "description": "Provider attributed to the final observed execution.", + "type": [ + "string", + "null" + ] + }, + "message": { + "description": "Outcome ingestion detail or rejection explanation.", + "type": [ + "string", + "null" + ] + }, + "next_attempt_plan": { + "description": "Bounded next-attempt guidance when returned by the Outcome pipeline.", + "type": [ + "object", + "null" + ] + }, + "ok": { + "description": "True when the Outcome was accepted or recognized as a duplicate of an accepted report.", + "type": "boolean" + }, + "request_id": { + "description": "Request identifier associated with the reported Decision.", + "type": "string" + }, + "status_code": { + "description": "ATL Outcome ingestion status code.", + "type": "integer" + } + }, + "required": [ + "ok", + "status_code" + ], + "type": "object" +}
1 tool update
- Changed
atl_complete_task2 fields changed- added
Output schema / properties / discovery_resume_statusAdded value: +{ + "description": "Outcome of the same-call discovery resume attempt when used.", + "type": "string" +} - added
Output schema / properties / discovery_resume_usedAdded value: +{ + "description": "True when ATL synchronously ran bounded discovery/promotion and retried the same task.", + "type": "boolean" +}
2 tool updates
- Changed
atl_complete_task7 fields changed- changed
Input schema / properties / required_capability / descriptionPrevious value: -"Optional capability hint. Omit unless the caller already knows the required capability; ATL normally infers it from the task."New value: +"Optional capability hint. Omit unless the caller already knows the required capability; ATL normally derives a structured TaskSpec from the task." - changed
Output schema / properties / execution_status / descriptionPrevious value: -"ATL execution status; empty when execution did not start."New value: +"Provider execution status; EXECUTED alone does not imply task correctness." - changed
Output schema / properties / ok / descriptionPrevious value: -"True only when ATL completed execution successfully."New value: +"True only when execution succeeded and ATL's task-level result verifier accepted the result." - changed
Output schema / properties / result / descriptionPrevious value: -"The provider's useful task result. Empty when execution did not produce a usable result."New value: +"The provider's task result. When ok=false, inspect result_validation before trusting it." - added
Output schema / properties / result_validationAdded value: +{ + "description": "ATL task-level correctness checks. passed must be true before the result is treated as product success.", + "type": [ + "object", + "null" + ] +} - changed
Output schema / properties / stage / descriptionPrevious value: -"The furthest ATL stage reached for this call."New value: +"The furthest ATL product stage reached for this call." - changed
Output schema / requiredPrevious value: -[ - "ok", - "stage", - "capability", - "execution_status", - "fallback_used", - "result", - "decision", - "execution" -]New value: +[ + "ok", + "stage", + "capability", + "execution_status", + "fallback_used", + "result", + "decision", + "execution", + "result_validation" +]
- Changed
atl_decide1 field changed- changed
Input schema / properties / required_capability / descriptionPrevious value: -"The capability required for the task. Provide it when known; otherwise let ATL infer it where supported."New value: +"Optional capability hint. ATL's Task Intelligence layer normally derives the capability and semantic constraints from the task."
1 tool update
- Changed
atl_complete_task5 fields changed- changed
Output schema / properties / decision / descriptionPrevious value: -"The ATL Decision evidence used for execution."New value: +"ATL Decision evidence retained for advanced/debug consumers." - changed
Output schema / properties / execution / descriptionPrevious value: -"The ATL execution result; null when execution did not start."New value: +"ATL execution evidence retained for advanced/debug consumers; null when execution did not start." - changed
Output schema / properties / ok / descriptionPrevious value: -"True when ATL completed execution successfully."New value: +"True only when ATL completed execution successfully." - added
Output schema / properties / resultAdded value: +{ + "description": "The provider's useful task result. Empty when execution did not produce a usable result.", + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "ok", - "stage", - "capability", - "execution_status", - "fallback_used", - "decision", - "execution" -]New value: +[ + "ok", + "stage", + "capability", + "execution_status", + "fallback_used", + "result", + "decision", + "execution" +]
4 tool updates
- Changed
atl_complete_task2 fields changed- changed
Input schema / properties / required_capability / descriptionPrevious value: -"Optional. Omit when ATL can infer the capability from the task."New value: +"Optional capability hint. Omit unless the caller already knows the required capability; ATL normally infers it from the task." - changed
Input schema / properties / task / descriptionPrevious value: -"The user's natural-language task. ATL should normally own the full decision-to-execution flow."New value: +"The natural-language task to complete. Include the goal and any relevant input, constraints, or desired output."
- Changed
atl_decide3 fields changed- changed
Input schema / properties / constraints / descriptionPrevious value: -"Optional hard requirements the selected provider must meet."New value: +"Optional routing constraints that ATL should honor when selecting an eligible provider or tool." - changed
Input schema / properties / required_capability / descriptionPrevious value: -"Capability the selected provider must support."New value: +"The capability required for the task. Provide it when known; otherwise let ATL infer it where supported." - changed
Input schema / properties / task / descriptionPrevious value: -"Natural-language task. ATL infers the required capability when possible."New value: +"The natural-language task or routing goal. Include relevant input, constraints, and desired output."
- Changed
atl_execute3 fields changed- changed
Input schema / properties / decision_reference / descriptionPrevious value: -"ATL decision ID returned by the prior atl_decide call."New value: +"Exact Decision reference returned by ATL. Copy it from atl_decide or next_step; never invent or modify it." - changed
Input schema / properties / input / descriptionPrevious value: -"Task input to send to the ATL-selected provider."New value: +"The task input to execute with the provider/tool selected by the referenced ATL Decision." - changed
Input schema / properties / outcome_correlation_token / descriptionPrevious value: -"ATL token returned with the prior decision to authorize this execution."New value: +"Exact Outcome correlation token returned with the ATL Decision. Copy it unchanged; never invent or modify it."
- Changed
atl_outcome7 fields changed- changed
Input schema / properties / correlation_id / descriptionPrevious value: -"Caller correlation ID linking this result to related work."New value: +"Correlation identifier associated with the original ATL Decision. Reuse the original value when required by the schema." - changed
Input schema / properties / decision_reference / descriptionPrevious value: -"ATL decision ID returned by the prior atl_decide call."New value: +"Exact Decision reference returned by ATL. Copy it from atl_decide or next_step; never invent or modify it." - changed
Input schema / properties / observed_cost / descriptionPrevious value: -"Observed provider execution cost."New value: +"Observed execution cost when known; omit when unavailable unless required by the schema." - changed
Input schema / properties / outcome_correlation_token / descriptionPrevious value: -"ATL token returned with the prior decision to authorize this outcome link."New value: +"Exact Outcome correlation token returned with the ATL Decision. Copy it unchanged; never invent or modify it." - changed
Input schema / properties / outcome_status / descriptionPrevious value: -"Final real-world execution result, such as SUCCESS or FAILURE."New value: +"Observed outcome status for the referenced Decision/execution, such as success or failure, using the schema's allowed value when constrained." - changed
Input schema / properties / provider_id / descriptionPrevious value: -"Provider selected by ATL for the prior decision."New value: +"Provider identifier associated with the observed execution. Do not use this field to override ATL's selected provider." - changed
Input schema / properties / request_id / descriptionPrevious value: -"Caller request ID associated with the prior ATL decision."New value: +"Request identifier associated with the original ATL Decision. Reuse the original value when required by the schema."
Publisher details
- Operator
- Agent Traffic Lab · Publisher source
- Operator website
- https://agenttrafficlab.com · Publisher source
- Vendor relationship
- First-party · Publisher source
- Documentation
- https://agenttrafficlab.com/install · Publisher source
- Trust center
- Not available
- Restrictions
- No paid plan, admin approval, or custom OAuth app is required for the initial public-use path. ATL can be connected directly through the public MCP endpoint. · Publisher source
Related MCP Connectors
Agent routing, safety preflight, execution receipts, best execution and verified outcomes.
Outcome-first agent fallback: free discovery, minimal routing, declared costs, verified execution.
Reliable async execution for agent tool calls: schema gating, retries, idempotency, audit trail.
Scoped agent execution. Server-side credentials, policy, budgets and verifiable receipts.
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables orchestrating external AI agents to execute development tasks with asynchronous management, automated acceptance verification, failure rework loops, and optional visual baseline validation.1114 npmApache 2.0
- AlicenseAqualityBmaintenanceReliable async execution for agent tool calls: schema-gate hallucinated payloads before they run, absorb rate limits and outages with retries and circuit breakers, and add idempotency, human approval gates, encrypted credentials, and signed-webhook results. Failed calls return an llm_hint the agent can self-correct from.632 npmMIT
- -licenseNot gradedqualityBmaintenanceActs as a local execution layer for external agents, enabling them to research OfferUp markets, manage and verify listings, send messages, run watches, handle seller-operator cases, and record handoffs through idempotent, verified tool calls.-
- AlicenseNot gradedqualityDmaintenanceEnables agents to post bounty-backed tasks, browse and inspect a public task board, and pay to execute jobs such as page fetching, link checking, change detection, and claim verification. Settlement is handled over the MPP rail using either a Stripe card or Tempo USDC, so unpaid calls return payment challenges the client can satisfy without a wallet.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.