accueil / serveurs / Dev & Code / io.github.89rat/openfang-rail
io.github.89rat/openfang-rail
serveur MCP (Model Context Protocol) · code402 1.3.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.89rat/openfang-rail est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.89rat/openfang-rail » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 24 outils
- balance_check≈ 356 tokens
Native ETH and one ERC-20 balance (default USDC) for an address on Base, raw and formatted. Result carries a signed receipt.
Paramètres, retour & exemple (2)
Paramètresaddress· string · requis
EVM address, 0x-prefixed.token_address· string · optionnel
ERC-20 token contract address (optional; defaults to USDC on Base).
Exemple d'appel{"name": "balance_check", "arguments": {"address": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "token": {}, "valid": true, "native": {}, "reason": "texte", "address": "texte", "retryable": true}} - batch_validate≈ 506 tokens
Run up to 50 supported {tool, value} checks in one request. Each result states its scope. Compare the current batch quote with individual quotes; savings depend on batch size.
Paramètres, retour & exemple (1)
Paramètresitems· array · requis
List of {tool, value} checks (max 50).
Exemple d'appel{"name": "batch_validate", "arguments": {"items": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "count": 1, "scope": "texte", "results": [], "valid_count": 1, "invalid_count": 1}} - block_info≈ 362 tokens
Base block header: number, timestamp, transaction count and base fee for the latest or a given block. Result carries a signed receipt.
Paramètres, retour & exemple (1)
Paramètresblock· string · optionnel
Block number as hex (0x…) or decimal, or a tag (latest/earliest/pending/finalized/safe); defaults to latest.
Exemple d'appel{"name": "block_info", "arguments": {"block": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "block": "texte", "scope": "texte", "valid": true, "reason": "texte", "tx_count": 1, "retryable": true, "timestamp": 1, "block_number": 1, "base_fee_gwei": 1, "timestamp_iso": "texte"}} - calculate_fx_savings≈ 486 tokens
Arithmetic comparison of a USDC settlement against comparator percentages YOU supply (bank_fee_pct, custodial_fee_pct) across 14 global fiat currencies. The comparators are assumptions, not measurements of any bank or provider; no protocol fee is deducted on this rail.
Paramètres, retour & exemple (4)
Paramètresamount· number · optionnel
Gross invoice settlement volume in USD/USDC (alias).currency· string · optionnel
Target currency for local comparison (e.g. EUR, GBP, BRL, INR, ARS, PHP, NGN, SGD).amount_usd· number · optionnel
Gross invoice settlement volume in USD/USDC (alias).amount_usdc· number · optionnel
Gross invoice settlement volume in USD/USDC.
Exemple d'appel{"name": "calculate_fx_savings", "arguments": {"amount": 1, "currency": "texte", "amount_usd": 1, "amount_usdc": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "currency": "texte", "amount_usdc": 1, "deel_fee_usd": 1, "pct_retained": 1, "local_currency": {}, "legacy_swift_fee_usd": 1, "retained_savings_usd": 1, "code402_protocol_fee_usd": 1}} - check_price≈ 423 tokens
Instant zero-cost pricing hook for code402 tools. Returns the live price, an opaque quote_id, TTL, and the settlement URL. Free forever — feeds the price index into an agent planner's context without creating any financial obligation. If the planner acts on the quote, it hits the settlement_url with an EIP-3009 signed voucher.
Paramètres, retour & exemple (2)
Paramètrestool· string · requis
Target tool name (e.g. 'iban-check', 'vendor-onboarding-pack')amount· number · optionnel
Optional batch count or volume units (default 1)
Exemple d'appel{"name": "check_price", "arguments": {"tool": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "price": 1, "scope": "texte", "valid": true, "ttl_ms": 1, "currency": "texte", "quote_id": "texte", "settlement_url": "texte"}} - clean_markdown_scraper≈ 396 tokens
Fetch a public web page by URL (or take your HTML) and return Markdown plus headings. No JavaScript rendering. Result carries a signed receipt.
Paramètres, retour & exemple (2)
Paramètresurl· string · optionnel
Public http(s) page to fetch (ports 80/443 only). Provide exactly one of url or html.html· string · optionnel
Raw HTML string to convert instead of fetching a URL (max 1 MiB). Provide exactly one of url or html.
Exemple d'appel{"name": "clean_markdown_scraper", "arguments": {"url": "texte", "html": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "source": {}, "headings": [], "markdown": "texte", "retryable": true, "wordCount": 1, "fetched_on": "texte"}} - context_distill≈ 369 tokens
Deterministic text digest: word count, top-5 most frequent meaningful words (stop words excluded), first sentence, and a keccak-256 content hash. Pure function — no external calls, no ML.
Paramètres, retour & exemple (1)
Paramètrestext· string · requis
Arbitrary text to distill (any length; hashing is over the exact input).
Exemple d'appel{"name": "context_distill", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "top_words": [], "word_count": 1, "content_hash": "texte", "first_sentence": "texte", "meaningful_word_count": 1}} - crypto_ticker≈ 346 tokens
Spot USD price for a crypto ticker or CoinGecko id from public price feeds, cached 60 s. Result carries a signed receipt.
Paramètres, retour & exemple (1)
Paramètressymbol· string · requis
Ticker symbol (btc, eth, sol, …) or a CoinGecko asset id (bitcoin, ethereum, …).
Exemple d'appel{"name": "crypto_ticker", "arguments": {"symbol": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "cached": true, "reason": "texte", "symbol": "texte", "currency": "texte", "price_usd": 1, "retryable": true, "fetched_at": "texte", "coingecko_id": "texte"}} - erc20_balance≈ 426 tokens
Raw and formatted ERC-20 balanceOf for an address on Base, with decimals read from the token. Result carries a signed receipt.
Paramètres, retour & exemple (3)
Paramètresaddress· string · requis
Holder EVM address, 0x-prefixed.decimals· number · optionnel
Token decimals override (optional).token_address· string · requis
ERC-20 token contract address, 0x-prefixed.
Exemple d'appel{"name": "erc20_balance", "arguments": {"address": "texte", "token_address": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "address": "texte", "balance": 1, "decimals": 1, "retryable": true, "balance_raw": "texte", "token_address": "texte", "decimals_source": "texte"}} - fx_spot_price_oracle≈ 334 tokens
Reference fiat and stablecoin conversion rate from a static table, not a live feed. Returns rate and inverse; result carries a signed receipt.
Paramètres, retour & exemple (2)
Paramètresbase· string · requis
Base currency symbol (e.g. USDC, EUR, GBP, JPY).quote· string · requis
Quote currency symbol (e.g. USD, EUR, JPY).
Exemple d'appel{"name": "fx_spot_price_oracle", "arguments": {"base": "texte", "quote": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"pair": "texte", "rate": 1, "source": "texte", "inverse": 1, "timestamp": 1}} - gstin_check≈ 305 tokens
Validate an Indian GSTIN by structure (2-digit state code + PAN + entity code + 'Z') and its mod-36 cross-sum checksum.
Paramètres, retour & exemple (1)
Paramètresgstin· string · requis
15-character Indian Goods and Services Tax Identification Number.
Exemple d'appel{"name": "gstin_check", "arguments": {"gstin": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - iban_check≈ 307 tokens
Validate IBAN structure and MOD-97 checksum. Does not establish account ownership, beneficiary identity or absence of fraud.
Paramètres, retour & exemple (1)
Paramètresiban· string · requis
IBAN to validate; spaces allowed.
Exemple d'appel{"name": "iban_check", "arguments": {"iban": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - ifsc_check≈ 300 tokens
Check the 11-character Indian IFSC format, including its fifth-character zero. No bank-branch registry lookup or account verification.
Paramètres, retour & exemple (1)
Paramètresifsc· string · requis
11-character Indian Financial System Code.
Exemple d'appel{"name": "ifsc_check", "arguments": {"ifsc": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - india_supplier_check≈ 426 tokens
One call, one receipt: GSTIN + PAN + UPI VPA + IFSC for an Indian counterparty. Four deterministic structural checks, each stating its own scope. Built for cross-border procurement where the buyer is an agent that cannot open an INR account.
Paramètres, retour & exemple (4)
Paramètrespan· string · optionnel
PAN (10 chars, optional)vpa· string · optionnel
UPI VPA handle (optional)ifsc· string · optionnel
IFSC bank code (optional)gstin· string · optionnel
GSTIN (15 chars, optional)
Exemple d'appel{"name": "india_supplier_check", "arguments": {"pan": "texte", "vpa": "texte", "ifsc": "texte", "gstin": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "results": [], "verdict": "texte", "corridor": "texte", "all_valid": true, "next_steps": "texte", "checked_count": 1}} - instant_json_schema_verifier≈ 350 tokens
Validate JSON data payloads against schema definitions. Preflighted for agent tool call pipelines.
Paramètres, retour & exemple (2)
Paramètresdata· object · requis
The JSON data object to validate against the schema.schema· object · requis
The JSON schema object with expected properties and types.
Exemple d'appel{"name": "instant_json_schema_verifier", "arguments": {"data": {}, "schema": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"valid": true, "errors": [], "execution_ms": 1}} - lei_check≈ 308 tokens
Validate a 20-character LEI and MOD-97 check digits. No registry lookup, active-registration check or legal-entity identity verification.
Paramètres, retour & exemple (1)
Paramètreslei· string · requis
20-character Legal Entity Identifier.
Exemple d'appel{"name": "lei_check", "arguments": {"lei": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - pre_disbursement_guard≈ 683 tokens
Evaluate supplied identifiers, domain-age evidence and mismatch signals. Requires a preceding receipt hash. An advisory result is not verified identity, fraud clearance or authorization to release funds.
Paramètres, retour & exemple (9)
Paramètreslei· string · optionnel
ISO 17442 Legal Entity Identifier (optional).vat_number· string · optionnel
EU VAT number (optional).vendor_domain· string · optionnel
Vendor website domain or invoicing email address (optional).company_number· string · optionnel
Official corporate registration number, e.g. UK Companies House 8 digits/chars (optional).recipient_iban· string · optionnel
Recipient bank IBAN (optional).declared_country· string · optionnel
2-letter ISO country code where vendor claims to be registered (optional, e.g. 'GB', 'US', 'DE').physical_address· string · optionnel
Vendor physical office address (optional).prev_receipt_hash· string · optionnel
Preceding verification receipt hash (may also be passed via X-PREV-RECEIPT-HASH header).invoice_amount_usd· number · optionnel
Disbursement transaction amount in USD (optional).
Exemple d'appel{"name": "pre_disbursement_guard", "arguments": {"lei": "texte", "vat_number": "texte", "vendor_domain": "texte", "company_number": "texte", "recipient_iban": "texte", "declared_country": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "checks": {}, "summary": "texte", "decision": "texte", "risk_level": "texte", "risk_score": 1, "flags_triggered": [], "recommendations": [], "clear_to_disburse": true, "inspected_counterparty": {}}} - receipt_verify≈ 484 tokens
Verifies a signed XDR-1 receipt from ANY x402 service: recomputes the canonical digest and recovers the signer, then compares it to the declared signer. Free forever — no account, no quota, no storage (stateless). A valid receipt proves the signer signed that tool call at that timestamp; it does NOT prove funds moved or any business claim.
Paramètres, retour & exemple (1)
Paramètresreceipt· string · requis
The full XDR-1 receipt object: v, tool, tool_version, input_hash, output_hash, payer, recipient, amount, nonce, ts, tier, signer, signature (optional successor/stream_state).
Exemple d'appel{"name": "receipt_verify", "arguments": {"receipt": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"scope": "texte", "valid": true, "digest": "texte", "canonical": "texte", "declared_signer": "texte", "signer_recovered": "texte"}} - sanctions_address_screen≈ 488 tokens
Exact EVM-address comparison against the identified address snapshot and existing operator block policy. Current legal status is unknown; is_sanctioned is null. valid=false preserves a local block; valid=null never authorizes a transaction. Names are not screened. Missing, stale or incomplete evidence is explicit; no UN/EU coverage or sanctions clearance is provided.
Paramètres, retour & exemple (1)
Paramètressubject· string · requis
EVM address (0x...) or ISO 3166-1 country code / jurisdiction name
Exemple d'appel{"name": "sanctions_address_screen", "arguments": {"subject": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "subject": "texte", "match_type": "texte", "is_sanctioned": "texte", "blocklist_match": true, "snapshot_sha256": "texte", "snapshot_status": "texte", "sanction_program": "texte", "screening_status": "texte"}} - swift_bic_check≈ 304 tokens
Check SWIFT/BIC structure and country code. Does not establish bank existence, active routing or beneficiary identity.
Paramètres, retour & exemple (1)
Paramètresbic· string · requis
SWIFT/BIC code, 8 or 11 characters; spaces/dashes allowed.
Exemple d'appel{"name": "swift_bic_check", "arguments": {"bic": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - token_contract_risk≈ 442 tokens
Deterministic Base contract facts: ERC-20 metadata, proxy slots, owner(), privileged-function selectors and flags. Not a safety verdict. Result carries a signed receipt.
Paramètres, retour & exemple (2)
Paramètreschain· string · optionnel · base
Optional. Only 'base' (Base mainnet) is supported.address· string · requis
Contract address on Base, 0x + 40 hex.
Exemple d'appel{"name": "token_contract_risk", "arguments": {"address": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "block": {}, "chain": "texte", "erc20": {}, "flags": [], "owner": {}, "proxy": {}, "scope": "texte", "valid": true, "reason": "texte", "address": "texte", "opcodes": {}}} - tx_activity≈ 325 tokens
Outbound transaction count (nonce) and contract-or-EOA check for an address on Base. Result carries a signed receipt.
Paramètres, retour & exemple (1)
Paramètresaddress· string · requis
EVM address, 0x-prefixed.
Exemple d'appel{"name": "tx_activity", "arguments": {"address": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "address": "texte", "tx_count": 1, "is_contract": true, "first_funded_heuristic": true}} - vat_mod97_check≈ 322 tokens
Check the supported Belgian VAT format and MOD-97 checksum. BE only; not VIES, other EU VAT formats, registration status or tax compliance.
Paramètres, retour & exemple (1)
Paramètresvat_number· string · requis
Belgian VAT id in the supported BE mod-97 format (BE prefix optional); not a VIES lookup.
Exemple d'appel{"name": "vat_mod97_check", "arguments": {"vat_number": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "valid": true, "reason": "texte", "country": "texte", "normalized": "texte"}} - vendor_onboarding_pack≈ 401 tokens
Check supplied IBAN, LEI, Belgian VAT and UK company-number fields in one result. Structural checks only; no ownership, registry or fraud clearance.
Paramètres, retour & exemple (4)
Paramètreslei· string · optionnel
Vendor LEI (optional).iban· string · optionnel
Vendor IBAN (optional).vat_number· string · optionnel
Vendor VAT number, BE mod-97 (optional).company_number· string · optionnel
Vendor UK company number (optional).
Exemple d'appel{"name": "vendor_onboarding_pack", "arguments": {"lei": "texte", "iban": "texte", "vat_number": "texte", "company_number": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tool": "texte", "scope": "texte", "results": [], "verdict": "texte", "all_valid": true, "checked_count": 1}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».