{"name":"com.fronesislabs/dcl-trust-oracle","slug":"fronesislabs-dcl-trust-oracle","title":"DCL Trust Oracle — AI/LLM Output Audit (x402 MCP)","description":"AI/LLM agent output audit MCP: policy eval, tamper-evident chain, AI safety, x402 USDC on Base.","url":"https://mcp.market/server/fronesislabs-dcl-trust-oracle","rating":null,"grade":"B","score":77,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":26,"stars":1,"forks":0,"downloads_week":null,"last_push_at":"2026-10-17T09:36:22.000Z","license":"Apache-2.0"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T03:50:55.342Z","last_ok_at":"2026-11-04T03:50:55.342Z","latency_ms":295},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/Fronesis-Labs/dcl-webhook","website":"https://fronesislabs.com","version":"2.3.1","remotes":[{"type":"streamable-http","url":"https://mcp.fronesislabs.com/mcp"}],"packages":[],"tools":[{"name":"dcl_audit_decode","description":"POST-ACTION Basic Audit ($0.10). Retrieves a record from the tamper-evident chain by tx_hash.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"tx_hash":{"description":"Transaction hash of the audit chain record to retrieve.","title":"Tx Hash","type":"string"}},"required":["tx_hash"],"title":"dcl_audit_decodeArguments"}},{"name":"dcl_audit_decode_deep","description":"POST-ACTION Deep Forensic Audit ($0.50). Extended output with drift_context and full chain integrity verification.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"tx_hash":{"description":"Transaction hash of the audit chain record to retrieve.","title":"Tx Hash","type":"string"}},"required":["tx_hash"],"title":"dcl_audit_decode_deepArguments"}},{"name":"dcl_commit","description":"FINAL-STEP Leibniz Layer Crypto Commit ($0.01). Writes a trading/agent decision to the append-only Leibniz Layer audit chain and returns a Merkle-proof-style receipt: `tx_hash` (proof of this specific commit), `chain_hash` (the previous commit's hash, linking this one into the chain), and `chain_depth` (this commit's position in the chain). Unlike the evaluate_* tools, this call has no pass/fail verdict of its own — it always succeeds and simply seals the decision. Passing `prior_checks` is optional but recommended: it records which earlier pipeline steps (firewall/wallet/trade/MEV) this specific commit is downstream of, in one auditable record. Always run this LAST, after every other crypto-suite check has passed.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"decision":{"description":"The final trading/agent decision text to commit to the audit chain.","title":"Decision","type":"string"},"agent_id":{"description":"Identifier of the agent whose decision is being committed.","title":"Agent Id","type":"string"},"prior_checks":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"description":"Optional dict of tx_hashes from earlier pipeline steps (e.g. {'prompt_firewall_tx_hash': ..., 'trade_verifier_tx_hash': ..., 'mev_compliance_tx_hash': ...}), linking this commit to the specific checks that passed before it.","title":"Prior Checks"}},"required":["decision","agent_id"],"title":"dcl_commitArguments"}},{"name":"dcl_evaluate_batch","description":"PRE-ACTION Bulk Processing ($0.10). Evaluates a list of items in one call; each item is a dict shaped {\"response\": str, \"policy\"?: str}, where policy defaults to \"default\" if omitted and may be any built-in policy name (default, strict, anti_jailbreak, safety, content_quality). Each item gets its own independent COMMIT/NO_COMMIT verdict via the same logic as the matching single-item evaluate_* tool; results are returned in input order under `results`, plus a shared `batch_id`. Capped at 200 items per call — oversized batches are rejected. Use this instead of multiple single-item evaluate_* calls when checking several responses — optionally against different policies — in one priced call rather than paying per item separately.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"items":{"description":"List of items to evaluate, each shaped like {'response': str, 'policy'?: str}.","items":{"additionalProperties":true,"type":"object"},"title":"Items","type":"array"},"agent_id":{"description":"Identifier of the agent that produced the responses.","title":"Agent Id","type":"string"}},"required":["items","agent_id"],"title":"dcl_evaluate_batchArguments"}},{"name":"dcl_evaluate_fast","description":"FAST Pre-Action Audit ($0.01). Runs the response through the server's \"default\" policy: a substring check against 3 forbidden phrases (\"ignore previous instructions\", \"jailbreak\", \"bypass safety\") with a 0.7 minimum-confidence threshold. Each forbidden match found costs 0.4 confidence; if confidence falls below 0.7, or any match is found, the verdict is NO_COMMIT and `reason` lists which phrase triggered it. Otherwise COMMIT. Use this as the default low-cost first-pass gate before a risky agent action; switch to dcl_evaluate_strict for a broader, higher-bar check, or to dcl_evaluate_jailbreak / dcl_evaluate_safety / dcl_evaluate_quality for a narrower, single-topic check instead of the general-purpose default policy.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text to audit.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_fastArguments"}},{"name":"dcl_evaluate_jailbreak","description":"PRE-ACTION Instruction Adherence Check ($0.02). Runs the \"anti_jailbreak\" policy: a substring check against 6 forbidden phrases (\"ignore previous instructions\", \"jailbreak\", \"bypass safety\", \"pretend you are\", \"act as if\", \"DAN\") with a 0.8 minimum-confidence threshold — each match costs 0.4 confidence. Returns COMMIT if no phrase matches and confidence stays at or above 0.8, otherwise NO_COMMIT with `reason` listing the matched phrase(s). Use this as a targeted, cheaper check when the concern is specifically prompt-injection / persona-hijack risk; use dcl_evaluate_strict instead when you also want safety- and default-policy phrases covered in the same call.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text to check for jailbreak attempts.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_jailbreakArguments"}},{"name":"dcl_evaluate_jailbreak_crypto","description":"PRE-ACTION Crypto Jailbreak & Injection Detection ($0.02). Crypto-specialized instruction-override/jailbreak/injection screen: standard role-switch and instruction-override patterns, plus crypto-specific drain-wallet injection (e.g. \"transfer all funds to...\", fake \"test transaction\" requesting full balance) and unlimited-approval injection (e.g. type(uint256).max, \"approve unlimited allowance\", skip-slippage-confirmation framing). Any match returns NO_COMMIT with `reason` and `findings` naming the matched category/categories; run this FIRST in the DCL crypto pipeline, before wallet/trade/MEV checks, since it screens the input itself rather than a decision built on top of it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The incoming prompt or agent response to screen for crypto-specialized jailbreak/injection attempts.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced or received the text.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_jailbreak_cryptoArguments"}},{"name":"dcl_evaluate_mev","description":"POST-ACTION MEV & Market-Abuse Compliance Screen ($0.03). Text-level screen (not a mempool/transaction analyzer) for front-running/sandwich-attack language, wash trading/layering/spoofing, KYC/AML red flags (mixers, structuring, obscuring fund origin), and pump-and-dump/rug-pull language. Any critical-severity finding, or two or more major-severity findings, returns NO_COMMIT; a single major-severity finding is also returned as NO_COMMIT but with a distinctly higher `confidence` (~0.55 vs ~0.05-0.2 for harder violations) so downstream callers can tell a soft single flag apart from a hard multi-finding block. Each finding includes an illustrative `regulatory_reference` tag (MiFID II, FCA, or an EU AI Act article).","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text describing or proposing an on-chain/trading action, to screen for MEV and market-abuse language.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_mevArguments"}},{"name":"dcl_evaluate_output_sanitizer","description":"FINAL-GATE Output Sanitizer ($0.02). Post-processing checkpoint that strips secrets/credentials, PII, crypto material (seed phrases, private keys, wallet addresses), internal network details (private IPs, MAC addresses, .internal/.local/.corp hostnames), and unsafe shell/SQL/path-traversal fragments from a raw model response — plus a narrow, high-precision safety net for direct self-harm-instruction-seeking and targeted-harassment phrasing (not a general toxicity classifier). Returns a single `sanitized_output` with every match replaced by `[REDACTED]`; use that instead of the original whenever verdict is NO_COMMIT. Run this as the LAST gate before a response reaches its destination — after `dcl_evaluate_jailbreak_crypto`/other input-side checks have already run, and immediately before `dcl_commit` seals the final decision. Internally re-uses the same detection tables as `dcl_evaluate_secrets`/`dcl_evaluate_pii` for the secrets/PII categories, so results stay consistent with those tools.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The raw LLM/agent response to sanitize before it is delivered to a user, downstream agent, or external system.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_output_sanitizerArguments"}},{"name":"dcl_evaluate_pii","description":"POST-ACTION PII Detection Scan ($0.02). Regex-based scan across 8 personal-data categories, with a Luhn checksum on card numbers to reduce false positives. Any finding results in NO_COMMIT.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The text to scan for personal data: emails, phone numbers, national IDs, bank cards, IBANs, crypto addresses, IP addresses, passport numbers.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_piiArguments"}},{"name":"dcl_evaluate_quality","description":"PRE-ACTION Content Quality & Drift Check ($0.03). Runs the \"content_quality\" policy: flags 12 absolutist or unverifiable-claim phrases (e.g. \"guaranteed returns\", \"100% accurate\", \"studies show\", \"without a doubt\") with a 0.85 minimum-confidence threshold — the highest bar of any single-policy tool. Returns NO_COMMIT if any phrase matches or confidence falls below 0.85, with `reason` listing the matched phrase(s). Use this to catch overconfident or unsubstantiated claims in generated content — a different concern from jailbreak or safety phrasing — e.g. before publishing agent-written copy or reports.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text to check for quality and drift.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_qualityArguments"}},{"name":"dcl_evaluate_safety","description":"PRE-ACTION Baseline Safety Check ($0.01). Runs the \"safety\" policy: flags 2 forbidden disclaimers (\"I cannot be held responsible\", \"no guarantees\") and additionally REQUIRES the substring \"AI\" to appear somewhere in the response — missing it costs 0.2 confidence even with no forbidden phrase present. Minimum confidence is 0.75. Returns NO_COMMIT if confidence drops below 0.75, with `reason` naming the forbidden phrase found or the missing required pattern. Use this when you specifically need to confirm an AI-disclosure marker is present and the two disclaimer phrases are absent — not as a general-purpose safety net; for broader coverage use dcl_evaluate_fast or dcl_evaluate_strict instead.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text to check for safety violations.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_safetyArguments"}},{"name":"dcl_evaluate_secrets","description":"POST-ACTION Secret & Credential Leak Scan ($0.02). Regex-based scan across 8 categories (API keys, cloud credentials, tokens/JWTs, private keys, DB URLs, connection strings, env assignments, webhook secrets, internal endpoints with auth). Any finding results in NO_COMMIT.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The text to scan for exposed API keys, tokens, private keys, DB URLs, and other credentials.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_secretsArguments"}},{"name":"dcl_evaluate_signal","description":"POST-ACTION Market Signal Fabrication Screen ($0.03). Pattern-based heuristic on the output text alone (no source price feed) — flags guaranteed-price-prediction language (\"will definitely hit $X\"), absolute-certainty claims (\"100% certain\", \"cannot go down\"), a fabricated-price flag when a specific dollar figure co-occurs with a guaranteed-outcome claim, and an invented-token flag when a \"$TICKER\" cashtag doesn't match a small set of well-known symbols (false positives are possible for legitimate lesser-known tickers — this is a heuristic pre-check, not ground truth). For a full claim-by-claim check against an actual price-feed snapshot, use the local grounding workflow instead of this live tool. Verdict/confidence collapsing follows the same rule as dcl_evaluate_mev: any critical finding or 2+ major findings is a hard NO_COMMIT; exactly one major finding is a softer NO_COMMIT at ~0.55 confidence.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The market signal, analysis, or price-prediction text to screen.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_signalArguments"}},{"name":"dcl_evaluate_strict","description":"STRICT Pre-Action Audit ($0.05). Runs the response against a broader, higher-bar \"strict\" policy: the union of all forbidden phrases from the default, anti-jailbreak, and safety policies (8 phrases total), with a 0.85 minimum-confidence threshold instead of the default policy's 0.7. Each matched phrase costs 0.4 confidence; if confidence falls below 0.85, or any phrase matches, the verdict is NO_COMMIT with `reason` listing every match found. Use this instead of dcl_evaluate_fast when the cost of a false COMMIT is high — e.g. before an irreversible or high-stakes agent action — since it catches jailbreak- and safety-adjacent phrasing that the plain default policy would miss.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The agent or LLM response text to audit.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_strictArguments"}},{"name":"dcl_evaluate_trade","description":"PRE-ACTION Trade Decision Verifier ($0.02). Screens trade-decision language for guaranteed-return claims, zero-risk/\"can't lose\" framing, and unqualified \"buy/sell X now\" directives — any match is NO_COMMIT. If no unsafe language is found, COMMIT additionally requires the word \"risk\" to appear anywhere in the text as a minimum disclosure marker; its absence alone triggers NO_COMMIT with `reason` noting the missing disclosure. Produces an immutable `trade_receipt` (tx_hash/chain_hash/chain_depth) distinct from the top-level audit hash, for downstream systems that specifically need a trade-shaped receipt object.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The trade decision or recommendation text to screen.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_tradeArguments"}},{"name":"dcl_evaluate_wallet","description":"POST-ACTION Wallet Secret Guardian ($0.02). Scans for BIP-39 seed phrases (12 or 24 consecutive wordlist words), raw hex or WIF-format private keys, Ethereum/Bitcoin wallet addresses, and API keys/bearer tokens appearing near wallet/custody/signing terminology. Any finding results in NO_COMMIT — wallet secrets have no safe threshold, unlike other DCL evaluators. Returns a `sanitized_output` with all matches redacted (null if nothing was found) and a masked `redacted_sample` per finding — the real value is never returned or stored server-side.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"response":{"description":"The text to scan for seed phrases, private keys, wallet addresses, and wallet-context API credentials.","title":"Response","type":"string"},"agent_id":{"description":"Identifier of the agent that produced the response.","title":"Agent Id","type":"string"}},"required":["response","agent_id"],"title":"dcl_evaluate_walletArguments"}},{"name":"dcl_pipeline_start","description":"SESSION Management ($0.05). Generates a new `pipeline_id` and returns session metadata (scope, expiry, initial drift_mode) for organizing a series of related checks under one identifier. Note: this call does not currently link the returned pipeline_id to later evaluate_* calls — there is no server-side session state that ties subsequent audits back to it; it is an identifier/timestamp issuer, not an active tracking session. Use this to obtain a shared reference ID for your own client-side grouping of a multi-step audit sequence; do not rely on it to automatically aggregate drift across calls.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"agent_id":{"description":"Identifier of the agent that owns this session.","title":"Agent Id","type":"string"},"scope":{"default":"default","description":"Scope label for the session.","title":"Scope","type":"string"},"ttl_seconds":{"default":3600,"description":"Session time-to-live, in seconds.","title":"Ttl Seconds","type":"integer"}},"required":["agent_id"],"title":"dcl_pipeline_startArguments"}}],"scan":{"score":77,"grade":"B","scanned_at":"2026-11-03T23:30:38.056Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-03T23:30:38.021Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":17,"max":20,"notes":["remote reachable in 2081ms"]},"poisoning":{"score":15,"max":15,"notes":["18 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 7 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 18 days ago"]},"identity":{"score":8,"max":10,"notes":["endpoint served from the registry-verified namespace domain"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://mcp.fronesislabs.com/mcp","reachable":true,"authRequired":false,"latencyMs":2081,"serverInfo":{"name":"DCL Trust Oracle","version":"2.3.1"}}],"packages":[],"repo":{"found":true,"owner":"Fronesis-Labs","repo":"dcl-webhook","archived":false,"pushedAt":"2026-10-17T09:36:22Z","stars":1,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/264291404?v=4","ownerCreatedAt":"2026-02-27T00:34:07Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/264291404?v=4&s=128","source":"registry"},"presence":{"stars":1,"forks":0,"downloadsWeek":null,"license":"Apache-2.0","lastPushAt":"2026-10-17T09:36:22.000Z","score":26}}}},"grade_history":[],"reviews":[]}