Skip to main content
Glama

School Signals and DfE AI Safety Evidence (USDC on Base)

Server Details

English school edtech contract renewals and buyer briefs; DfE AI-safety toolkit. USDC on Base.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation4/5

Most tools have clearly distinct roles: list_products, school_signals_search, school_buyer_brief, and school_renewals form a coherent discovery-to-purchase pipeline. The only overlap is the dual payment paths (buy_file_x402 vs. create_transfer_order/check_transfer_order), but the descriptions explicitly explain when to use each, so confusion is limited.

Naming Consistency3/5

Naming mixes two conventions: verb_noun action tools (buy_file_x402, check_transfer_order, create_transfer_order, list_products) alongside domain-prefixed noun tools (school_buyer_brief, school_renewals, school_signals_search). Each name is readable in isolation, but the set lacks a single predictable pattern.

Tool Count5/5

Seven tools is well within the healthy range and each one earns its place: discovery, two payment mechanisms, order verification, and three data products. Nothing feels padded or missing at the surface level.

Completeness4/5

The surface covers discovery (list_products, school_signals_search), two payment flows, order verification, and the three paid data products, giving end-to-end coverage for a paid data marketplace. Minor gaps exist, such as re-fetching a prior download link or viewing purchase history, but agents can work around these.

Available Tools

7 tools
buy_file_x402Buy the England snapshot or the AI safety toolkit via x402A
Read-onlyIdempotent
Inspect

Paid 295 USDC (school-signals-england-snapshot) or 149 USDC (dfe-ai-safety-toolkit) via x402; returns a signed 48-hour download link, the file SHA-256 and an order URL. Without payment returns the x402 terms. If your client caps automatic payments, use create_transfer_order instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
productYesFile to buy.
x402_paymentNoOptional, paid tools only: a signed x402 v2 PaymentPayload, base64. Prefer params._meta["x402/payment"]. Never a private key or seed phrase.

TDQS

A4/5.0
Behavior1/5

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

The description states the tool charges 295 or 149 USDC via x402 payment settlement and gates the download link on that payment — a financial side effect — while annotations declare readOnlyHint=true and destructiveHint=false. That is a material inconsistency about whether the tool mutates anything.

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

Conciseness5/5

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

Three compact clauses, each carrying distinct information: price/product mapping, return payload, and the alternative tool. The pricing and purpose are front-loaded with no filler.

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

Completeness4/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 well: it documents the signed 48-hour download link, file SHA-256, order URL, and the unpaid fallback to x402 terms. What remains unaddressed is the contradiction between the paid, state-changing behavior and the read-only annotations.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema lacks by mapping each enum value to its price (295 USDC for school-signals-england-snapshot, 149 USDC for dfe-ai-safety-toolkit) and by noting that without payment the x402 terms are returned, explaining the optional x402_payment parameter's role.

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?

Names the specific action (buy a paid file via x402) plus the two purchasable products and their exact prices, which also separates it from the sibling create_transfer_order path. An agent can identify the tool's job without opening the schema.

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

Usage Guidelines5/5

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

Explicitly routes the agent: use this for automatic x402 payment, and 'If your client caps automatic payments, use create_transfer_order instead.' It also states the no-payment branch, so both the happy path and the alternative are covered.

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

check_transfer_orderCheck an order or submit its payment transaction (free)A
Idempotent
Inspect

Free. With only order: status (and a fresh download link once paid). With tx_hash: verifies the Base transaction (canonical USDC, recipient, exact amount, success, time window, 10 confirmations, never used before) and returns the download link.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderYesOrder id.
tx_hashNoBase transaction hash, 0x + 64 hex.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, openWorldHint=true, and destructiveHint=false. The description adds valuable context: the tool is free, and with tx_hash it verifies canonical USDC, recipient, exact amount, success, time window, 10 confirmations, and that the hash was never used before. It does not detail failure modes or authentication requirements, but this is a strong addition beyond the annotations.

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

Conciseness5/5

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

The description is a single, tightly structured sentence: it front-loads 'Free.' and then cleanly separates the two usage modes with 'With only order:' and 'With tx_hash:'. Every clause earns its place with no redundancy.

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

Completeness4/5

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

Given the tool's two-mode complexity, no output schema, and full schema coverage, the description is largely complete. It explains the return of a download link and the extensive verification steps, but omits what happens on verification failure and does not guide tool selection relative to siblings.

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

Parameters5/5

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

