Skip to main content
Glama

Get a surface's results

surface_results
Read-only

How a surface's test is doing: per variant, its sessions, sessions that reached the goal, conversion rate (rate_per_session) and win_probability — the bandit's estimated chance that variant is best. termination.should_terminate is the bandit's own signal that the test has a clear winner. Also all-time traffic per event. Results are recomputed hourly; before the first run, variants is empty and note says why. For sessions per day, use surface_traffic. Link the user to dashboard_url for charts.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "surface_id": "<surface_id>"
    },
    "name": "surface_results"
  }
}

Input Schema

NameRequiredDescriptionDefault
surface_idYesThe surface id, from surface_list.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / surface_id / description
      Previous value: -"The surface id."New value: +"The surface id, from surface_list."
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only annotations, it discloses staleness (results recomputed hourly), the empty-state behavior before the first run (variants empty plus an explanatory note), and the meaning of termination.should_terminate. What remains unsaid is pagination/limits or permission requirements, which is minor for a read-only report.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The result fields are front-loaded and each sentence carries information — metric list, empty-state caveat, recalculation cadence, sibling routing, dashboard hint. The first sentence is dense and runs long, but nothing is redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-value burden and does so: it names the key response fields, explains the empty/degenerate case, states the refresh cadence, and tells the agent what to do with dashboard_url. Nothing an agent needs to call this correctly or interpret the response is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single surface_id parameter is already documented as coming from surface_list. The description adds no syntax, format, or constraint detail beyond that, so the schema does all the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific resource and enumerates the exact metrics returned (per-variant sessions, goal-reaching sessions, rate_per_session, win_probability, termination.should_terminate, all-time traffic per event). It also explicitly contrasts itself with surface_traffic, so an agent can pick the right tool without inspecting schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It routes the agent away with a concrete condition: 'For sessions per day, use surface_traffic,' and tells it to point users at dashboard_url for charts. It stops short of saying when surface_get or surface_list should be preferred, and gives no exclusion conditions beyond the one traffic alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources