Skip to main content
Glama
Yusufss4

positioning-mcp

by Yusufss4

compare_filters

Compares several positioning filters on one scenario across seeds, reporting mean CEP50, CEP95, and convergence so you can test hypotheses by adding or removing faults via scenario overrides.

Instructions

Mean CEP50/CEP95/convergence of several filters on one scenario, averaged over seeds.

scenario_overrides (JSON merge patch on the scenario; null deletes a key) lets you remove or add a single fault to test a hypothesis, e.g. {"ble": {"moved_beacons": null}}.

Input Schema

NameRequiredDescriptionDefault
seedsNo
filtersNo
scenarioYes
config_patchNo
scenario_overridesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses that results are averaged over seeds and that scenario_overrides is a JSON merge patch where null deletes a key, but it omits return format, how many seeds are used by default, and what config_patch changes.

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 description is short and front-loaded with the core computation, followed by a compact example for the most unusual parameter. It avoids waste, though it could mention returned metrics or defaults more explicitly.

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

Completeness3/5

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

For a five-parameter comparison tool with no annotations and no output schema, this is only minimally complete. The scenario_overrides behavior is well covered, but config_patch, return structure, and sibling differentiation are 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 description coverage is 0%, so the description should compensate for five undocumented parameters. It explains scenario_overrides well and implies the roles of scenario, filters, and seeds, but leaves config_patch and the expected filter-name format entirely unexplained.

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

Purpose4/5

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

The description states a specific computation: mean CEP50, CEP95, and convergence across several filters on one scenario, averaged over seeds. This is more specific than a bare verb, but it does not distinguish the tool from the sibling ab_test, which may also compare configurations.

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

Usage Guidelines3/5

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

Usage is implied by the scenario_overrides example: vary one fault to test a hypothesis. The description does not say when to choose compare_filters over ab_test or run_regression, nor does it state prerequisites such as needing a scenario name.

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