Koskamo

ScrubMyText MCP

Provides 49 deterministic tools for text integrity, agent control, and contextual quality evidence, including text scrubbing, action locking, signal verification, and quality card management for AI agents.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

ScrubMyText MCP logo, by ScrubMyTextVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by ScrubMyText
MCP endpoint (Streamable HTTP)
https://api.scrubmytext.com/mcp
Vendor documentation

What its tools do

49 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

49 of 49 have a description · 49 of 49 declare behavior hints · 1 of 49 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to scrubmytext.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Scrub and inspect text for integrity
  • Lock and verify agent actions
  • Manage agent deadlines and attention budgets
  • Record and compare quality evidence

Source and maintenance

Vendor evidenceRegistry 7.5.0

Protocol and capabilities

Server
com.scrubmytext/tools 7.5.0
MCP protocol negotiated in check
2025-11-25
Tools
49 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Use scrub_text, inspect_text, fingerprint_action, check_agent_readiness, list_quality_cards, get_quality_card, or compare_quality_targets with the free public allowance. No-download Founding Access unlocks all 49 tools for 30 days or 1,000 total calls; verified founding keys keep free TrustMyChoice contribution access afterward. Paid keys unlock continued durable control-plane access. Quality cards expose sample size and uncertainty, not universal rankings or safety guarantees, and payment never changes evidence weight.

Tools

49 advertised

scrub_text — ScrubMyText — Scrub Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Normalize hidden/control characters and formatting artifacts without rewriting wording. Free or paid.

scrub_text input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "mode": {
      "enum": [
        "standard",
        "strict",
        "unicode"
      ],
      "type": "string"
    },
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
scrub_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
inspect_text — InspectMyText — Inspect Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Inspect exact Unicode, invisible characters, normalization, and mixed-script anomalies. Free or paid.

inspect_text input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
inspect_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
scan_untrusted_text — ScanMyText — Scan Untrusted Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use before an agent ingests pasted, retrieved, uploaded, or externally supplied text. Returns structural and heuristic risk signals; it does not determine maliciousness or safety. Trial, subscription, or x402 pay-per-call.

scan_untrusted_text input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
scan_untrusted_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
redact_sensitive_text — RedactMyText — Redact Sensitive Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use before storing, sharing, logging, or sending text downstream when it may contain credentials or identifiers. Pattern-based redaction; trial, subscription, or x402 pay-per-call.

redact_sensitive_text input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
redact_sensitive_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
compare_text — CompareMyText — Compare Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use to verify what changed between two text versions and whether differences are only scrub/format artifacts. Trial, subscription, or x402 pay-per-call.

compare_text input schema
{
  "type": "object",
  "required": [
    "original",
    "modified"
  ],
  "properties": {
    "modified": {
      "type": "string",
      "maxLength": 1000000
    },
    "original": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
compare_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
detect_secrets — DetectMySecrets — Detect Secrets
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use before an agent logs, stores, or forwards text that may contain credentials. Finds likely API keys, private keys, JWTs, cloud credentials, and secret patterns without echoing values. Trial, subscription, or x402 pay-per-call.

detect_secrets input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
detect_secrets annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
validate_output — ValidateMyOutput — Validate AI Output
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use immediately before a downstream action when model output must be valid JSON or match a schema. Trial, subscription, or x402 pay-per-call.

validate_output input schema
{
  "type": "object",
  "required": [
    "output"
  ],
  "properties": {
    "output": {},
    "schema": {
      "type": "object"
    }
  },
  "additionalProperties": false
}
validate_output annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
sanitize_agent_context — SanitizeMyContext — Sanitize Agent Context
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use before putting untrusted retrieved or uploaded text into a model context. Normalizes structural artifacts, returns risk signals, and can redact sensitive patterns. Trial, subscription, or x402 pay-per-call.

sanitize_agent_context input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "mode": {
      "enum": [
        "standard",
        "strict",
        "unicode"
      ],
      "type": "string"
    },
    "text": {
      "type": "string",
      "maxLength": 1000000
    },
    "redact_sensitive": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
sanitize_agent_context annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
prepare_for_agent — PrepareMyContext — Prepare for Agent
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use as the default preprocessing step before an AI agent consumes untrusted external text. Returns agent-ready text plus inspection, risk-scan, and secret-detection reports. Trial, subscription, or x402 pay-per-call.

prepare_for_agent input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "mode": {
      "enum": [
        "standard",
        "strict",
        "unicode"
      ],
      "type": "string"
    },
    "text": {
      "type": "string",
      "maxLength": 1000000
    },
    "redact_sensitive": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
prepare_for_agent annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
rework_text — ReworkMyText — Rework Text
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use when an agent needs a deterministic, no-LLM rewrite while preserving protected facts such as numbers, URLs, emails, and quotes. Returns change metrics and preservation checks; does not verify authorship or watermark status. Trial, subscription, or x402 pay-per-call.

rework_text input schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "mode": {
      "enum": [
        "light",
        "standard",
        "deep"
      ],
      "type": "string"
    },
    "text": {
      "type": "string",
      "maxLength": 1000000
    }
  },
  "additionalProperties": false
}
rework_text annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
fingerprint_action — LockMyAction — Fingerprint Action
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use before retryable work to derive a stable SHA-256 action fingerprint and idempotency key from an action name, optional scope, and JSON arguments. Object key order does not affect the result. Returns no input values and stores nothing. Free or paid.