Schema coverage is 100%, so the schema already documents both parameters. The description significantly enriches semantics: `order` alone yields status and a fresh download link once paid; `tx_hash` triggers a detailed set of verification checks. This adds meaning far beyond the schema's minimal descriptions.

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 clearly states what the tool does in two modes: with only `order` it returns status and download link; with `tx_hash` it verifies a Base transaction. It uses specific verbs and resources, but does not explicitly distinguish itself from siblings like `create_transfer_order` or `buy_file_x402`.

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?

The description explains how to use the tool's two parameter combinations (order only vs. order + tx_hash), which implies usage. However, it never states when to choose this tool over alternatives such as `create_transfer_order` or `buy_file_x402`, nor does it provide exclusions or prerequisites beyond the free note.

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

create_transfer_orderStart a plain USDC transfer order for a file (free)AInspect

Free. Creates a 24-hour order with an order-specific exact USDC amount on Base. Send exactly that amount of canonical USDC to the recipient in one transfer, then call check_transfer_order with the transaction hash.

ParametersJSON Schema
NameRequiredDescriptionDefault
productYesFile to buy.

TDQS

A4/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=false, idempotentHint=false, openWorldHint=true), and the description adds genuinely new context: a 24-hour expiry, the Base network, the requirement that the amount be exact and the USDC canonical, and the single-transfer constraint. It does not say what happens on over/underpayment or expiry, but the added behavioral detail is meaningful.

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

Conciseness5/5

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

Two dense sentences with the distinguishing point ("Free.") front-loaded and the follow-up call placed last. No filler.

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

Completeness4/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 burden and does well: it tells the agent the order expires in 24 hours, that the response implies an exact amount and recipient to pay, and what to do next. It omits what identifiers the response returns (order id, address shape), which is a minor gap.

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?

Only one parameter (product) and schema description coverage is 100%, so the schema fully documents it. The description adds no meaning about the parameter itself, so baseline 3 is appropriate.

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?

States a specific verb and resource ("Creates a 24-hour order") plus the asset and chain (exact USDC on Base), and names the notion of a "plain USDC transfer order" that contrasts with the sibling buy_file_x402 flow. It never explicitly names that alternative, so an agent must infer the selection boundary rather than read it.

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?

Gives a clear operational sequence: create the order, send exactly that amount in one transfer, then call check_transfer_order with the tx hash. It establishes when to use this tool within the workflow but does not state when NOT to use it or how it differs from buy_file_x402.

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

list_productsProducts, prices and payment terms (free)A
Read-onlyIdempotent
Inspect

Free. Every product with its price in USDC, route, licence and how to pay (x402 or plain transfer on Base).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive/openWorld, so the safety profile is covered. The description adds information the annotations do not: the call is free of charge and the products are paid via x402 or plain transfer on Base, which tells the agent no payment is consumed by this call.

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?

One compact sentence with the most decision-relevant fact ('Free.') front-loaded. The telegram-style fragment omits a verb-subject (e.g. 'Lists'), which costs a little readability but wastes no words.

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

Completeness4/5

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

For a no-argument, no-output-schema listing tool, the description covers the essential content (what comes back and how payment works). It could be slightly more explicit about ordering/pagination, but nothing critical for correct invocation is absent.

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

Parameters4/5

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

The tool takes zero parameters (empty schema, additionalProperties false), so per the baseline there is nothing for the description to disambiguate. No parameter detail is needed or missing.

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?

States a concrete resource (every product) and enumerates the payload fields (price in USDC, route, licence, payment method), so the agent knows this is a catalog/discovery read. It doesn't explicitly name a sibling, but the free catalog framing clearly separates it from buy_file_x402 and the transfer-order tools.

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?

The leading 'Free.' implies this is the discovery step you run before buying, which is useful usage context, but there is no explicit when-to-use/when-not statement and no named alternative. Usage is inferable rather than stated.

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

school_buyer_briefBuyer brief for one school, trust or council ($0.20)A
Read-onlyIdempotent
Inspect

Paid $0.20 USDC. Hierarchy, published edtech contracts and incumbents, upcoming renewals with estimated windows, live tenders, recent trust changes and official links for one buyer. Unknown, ambiguous (candidates returned) or evidence-free buyers are refused before payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
buyerYesschool:<URN>, trust:<UID>, org:<slug>, a URN or an exact name.
x402_paymentNoOptional, paid tools only: a signed x402 v2 PaymentPayload, base64. Prefer params._meta["x402/payment"]. Never a private key or seed phrase.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/destructive safety, so the description adds real value on top: the $0.20 USDC charge, the payment mechanism being required, and the important guarantee that unresolvable or ambiguous buyers are refused *before* payment, so the agent knows a failed call is free. Missing only output shape/size and latency expectations.

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?

Two sentences, front-loaded with the price and then the payload contents, with the refusal behavior last. Appropriately sized for a paid bundle tool; the deliverable list is dense comma-clause prose that takes a second read but every item earns its place.

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

Completeness4/5

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

No output schema exists, and the description compensates by enumerating the sections returned, plus the cost and the no-charge-on-refusal rule. What remains unstated is the response format (structured JSON vs prose) and whether renewal estimates are labeled as estimates — minor for a read-only paid brief.

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 100% — the allowed identifier forms (school:<URN>, trust:<UID>, org:<slug>, URN, exact name) and the x402 payment payload are fully documented in the schema. The description adds only the soft rule that ambiguous names are rejected rather than guessed, which is useful but does not extend parameter semantics much.

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?

Names a specific deliverable (a buyer brief) and enumerates its contents — hierarchy, edtech contracts and incumbents, renewals with windows, live tenders, trust changes, official links — scoped to exactly one buyer. That enumeration implicitly separates it from narrower siblings like school_renewals and school_signals_search, but no sibling is named explicitly.

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 only implied: it must be for a single resolvable buyer, and 'Unknown, ambiguous (candidates returned) or evidence-free buyers are refused before payment' tells the agent what inputs will fail. There is no explicit statement of when to pick this bundle over school_renewals or school_signals_search, nor a prerequisite check the agent should run first.

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

school_renewalsUpcoming school edtech contract renewals ($0.03)A
Read-onlyIdempotent
Inspect

Paid $0.03 USDC. Up to 25 published edtech contracts at English schools, trusts and councils ending in a window, with incumbent, value, extensions, estimated re-procurement window and official notice links. Empty results and invalid filters are refused before payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
buyerNoBuyer id from school_signals_search.
regionNoEnglish region.
categoryNoEdtech category.
supplierNoIncumbent supplier name contains this text.
x402_paymentNoOptional, paid tools only: a signed x402 v2 PaymentPayload, base64. Prefer params._meta["x402/payment"]. Never a private key or seed phrase.
ending_within_monthsNoWindow from today, 1-24 months (default 12).
include_recently_endedNoAlso contracts that ended in the last 6 months.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the bar is lower, and the description still adds real context: a hard cost of $0.03 USDC, a 25-result cap, and the fact that empty or invalid queries are refused before charging. It does not mention whether repeat identical calls are billed again, which is the one behavioral gap left given idempotentHint=true.

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?

Two sentences, front-loaded with price and then payload contents, with the payment-refusal rule last. Dense but every clause carries information. Slightly long within a single clause, but no filler.

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

Completeness4/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 correctly enumerates the returned fields (incumbent, value, extensions, re-procurement window, official notice links) and states the 25-record cap, which is what an agent needs to judge fitness. Payment mechanics are covered by both the description and the x402_payment schema entry. Only the billing-on-repeat behavior is unaddressed.

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 100%, so the schema already documents all seven parameters including the enums, the 1-24 month bound and the x402 payment payload. The description only loosely echoes the window/incumbent concepts without adding format or constraint detail. Baseline 3 is appropriate when the schema does the heavy lifting.

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 names a specific resource and scope: up to 25 published edtech contracts at English schools/trusts/councils ending within a window, plus the fields returned (incumbent, value, extensions, re-procurement window, notice links). That is enough for an agent to distinguish it from school_signals_search or school_buyer_brief in practice. It never explicitly contrasts itself with those siblings, so it stops short of a 5.

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 rather than stated: the tool is for finding upcoming renewals, and the schema's buyer param points back to school_signals_search, hinting at a workflow. There is no explicit when-to-use vs. the other school_* siblings or when-not-to-use guidance. The payment precondition ('empty results and invalid filters are refused before payment') is the only concrete gating rule.

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.

  1. 7 tool updates
    • First observedbuy_file_x402
    • First observedcheck_transfer_order
    • First observedcreate_transfer_order
    • First observedlist_products
    • First observedschool_buyer_brief
    • First observedschool_renewals
    • First observedschool_signals_search

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources