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.
12 tools: 2 do something that can't be undone, 3 change things and 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone2Claude Code: ask: see these tools
- Changes things3Claude Code: ask: see these tools
- Only reads7Claude Code: allow: see these tools
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/compassFindings
Matches of fixed checks, with the text they matched.
The server marks "read_agent_test_report" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "read_agent_test_report" says "read": a word for reading.
The server marks "check_payment_terms" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched 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.
- Warntest_payment
The server marks "test_payment" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "test_payment" says "payment": a word that usually means money moves, which cannot be taken back.
The input schema at properties.baseline.properties.resource_url.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.baseline.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."
The input schema at properties.current.properties.resource_url.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.current.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."
The input schema at properties.challenge.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.challenge.description: "...structuredContent. No signed payment or credentials."
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".
What this check looks forMatched text
inputSchema.properties.challenge.description: "...structuredContent. No signed payment or credentials."
- Warn
The server marks "check_payment_terms" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched 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.
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".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "test_payment" says "payment": a word that usually means money moves, which cannot be taken back.
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.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "read_agent_test_report" says "read": a word for reading.
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".
What this check looks forMatched text
inputSchema.properties.baseline.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."
- Info
The input schema at properties.current.properties.resource_url.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.current.properties.resource_url.description: "...TP(S) resource URL, including query. No credentials, secret query parameters or fragment."
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/compassRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .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.