fingerprint_action input schema
{
  "type": "object",
  "required": [
    "action",
    "arguments"
  ],
  "properties": {
    "scope": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1,
      "description": "Optional namespace such as production or customer-42. Defaults to default."
    },
    "action": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1,
      "description": "Stable action name, such as send_invoice or create_ticket."
    },
    "arguments": {
      "type": "object",
      "description": "JSON object containing every value that should define whether two action attempts are the same. Do not include passwords, API keys, or secret tokens."
    }
  },
  "additionalProperties": false
}
fingerprint_action output schema
{
  "type": "object",
  "required": [
    "brand",
    "action_fingerprint",
    "idempotency_key",
    "algorithm",
    "canonicalization",
    "canonical_bytes",
    "notice"
  ],
  "properties": {
    "brand": {
      "type": "string"
    },
    "notice": {
      "type": "string"
    },
    "algorithm": {
      "type": "string"
    },
    "canonical_bytes": {
      "type": "integer"
    },
    "idempotency_key": {
      "type": "string"
    },
    "canonicalization": {
      "type": "string"
    },
    "action_fingerprint": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
fingerprint_action annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
lock_action — LockMyAction — Lock Action
Advertised by the server during the last successful anonymous check.

Use immediately before a consequential agent action to atomically claim an idempotency key so retries cannot execute it twice. Subscription API key required.

lock_action input schema
{
  "type": "object",
  "required": [
    "key"
  ],
  "properties": {
    "key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "lock_ttl_seconds": {
      "type": "integer",
      "maximum": 86400,
      "minimum": 30
    },
    "completion_ttl_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 3600
    }
  },
  "additionalProperties": false
}
lock_action annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
lock_action_intent — LockMyAction — Fingerprint and Lock Action
Advertised by the server during the last successful anonymous check.

Use immediately before a consequential retryable action when no stable idempotency key exists. Deterministically fingerprints the action and arguments, atomically claims that key, and returns safe_to_execute. Repeat calls with equivalent object-key ordering return the same fingerprint and cannot acquire a second active lock. Subscription API key required.

lock_action_intent input schema
{
  "type": "object",
  "required": [
    "action",
    "arguments"
  ],
  "properties": {
    "scope": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1,
      "description": "Optional namespace such as production or customer-42. Defaults to default."
    },
    "action": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1,
      "description": "Stable action name, such as send_invoice or create_ticket."
    },
    "arguments": {
      "type": "object",
      "description": "JSON object containing every value that should define whether two action attempts are the same. Do not include passwords, API keys, or secret tokens."
    },
    "lock_ttl_seconds": {
      "type": "integer",
      "maximum": 86400,
      "minimum": 30
    },
    "completion_ttl_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 3600
    }
  },
  "additionalProperties": false
}
lock_action_intent output schema
{
  "type": "object",
  "required": [
    "brand",
    "status",
    "safe_to_execute",
    "key",
    "action_fingerprint",
    "idempotency_key",
    "algorithm",
    "canonicalization",
    "canonical_bytes"
  ],
  "properties": {
    "key": {
      "type": "string"
    },
    "brand": {
      "type": "string"
    },
    "notice": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "lock_id": {
      "type": "string"
    },
    "algorithm": {
      "type": "string"
    },
    "locked_at": {
      "type": "string"
    },
    "completed_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "canonical_bytes": {
      "type": "integer"
    },
    "idempotency_key": {
      "type": "string"
    },
    "lock_expires_at": {
      "type": "string"
    },
    "protected_until": {
      "type": "string"
    },
    "safe_to_execute": {
      "type": "boolean"
    },
    "canonicalization": {
      "type": "string"
    },
    "action_fingerprint": {
      "type": "string"
    },
    "completion_retention_seconds": {
      "type": "integer"
    }
  },
  "additionalProperties": false
}
lock_action_intent annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
check_action — LockMyAction — Check Action
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use to inspect an idempotency key before or after an agent action. Subscription API key required.

