Skip to content

Compass by 402rates

by 402rates.com · remote · no sign-in to list tools · v0.2.1 · published by com.402rates

Free agent tests (no account or payment); paid ping.

Final · 2Changes · 3

12 tools: 2 do something that can't be undone, 3 change things and 7 only read.

Scanned Oct 21, 2026

6 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http compass https://api.402rates.com/mcp/compass

Findings

Matches of fixed checks, with the text they matched.

3 warn3 info
  • The server marks "read_agent_test_report" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "read_agent_test_report" says "read": a word for reading.

    What this check looks for
  • The server marks "check_payment_terms" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "check_payment_terms" says "payment": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The server marks "test_payment" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "test_payment" says "payment": a word that usually means money moves, which cannot be taken back.

    What this check looks for
  • The input schema at properties.baseline.properties.resource_url.description mentions "credentials".

    Matched text

    inputSchema.properties.baseline.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."

    What this check looks for
  • The input schema at properties.current.properties.resource_url.description mentions "credentials".

    Matched text

    inputSchema.properties.current.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."

    What this check looks for
  • The input schema at properties.challenge.description mentions "credentials".

    Matched text

    inputSchema.properties.challenge.description: "...structuredContent. No signed payment or credentials."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

12 tools

Can't be undone 2Claude Code: ask
  • check_payment_termsFree inspection of supplied x402 v1/v2 payment terms against the SDK schema and optional network, asset, recipient and atomic budget constraints.2 findings

    Why it is in this group

    • The name "check_payment_terms" says "payment": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Info

      The input schema at properties.challenge.description mentions "credentials".

      Matched text

      inputSchema.properties.challenge.description: "...structuredContent. No signed payment or credentials."

      What this check looks for
    • Warn

      The server marks "check_payment_terms" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "check_payment_terms" says "payment": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Free inspection of supplied x402 v1/v2 payment terms against the SDK schema and optional network, asset, recipient and atomic budget constraints. Exact EVM profile checks only. No wallet connection, external fetch, signature verification or settlement. Other profiles are explicitly untested.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • test_paymentPayment integration check for 0.001 USDC; no external data lookup.1 finding

    Why it is in this group

    • The name "test_payment" says "payment": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "test_payment" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "test_payment" says "payment": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Payment integration check for 0.001 USDC; no external data lookup. Returns time, rail, network mode and free/paid capabilities. HTTP payment options can include Base, Polygon, Arbitrum and XDC; the challenge lists currently available networks for each transport. The receipt identifies the paid network and transaction. Business/professional use only. Terms: https://402rates.com/data-terms/ Price: 0.001 USDC per call over x402.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
Changes things 3Claude Code: ask
  • execute_test_actionExecute the selected case's action: synthetic order, retry attempt, page retrieval or result submission.No findings

    Why it is in this group

    • The name "execute_test_action" says "execute": a word for a change.
    Description, as the server wrote it
    Execute the selected case's action: synthetic order, retry attempt, page retrieval or result submission. Identical keys and input replay the stored outcome. Calls, effects and simulated credits remain observable. No real payment.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
    • destructiveHint: false
  • read_agent_test_reportRead calls, timestamps, operations and resulting state.1 finding

    Why it is in this group

    • The name "read_agent_test_report" says "read": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "read_agent_test_report" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "read_agent_test_report" says "read": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Read calls, timestamps, operations and resulting state. Optional finalization freezes the run. A linked repeat includes the previous frozen report while retained. No score, certification or judgment of the agent.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
    • destructiveHint: false
  • start_agent_testCreate a free bounded synthetic run without an account.No findings

    Why it is in this group

    • The name "start_agent_test" says "start": a word for a change.
    Description, as the server wrote it
    Create a free bounded synthetic run without an account. An optional finalized previous run and its token link a repeat of the same case version and scenario. No real purchase. Caller model costs remain external.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
    • destructiveHint: false
Only reads 7Claude Code: allow
  • compare_payment_termsFree comparison of two supplied unsigned payment challenges for the same resource and method.2 findings

    Why it is in this group

    • The name "compare_payment_terms" says "compare": a word for reading.

    Findings

    • Info

      The input schema at properties.baseline.properties.resource_url.description mentions "credentials".

      Matched text

      inputSchema.properties.baseline.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."

      What this check looks for
    • Info

      The input schema at properties.current.properties.resource_url.description mentions "credentials".

      Matched text

      inputSchema.properties.current.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."

      What this check looks for
    Description, as the server wrote it
    Free comparison of two supplied unsigned payment challenges for the same resource and method. Exact EVM v1/v2 only. Shows changed amounts, recipients, assets and supported terms, with stable digests. Captures are caller declarations; no origin authentication, signatures, fetching or payment. Unknown profiles remain non-comparable.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • describe_agent_testFree description of a versioned synthetic task, its limits and coverage.No findings

    Why it is in this group

    • The name "describe_agent_test" says "describe": a word for reading.
    Description, as the server wrote it
    Free description of a versioned synthetic task, its limits and coverage. Optional case selection; omitted selection describes the original confirmation case. No run, payment or wallet.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • find_x402_resourceSearches the x402 resource catalogue and returns matching paid endpoints with their price, the chains they accept, and their 30-day usage from the catalogue's own counters: total c…No findings

    Why it is in this group

    • The name "find_x402_resource" says "find": a word for reading.
    Description, as the server wrote it
    Searches the x402 resource catalogue and returns matching paid endpoints with their price, the chains they accept, and their 30-day usage from the catalogue's own counters: total calls, distinct paying addresses, the ratio between the two, and days since the last payment. Every figure is a count and carries its definition; no entry is scored, rated or labelled. Answers from a dated weekly snapshot and states which day it is from. Free.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_manifestFree OpenAPI manifest for Compass by 402rates.No findings

    Why it is in this group

    • The name "get_manifest" says "get": a word for reading.
    Description, as the server wrote it
    Free OpenAPI manifest for Compass by 402rates. Contains this product and shared service information only.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • inspect_test_stateRead operation records for a synthetic task.No findings

    Why it is in this group

    • The name "inspect_test_state" says "inspect": a word for reading.
    Description, as the server wrote it
    Read operation records for a synthetic task. Observation timestamps and state describe the test service only. No claim about client receipt or overall agent reliability.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • list_agent_test_casesFree catalogue of versioned synthetic cases: unavailable confirmation, retry credits and attempt limits, and partial results with continuation.No findings

    Why it is in this group

    • The name "list_agent_test_cases" says "list": a word for reading.
    Description, as the server wrote it
    Free catalogue of versioned synthetic cases: unavailable confirmation, retry credits and attempt limits, and partial results with continuation. No run, wallet or payment.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • list_capabilitiesFree capability and MCP tool catalogue for Compass by 402rates.No findings

    Why it is in this group

    • The name "list_capabilities" says "list": a word for reading.
    Description, as the server wrote it
    Free capability and MCP tool catalogue for Compass by 402rates. Contains this product and shared service information only.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.2.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http compass https://api.402rates.com/mcp/compass

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__compass__list_agent_test_cases",
      "mcp__compass__describe_agent_test",
      "mcp__compass__inspect_test_state",
      "mcp__compass__compare_payment_terms",
      "mcp__compass__list_capabilities",
      "mcp__compass__find_x402_resource",
      "mcp__compass__get_manifest"
    ],
    "ask": [
      "mcp__compass__start_agent_test",
      "mcp__compass__execute_test_action",
      "mcp__compass__read_agent_test_report",
      "mcp__compass__check_payment_terms",
      "mcp__compass__test_payment"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as compass. Review it before you use it.