check_action input schema
{
  "type": "object",
  "required": [
    "key"
  ],
  "properties": {
    "key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
check_action annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
complete_action — LockMyAction — Complete Action
Advertised by the server during the last successful anonymous check.

Paid: mark the current lock completed and preserve the idempotency record for its configured retention period.

complete_action input schema
{
  "type": "object",
  "required": [
    "key",
    "lock_id"
  ],
  "properties": {
    "key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "lock_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
complete_action annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
release_action — LockMyAction — Release Action
Advertised by the server during the last successful anonymous check.
Advertised destructive

Paid: release an uncompleted action lock using its lock_id so another attempt can safely acquire it.

release_action input schema
{
  "type": "object",
  "required": [
    "key",
    "lock_id"
  ],
  "properties": {
    "key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "lock_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
release_action annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": true
}
create_signal — CatchMySignal — Create Signal Inbox
Advertised by the server during the last successful anonymous check.

Use when an agent must wait for an external callback, webhook, job completion, or asynchronous event. Subscription API key required.

create_signal input schema
{
  "type": "object",
  "properties": {
    "label": {
      "type": "string",
      "maxLength": 120
    },
    "max_events": {
      "type": "integer",
      "maximum": 100,
      "minimum": 1
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
create_signal annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
get_signal_events — CatchMySignal — Get Events
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid: retrieve events received by a temporary signal inbox in arrival order.

get_signal_events input schema
{
  "type": "object",
  "required": [
    "inbox_id"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "maximum": 100,
      "minimum": 1
    },
    "after_ms": {
      "type": "integer",
      "minimum": 0
    },
    "inbox_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
get_signal_events annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
delete_signal — CatchMySignal — Delete Inbox
Advertised by the server during the last successful anonymous check.
Advertised destructive

Paid: immediately delete a signal inbox and all stored event bodies.

delete_signal input schema
{
  "type": "object",
  "required": [
    "inbox_id"
  ],
  "properties": {
    "inbox_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
delete_signal annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": true
}
request_approval — ApproveMyAction — Request Approval
Advertised by the server during the last successful anonymous check.

Use when an agent needs independent human approval before a consequential action. Creates a secure approval link. Subscription API key required.

request_approval input schema
{
  "type": "object",
  "required": [
    "title"
  ],
  "properties": {
    "title": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "description": {
      "type": "string",
      "maxLength": 2000
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
request_approval annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
check_approval — ApproveMyAction — Check Approval
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid: check whether a human approval request is pending, approved, rejected, expired, or cancelled.

check_approval input schema
{
  "type": "object",
  "required": [
    "approval_id"
  ],
  "properties": {
    "approval_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
check_approval annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
cancel_approval — ApproveMyAction — Cancel Approval
Advertised by the server during the last successful anonymous check.
Advertised destructive

Paid: cancel a pending human approval request so its link can no longer approve the action.

cancel_approval input schema
{
  "type": "object",
  "required": [
    "approval_id"
  ],
  "properties": {
    "approval_id": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
cancel_approval annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": true
}
manage_action_challenge — ChallengeMyAction — Manage Veto Window
Advertised by the server during the last successful anonymous check.

Create, inspect, consume, or cancel a digest-bound cooling-off window. A bearer challenger can veto before the deadline; afterward the owner can atomically consume one execution right during a bounded window. This is exception handling, not affirmative consent or legal approval. Subscription API key required.

manage_action_challenge input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "create",
        "check",
        "consume",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "veto_window_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 60
    },
    "execution_window_seconds": {
      "type": "integer",
      "maximum": 86400,
      "minimum": 60
    }
  },
  "additionalProperties": false
}
manage_action_challenge annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
reserve_action_budget — BudgetMyAction — Reserve Budget
Advertised by the server during the last successful anonymous check.

Atomically reserve integer units under a named, period-scoped ceiling. A reservation_key makes retries idempotent. The service stores hashes and counters, not purchase details. Production; subscription API key required.

reserve_action_budget input schema
{
  "type": "object",
  "required": [
    "operation",
    "budget_key",
    "period_key"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 1
    },
    "amount": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 1
    },
    "operation": {
      "enum": [
        "reserve",
        "check"
      ],
      "type": "string"
    },
    "budget_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "period_key": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    },
    "reservation_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "retention_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 3600
    }
  },
  "additionalProperties": false
}
reserve_action_budget annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
record_action_receipt — ReceiptMyAction — Record Receipt
Advertised by the server during the last successful anonymous check.

Create or retrieve an immutable receipt digest for an action outcome without storing the action or outcome payload. Production; subscription API key required.

record_action_receipt input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "record",
        "check"
      ],
      "type": "string"
    },
    "receipt_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "outcome_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "outcome_status": {
      "enum": [
        "succeeded",
        "failed",
        "partial"
      ],
      "type": "string"
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
record_action_receipt annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
verify_signed_signal — VerifyMySignal — Verify Signed Signal
Advertised by the server during the last successful anonymous check.

Verify an HMAC-SHA256 signal, enforce timestamp freshness, and reject a replayed nonce. The message and shared secret are never stored. Production; subscription API key required.

verify_signed_signal input schema
{
  "type": "object",
  "required": [
    "message",
    "shared_secret",
    "signature",
    "timestamp",
    "nonce"
  ],
  "properties": {
    "nonce": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "message": {
      "type": "string",
      "maxLength": 100000
    },
    "signature": {
      "type": "string",
      "pattern": "^[a-fA-F0-9]{64}$"
    },
    "timestamp": {
      "type": "integer",
      "minimum": 0
    },
    "shared_secret": {
      "type": "string",
      "maxLength": 512,
      "minLength": 16
    },
    "max_age_seconds": {
      "type": "integer",
      "maximum": 86400,
      "minimum": 30
    }
  },
  "additionalProperties": false
}
verify_signed_signal annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_resource_lease — LeaseMyResource — Manage Lease
Advertised by the server during the last successful anonymous check.

Atomically acquire, inspect, or release a short-lived exclusive lease on a hashed resource key. Production; subscription API key required.

manage_resource_lease input schema
{
  "type": "object",
  "required": [
    "operation",
    "resource_key"
  ],
  "properties": {
    "operation": {
      "enum": [
        "acquire",
        "check",
        "release"
      ],
      "type": "string"
    },
    "lease_token": {
      "type": "string",
      "maxLength": 256,
      "minLength": 16
    },
    "ttl_seconds": {
      "type": "integer",
      "maximum": 86400,
      "minimum": 30
    },
    "resource_key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
manage_resource_lease annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_authority_delegation — DelegateMyAuthority — Manage Delegation
Advertised by the server during the last successful anonymous check.

Issue, consume, inspect, or revoke a narrow bearer capability bound to one action fingerprint and a maximum use count. This is a technical capability, not identity proof or a legal delegation. Production; subscription API key required.

manage_authority_delegation input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "token": {
      "type": "string",
      "maxLength": 256,
      "minLength": 16
    },
    "max_uses": {
      "type": "integer",
      "maximum": 10000,
      "minimum": 1
    },
    "operation": {
      "enum": [
        "issue",
        "use",
        "check",
        "revoke"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 60
    }
  },
  "additionalProperties": false
}
manage_authority_delegation annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_agent_stop — StopMyAgent — Manage Stop Signal
Advertised by the server during the last successful anonymous check.

Set, inspect, or clear a durable stop signal for a hashed agent or workflow key. Callers should fail closed whenever stopped is true. Production; subscription API key required.

manage_agent_stop input schema
{
  "type": "object",
  "required": [
    "operation",
    "subject_key"
  ],
  "properties": {
    "operation": {
      "enum": [
        "stop",
        "check",
        "clear"
      ],
      "type": "string"
    },
    "reason_code": {
      "enum": [
        "operator",
        "policy",
        "incident",
        "budget",
        "maintenance",
        "other"
      ],
      "type": "string"
    },
    "subject_key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
manage_agent_stop annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
manage_task_handoff — HandoffMyTask — Manage Handoff
Advertised by the server during the last successful anonymous check.

Create a bearer-token task handoff, let another paid API identity claim it exactly once, and inspect, complete, or cancel the transfer. Only task fingerprints are stored. Production.

manage_task_handoff input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "token": {
      "type": "string",
      "maxLength": 256,
      "minLength": 16
    },
    "operation": {
      "enum": [
        "create",
        "claim",
        "check",
        "complete",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "task_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 60
    }
  },
  "additionalProperties": false
}
manage_task_handoff annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_action_reconciliation — ReconcileMyAction — Manage Reconciliation
Advertised by the server during the last successful anonymous check.

Open, inspect, append digest-only evidence to, or resolve a discrepancy between expected and observed action outcomes. Production; subscription API key required.

manage_action_reconciliation input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "open",
        "append",
        "check",
        "resolve"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "resolution": {
      "enum": [
        "reconciled",
        "dismissed"
      ],
      "type": "string"
    },
    "evidence_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expected_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "observed_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
manage_action_reconciliation annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
anchor_context_trace — TraceMyContext — Anchor Trace
Advertised by the server during the last successful anonymous check.

Create or inspect an immutable provenance anchor from a context digest, parent digests, and processing stage. No context content is stored. Production; subscription API key required.

anchor_context_trace input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "stage": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    },
    "operation": {
      "enum": [
        "anchor",
        "check"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "context_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "parent_digests": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
      },
      "maxItems": 20
    }
  },
  "additionalProperties": false
}
anchor_context_trace annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
manage_task_contract — ContractMyTask — Manage Task Contract
Advertised by the server during the last successful anonymous check.

Offer, accept, inspect, complete, or cancel a digest-bound technical task commitment. This records service state; it is not a legal contract, escrow, payment, or identity verification. Production.

manage_task_contract input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "token": {
      "type": "string",
      "maxLength": 256,
      "minLength": 16
    },
    "operation": {
      "enum": [
        "offer",
        "accept",
        "check",
        "complete",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "terms_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "task_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 60
    }
  },
  "additionalProperties": false
}
manage_task_contract annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
check_agent_readiness — ReadyMyAgent — Check Integration Readiness
Advertised by the server during the last successful anonymous check.
Advertised read-only

Deterministically check a supplied MCP server card against a narrow, published integration contract. The service does not fetch arbitrary URLs and does not certify security or correctness. Free or paid.

check_agent_readiness input schema
{
  "type": "object",
  "required": [
    "server_card"
  ],
  "properties": {
    "server_card": {
      "type": "object"
    },
    "required_tools": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 120,
        "minLength": 1
      },
      "maxItems": 100
    },
    "expected_version": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    },
    "require_streamable_http": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
check_agent_readiness annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
manage_action_quorum — QuorumMyAction — Manage Authorization Quorum
Advertised by the server during the last successful anonymous check.

Create, inspect, consume, or cancel an N-of-M bearer authorization quorum. Each unique bearer can decide once; only a successful one-time consume grants an execution right. Subscription API key required.

manage_action_quorum input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "create",
        "check",
        "consume",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "member_count": {
      "type": "integer",
      "maximum": 20,
      "minimum": 2
    },
    "required_votes": {
      "type": "integer",
      "maximum": 10,
      "minimum": 2
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
manage_action_quorum annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_task_deadline — DeadlineMyTask — Manage Durable Deadline
Advertised by the server during the last successful anonymous check.

Create, inspect, complete, or cancel a task deadline whose due and escalation state is derived from an independent server clock even when the agent is offline. Subscription API key required.

manage_task_deadline input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "create",
        "check",
        "complete",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "due_in_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 60
    },
    "task_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "escalation_grace_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 0
    }
  },
  "additionalProperties": false
}
manage_task_deadline annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_attention_budget — BudgetMyAttention — Manage Review Capacity
Advertised by the server during the last successful anonymous check.

Create, inspect, reserve, release, or close a finite review-capacity pool with per-subject caps, retry-safe reservations, and protected priority capacity. Subscription API key required.

manage_attention_budget input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "units": {
      "type": "integer",
      "maximum": 1000000,
      "minimum": 1
    },
    "priority": {
      "enum": [
        "standard",
        "priority"
      ],
      "type": "string"
    },
    "operation": {
      "enum": [
        "create",
        "reserve",
        "check",
        "release",
        "close"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "total_units": {
      "type": "integer",
      "maximum": 1000000,
      "minimum": 1
    },
    "period_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 300
    },
    "reservation_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "subject_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "max_units_per_subject": {
      "type": "integer",
      "maximum": 1000000,
      "minimum": 1
    },
    "protected_priority_units": {
      "type": "integer",
      "maximum": 1000000,
      "minimum": 0
    }
  },
  "additionalProperties": false
}
manage_attention_budget annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_agent_escalation — EscalateMyAgent — Manage Operator Escalation
Advertised by the server during the last successful anonymous check.

Create, inspect, or cancel a digest-only incident with a private bearer operator link and deterministic response and resolution SLA state. Link delivery remains the caller’s responsibility. Subscription API key required.

manage_agent_escalation input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "severity": {
      "enum": [
        "low",
        "medium",
        "high",
        "critical"
      ],
      "type": "string"
    },
    "operation": {
      "enum": [
        "create",
        "check",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "incident_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "response_sla_seconds": {
      "type": "integer",
      "maximum": 604800,
      "minimum": 60
    },
    "resolution_sla_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
manage_agent_escalation annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_terms_pin — PinMyTerms — Manage Terms Pin
Advertised by the server during the last successful anonymous check.

Pin, inspect, or revoke an immutable digest-bound record of observed terms, interface, version, and price. Stores bounded metadata and digests, not the terms body. This is technical evidence, not a legal agreement. Subscription API key required.

manage_terms_pin input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "currency": {
      "type": "string",
      "pattern": "^[A-Z]{3}$"
    },
    "operation": {
      "enum": [
        "pin",
        "check",
        "revoke"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "price_minor": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "terms_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "version_label": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    },
    "interface_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 300
    },
    "counterparty_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
manage_terms_pin annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
match_policy_requirements — MatchMyPolicy — Match Policy Requirements
Advertised by the server during the last successful anonymous check.
Advertised read-only

Deterministically compare bounded provider capabilities with consumer-required and forbidden policy tokens. Processes supplied tokens without storing policy content and does not make legal or compliance conclusions. Subscription API key required.

match_policy_requirements input schema
{
  "type": "object",
  "required": [
    "provider_capabilities",
    "consumer_required",
    "consumer_forbidden"
  ],
  "properties": {
    "consumer_required": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 80,
        "minLength": 1
      },
      "maxItems": 64
    },
    "consumer_forbidden": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 80,
        "minLength": 1
      },
      "maxItems": 64
    },
    "provider_capabilities": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 80,
        "minLength": 1
      },
      "maxItems": 64,
      "minItems": 1
    }
  },
  "additionalProperties": false
}
match_policy_requirements annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
manage_action_compensation — CompensateMyAction — Manage Compensating Action
Advertised by the server during the last successful anonymous check.

Bind a compensating-action digest before execution, record that the primary action executed, and atomically mark compensation once. Stores digests only and does not perform either action. Subscription API key required.

manage_action_compensation input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "bind",
        "check",
        "mark_executed",
        "compensate",
        "cancel"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "action_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 2592000,
      "minimum": 300
    },
    "compensation_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
manage_action_compensation annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_context_status — RevokeMyContext — Manage Context Status
Advertised by the server during the last successful anonymous check.

Publish, inspect, supersede, dispute, or revoke digest-only context status so downstream agents can stop using stale inputs. Stores no context body and does not invalidate copies outside this service. Subscription API key required.

manage_context_status input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "operation": {
      "enum": [
        "publish",
        "check",
        "supersede",
        "dispute",
        "revoke"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "reason_code": {
      "enum": [
        "source_update",
        "consent_withdrawn",
        "error",
        "policy",
        "expiry",
        "dispute",
        "other"
      ],
      "type": "string"
    },
    "context_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "successor_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
manage_context_status annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_context_rights — LicenseMyContext — Manage Context Rights
Advertised by the server during the last successful anonymous check.

Issue, inspect, evaluate, or revoke a digest-bound machine-readable context-rights envelope. It is a technical policy signal, not legal advice or proof of ownership. Subscription API key required.

manage_context_rights input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "rights": {
      "type": "array",
      "items": {
        "enum": [
          "read",
          "summarize",
          "derive",
          "redistribute",
          "train",
          "commercial"
        ],
        "type": "string"
      },
      "maxItems": 8,
      "minItems": 1,
      "uniqueItems": true
    },
    "operation": {
      "enum": [
        "issue",
        "check",
        "evaluate",
        "revoke"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "policy_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "context_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "requested_right": {
      "enum": [
        "read",
        "summarize",
        "derive",
        "redistribute",
        "train",
        "commercial"
      ],
      "type": "string"
    },
    "expires_in_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 300
    }
  },
  "additionalProperties": false
}
manage_context_rights annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
manage_disclosure_budget — MeterMyDisclosure — Manage Disclosure Budget
Advertised by the server during the last successful anonymous check.

Create, inspect, record against, or close a cumulative disclosure budget with total, per-recipient, and per-category limits. Stores hashes and counters, not disclosed content or recipient identities. Subscription API key required.

manage_disclosure_budget input schema
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "units": {
      "type": "integer",
      "maximum": 1000000000,
      "minimum": 1
    },
    "event_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "operation": {
      "enum": [
        "create",
        "record",
        "check",
        "close"
      ],
      "type": "string"
    },
    "control_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "total_units": {
      "type": "integer",
      "maximum": 1000000000,
      "minimum": 1
    },
    "period_seconds": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 300
    },
    "per_category_limit": {
      "type": "integer",
      "maximum": 1000000000,
      "minimum": 1
    },
    "per_recipient_limit": {
      "type": "integer",
      "maximum": 1000000000,
      "minimum": 1
    },
    "category_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "recipient_fingerprint": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
manage_disclosure_budget annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
list_quality_cards — TrustMyChoice — List Public Quality Cards
Advertised by the server during the last successful anonymous check.
Advertised read-only

List exact service-version/task quality cards that have reached the public three-verified-contributor evidence threshold. Results are ordered by recent evidence, not quality, payment, or sponsorship. Free.

list_quality_cards input schema
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "maximum": 50,
      "minimum": 1
    },
    "target_type": {
      "enum": [
        "mcp_server",
        "rest_api"
      ],
      "type": "string"
    },
    "task_category": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
list_quality_cards annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_quality_card — TrustMyChoice — Get Quality Card
Advertised by the server during the last successful anonymous check.
Advertised read-only

Retrieve a public, contextual quality card for an exact MCP server or REST API version. Scores remain unavailable until at least three independent verified contributors submit structured observations. Free.

get_quality_card input schema
{
  "type": "object",
  "required": [
    "target_type",
    "provider_domain",
    "canonical_endpoint",
    "version",
    "task_category"
  ],
  "properties": {
    "region": {
      "type": "string",
      "maxLength": 40,
      "minLength": 2
    },
    "version": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    },
    "target_type": {
      "enum": [
        "mcp_server",
        "rest_api"
      ],
      "type": "string"
    },
    "task_category": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    },
    "max_latency_ms": {
      "type": "integer",
      "maximum": 86400000,
      "minimum": 0
    },
    "provider_domain": {
      "type": "string",
      "maxLength": 253,
      "minLength": 1
    },
    "interface_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "max_price_micros": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "canonical_endpoint": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 8
    },
    "minimum_evidence_class": {
      "enum": [
        "E0",
        "E1"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
get_quality_card annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
compare_quality_targets — TrustMyChoice — Compare Quality Targets
Advertised by the server during the last successful anonymous check.
Advertised read-only

Return contextual quality cards for two to ten exact targets in caller-provided order. It exposes evidence and uncertainty without producing a paid ranking or universal winner. Free.

compare_quality_targets input schema
{
  "type": "object",
  "required": [
    "targets",
    "task_category"
  ],
  "properties": {
    "region": {
      "type": "string",
      "maxLength": 40,
      "minLength": 2
    },
    "targets": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "target_type",
          "provider_domain",
          "canonical_endpoint",
          "version"
        ],
        "properties": {
          "version": {
            "type": "string",
            "maxLength": 120,
            "minLength": 1
          },
          "target_type": {
            "enum": [
              "mcp_server",
              "rest_api"
            ],
            "type": "string"
          },
          "provider_domain": {
            "type": "string",
            "maxLength": 253,
            "minLength": 1
          },
          "interface_digest": {
            "type": "string",
            "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
          },
          "canonical_endpoint": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 8
          }
        },
        "additionalProperties": false
      },
      "maxItems": 10,
      "minItems": 2
    },
    "task_category": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    },
    "max_latency_ms": {
      "type": "integer",
      "maximum": 86400000,
      "minimum": 0
    },
    "max_price_micros": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "minimum_evidence_class": {
      "enum": [
        "E0",
        "E1"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
compare_quality_targets annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
record_quality_observation — TrustMyChoice — Record Quality Observation
Advertised by the server during the last successful anonymous check.

Submit an opt-in structured observation for an exact target and task. Receipt-linked observations are labeled E1; other observations are E0. Stores no prompt, response, credential, email, or free-form review. Free verified contributor or subscription key required.

record_quality_observation input schema
{
  "type": "object",
  "required": [
    "target_type",
    "provider_domain",
    "canonical_endpoint",
    "version",
    "task_category",
    "observation_key",
    "outcome_success",
    "reliability"
  ],
  "properties": {
    "region": {
      "type": "string",
      "maxLength": 40,
      "minLength": 2
    },
    "version": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    },
    "latency_ms": {
      "type": "integer",
      "maximum": 86400000,
      "minimum": 0
    },
    "receipt_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "observed_at": {
      "type": "string",
      "maxLength": 40,
      "minLength": 20
    },
    "reliability": {
      "type": "boolean"
    },
    "target_type": {
      "enum": [
        "mcp_server",
        "rest_api"
      ],
      "type": "string"
    },
    "task_category": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
    },
    "max_latency_ms": {
      "type": "integer",
      "maximum": 86400000,
      "minimum": 0
    },
    "observation_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "outcome_success": {
      "type": "boolean"
    },
    "provider_domain": {
      "type": "string",
      "maxLength": 253,
      "minLength": 1
    },
    "interface_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    },
    "max_price_micros": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "canonical_endpoint": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 8
    },
    "final_price_micros": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "quoted_price_micros": {
      "type": "integer",
      "maximum": 1000000000000,
      "minimum": 0
    },
    "minimum_evidence_class": {
      "enum": [
        "E0",
        "E1"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
record_quality_observation annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
request_quality_correction — TrustMyChoice — Request Quality Correction
Advertised by the server during the last successful anonymous check.

Attach a digest-only correction or appeal request to a quality card. Requests are visible as unverified pending state and do not erase evidence or prove provider identity. Free verified contributor or subscription key required.

request_quality_correction input schema
{
  "type": "object",
  "required": [
    "card_id",
    "request_key",
    "request_kind",
    "reason_code",
    "correction_digest"
  ],
  "properties": {
    "card_id": {
      "type": "string",
      "pattern": "^tmc_[a-f0-9]{40}$"
    },
    "reason_code": {
      "enum": [
        "inaccurate_target",
        "outdated_version",
        "methodology",
        "evidence",
        "error",
        "other"
      ],
      "type": "string"
    },
    "request_key": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1
    },
    "request_kind": {
      "enum": [
        "correction",
        "appeal"
      ],
      "type": "string"
    },
    "correction_digest": {
      "type": "string",
      "pattern": "^(?:sha256:)?[a-f0-9]{64}$"
    }
  },
  "additionalProperties": false
}
request_quality_correction annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
254 ms
95th percentile latency
254 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 254 ms · metadata changed · 49 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http scrubmytext-mcp https://api.scrubmytext.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add scrubmytext-mcp --url https://api.scrubmytext.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable scrubmytext-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "scrubmytext-mcp": {
      "url": "https://api.scrubmytext.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "scrubmytext-mcp": {
      "type": "streamableHttp",
      "url": "https://api.scrubmytext.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start scrubmytext-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "scrubmytext-mcp": {
      "type": "http",
      "url": "https://api.scrubmytext.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http scrubmytext-mcp https://api.scrubmytext.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://api.scrubmytext.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "scrubmytext-mcp": {
      "serverUrl": "https://api.scrubmytext.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like ScrubMyText MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run ScrubMyText MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing