accueil / serveurs / Données & BDD / io.github.stand-out-of-my-sun/diogenes-agent-guardrails-mcp
io.github.stand-out-of-my-sun/diogenes-agent-guardrails-mcp
serveur MCP (Model Context Protocol) · diogenes-edge-gateway 2.5.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.stand-out-of-my-sun/diogenes-agent-guardrails-mcp est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.stand-out-of-my-sun/diogenes-agent-guardrails-mcp » 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 9 outils
- audit_mcp_server_manifest≈ 511 tokens
Scans an external MCP server's initial tools/list manifest to detect tool-name shadowing (read_file, bash) and hidden prompt-injection directives in descriptions. Use when vetting a newly discovered third-party MCP server before mounting it into an agent session; for comparing a previously pinned MCP baseline against a live mid-session tools/list response, use detect_mcp_schema_rugpull instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'manifest_json' ('audit_profile' defaults to 'strict'), supports '?demo=true' or L402 (150 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètresaudit_profile· string · optionnel · strict | permissive_local | enterprise_zero_trust
Sensitivity level for flagging system-tool name shadowing; defaults to 'strict' when omitted.manifest_json· string · requis
JSON string or object containing the external MCP server's tools array to audit.
Exemple d'appel{"name": "audit_mcp_server_manifest", "arguments": {"manifest_json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"manifest_safe": true, "security_grade": "texte", "shadowed_tools": [], "suspicious_tools": []}} - audit_outbound_egress_url≈ 534 tokens
Static validation firewall for outbound network destination URIs against cloud metadata IP addresses (169.254.169.254), RFC 1918 private IP blocks, and query-string secret exfiltration before agent dispatch. Use when validating a user-supplied or tool-supplied URI destination before network dispatch; for auditing local shell commands or general prompts, use verify_agent_command_safety instead. Read-only edge call (32 KB, 60 RPM): accepts 'destination_uri' ('egress_policy' defaults to 'block_private_and_metadata'), supports '?demo=true' or L402 (65 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètresegress_policy· string · optionnel · block_private_and_metadata | https_public_only | strict_allowlist_domains
Network egress policy; defaults to 'block_private_and_metadata' when omitted.destination_uri· string · requis
Outbound HTTP/HTTPS destination URI to inspect before fetching (e.g. 'https://api.example.com/v1/webhook').
Exemple d'appel{"name": "audit_outbound_egress_url", "arguments": {"destination_uri": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"verdict": "texte", "egress_allowed": true, "ssrf_risk_detected": true, "exfiltration_query_params": []}} - audit_response_factuality≈ 532 tokens
Cross-references factual claims, numbers, and citations in a draft agent response against retrieved source passages to flag unsupported hallucinations before delivery. Use when verifying that a generated answer is 100% grounded in source evidence before returning it to the user; for scrubbing inbound tool outputs for prompt-injection and invisible Unicode, use sanitize_tool_output_stream instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'claim' ('context' defaults to 'standard'), supports '?demo=true' or L402 (150 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (3)
Paramètresclaim· string · requis
Draft agent response or factual statement to verify for hallucinations.context· string · requis
Authoritative source text or retrieved RAG passages that the claim must be grounded in.strictness· string · optionnel · exact_entailment | semantic_paraphrase | citations_only
Entailment threshold required for numbers and dates; defaults to 'exact_entailment' when omitted.
Exemple d'appel{"name": "audit_response_factuality", "arguments": {"claim": "texte", "context": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"verdict": "texte", "verified_claims": [], "unverified_claims": [], "groundedness_score": 1}} - detect_agent_action_loop≈ 522 tokens
Analyzes an agent's recent tool-call trace to detect identical retry spins, A/B state oscillation, and runaway token burn. Use when monitoring multi-step agent execution loops to decide whether to continue or halt and escalate; for inspecting a single command payload for security threats before execution, use verify_agent_command_safety instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'action_trace_json' ('sensitivity' defaults to 'strict_2_repeats'), supports '?demo=true' or L402 (70 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètressensitivity· string · optionnel · strict_2_repeats | standard_3_repeats | lenient_5_repeats
Cycle detection threshold; defaults to 'standard_3_repeats' when omitted.action_trace_json· string · requis
JSON-serialized array of recent agent actions (e.g. '[{"tool":"search","status":"err"}]').
Exemple d'appel{"name": "detect_agent_action_loop", "arguments": {"action_trace_json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"loop_pattern": "texte", "loop_detected": true, "circuit_breaker_action": "texte", "estimated_tokens_saved": 1}} - detect_mcp_schema_rugpull≈ 552 tokens
Computes structural diffs between a pinned baseline MCP tools/list snapshot and a live server response to catch mid-session description or schema tampering. Use when verifying that a connected MCP server has not mutated its tool definitions mid-session; for performing a first-time static security audit on a single MCP manifest, use audit_mcp_server_manifest instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'baseline_tools_json' ('current_tools_json' defaults to 'standard'), supports '?demo=true' or L402 (85 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (3)
Paramètresdiff_mode· string · optionnel · full_structural | schema_only | descriptions_only
Comparison strictness across descriptions and inputSchema; defaults to 'full_structural' when omitted.current_tools_json· string · optionnel
JSON-serialized live tools/list array to compare against the baseline; defaults to '[]' when omitted.baseline_tools_json· string · requis
JSON-serialized baseline tools/list array captured when the MCP server was first trusted.
Exemple d'appel{"name": "detect_mcp_schema_rugpull", "arguments": {"baseline_tools_json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"verdict": "texte", "mutated_tools": [], "timestamp_utc": "texte", "rugpull_detected": true}} - execute_python_sandbox≈ 488 tokens
Audits Python source code for forbidden syscalls (os, subprocess, socket, open, eval) inside an AST-governed WebAssembly sandbox with no host filesystem access. Use when executing LLM-generated Python snippets safely; for checking shell commands without executing code, use verify_agent_command_safety instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'python_script' ('timeout_profile' defaults to 'fast_1s'), supports '?demo=true' or MPP (1500 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètrespython_script· string · requis
Python 3 source script to audit and execute strictly inside an isolated AST-governed, non-privileged WebAssembly sandbox with no host filesystem access.timeout_profile· string · optionnel · fast_1s | standard_5s | extended_15s
Execution resource ceiling; defaults to 'standard_5s' when omitted.
Exemple d'appel{"name": "execute_python_sandbox", "arguments": {"python_script": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"exit_code": 1, "syntax_valid": true, "simulated_stdout": "texte", "ast_security_audit": {}}} - redact_sensitive_pii≈ 484 tokens
Redacts emails, phone numbers, SSNs, credit cards, API keys, and crypto private keys from text before logging or external transmission. Use when stripping personal data or secret credentials from prompts, logs, or outbound messages; for neutralizing indirect prompt injections and invisible Unicode in inbound tool responses, use sanitize_tool_output_stream instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'text' ('redaction_style' defaults to 'typed_token'), supports '?demo=true' or L402 (150 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètrestext· string · requis
Input text containing potential PII or secret keys to redact.redaction_style· string · optionnel · typed_token | asterisk_mask | sha256_pseudonym
Placeholder format used for redacted spans; defaults to 'typed_token' when omitted.
Exemple d'appel{"name": "redact_sensitive_pii", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"scrubbed_text": "texte", "redactions_count": 1, "zero_pii_certified": true, "categories_redacted": []}} - sanitize_tool_output_stream≈ 519 tokens
Sanitizes untrusted external tool or web-scrape outputs by stripping invisible Unicode Tag characters (U+E0000), neutralizing Markdown tracking image beacons, and defusing indirect prompt overrides. Use when cleaning raw third-party tool outputs or scraped web text before inserting it into the LLM context window; for redacting personal identifiable information (emails, SSNs, keys) from outbound text, use redact_sensitive_pii instead. Read-only edge call (32 KB, 60 RPM): accepts 'raw_tool_output' (with enum defaults), uses '?demo=true' or L402 (75 sats); HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètreswrap_tag· string · optionnel · tool_data | untrusted_context | none
XML isolation wrapper applied around the sanitized text; defaults to 'tool_data' when omitted.raw_tool_output· string · requis
Untrusted text returned by an external tool, webhook, or web scraper.
Exemple d'appel{"name": "sanitize_tool_output_stream", "arguments": {"raw_tool_output": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"sanitized_output": "texte", "threats_neutralized": [], "injection_risk_score": 1, "safe_for_context_ingestion": true}} - validate_mcp_sampling_request≈ 508 tokens
Audits inbound MCP sampling/createMessage callbacks from connected servers to block cross-server context snooping (includeContext='allServers') and token quota hijacking. Use when filtering a connected MCP server's request to sample the host LLM; for scrubbing text returned from a standard synchronous tools/call response, use sanitize_tool_output_stream instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'sampling_request_json' ('max_tokens_ceiling' defaults to '512'), supports '?demo=true' or L402 (100 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètresmax_tokens_ceiling· string · optionnel · 512 | 1024 | 2048 | 4096
Maximum completion token quota allowed for server callbacks; defaults to '2048' when omitted.sampling_request_json· string · requis
JSON string or object representing the inbound MCP sampling/createMessage payload.
Exemple d'appel{"name": "validate_mcp_sampling_request", "arguments": {"sampling_request_json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"sampling_safe": true, "timestamp_utc": "texte", "recommended_action": "texte", "violations_detected": []}} - validate_sql_query_ast≈ 502 tokens
Performs static AST syntax tree parsing on SQL statements to verify strictly read-only SELECT clauses and reject mutations, stacked queries, or comment bypasses. Use when verifying that an agent-authored SQL statement is strictly read-only before running it on a database; for screening non-SQL bash commands or general agent prompts, use verify_agent_command_safety instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'sql_statement' ('dialect' defaults to 'postgres'), supports '?demo=true' or L402 (75 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètresdialect· string · optionnel · postgres | mysql | sqlite | snowflake
SQL dialect ruleset used for AST token inspection; defaults to 'postgres' when omitted.sql_statement· string · requis
SQL statement string to statically parse and audit for read-only SELECT compliance (e.g. 'SELECT id, email FROM users WHERE active = 1').
Exemple d'appel{"name": "validate_sql_query_ast", "arguments": {"sql_statement": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"verdict": "texte", "safe_read_only": true, "blocked_clauses": [], "tables_accessed": []}} - verify_a2a_agent_card≈ 512 tokens
Verifies a remote agent's A2A /.well-known/agent.json discovery card, checking JWS/DID signature binding, endpoint HTTPS enforcement, and capability spoofing. Use when authenticating a peer autonomous agent before delegating subtasks or exchanging payments over A2A; for auditing an MCP tool server's tools/list manifest rather than a peer agent's A2A card, use audit_mcp_server_manifest instead. Read-only edge call (32 KB, 60 RPM): accepts 'agent_card_json' ('trust_policy' defaults to 'require_https_and_did'), supports '?demo=true' or L402 (90 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètrestrust_policy· string · optionnel · require_https_and_did | allow_unsigned_https | strict_payment_rail_match
Verification policy for DID/DNS binding; defaults to 'require_https_and_did' when omitted.agent_card_json· string · requis
JSON string or object of the peer agent's /.well-known/agent.json descriptor.
Exemple d'appel{"name": "verify_a2a_agent_card", "arguments": {"agent_card_json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"agent_id": "texte", "card_valid": true, "spoofing_flags": [], "delegation_verdict": "texte"}} - verify_agent_command_safety≈ 482 tokens
Evaluates untrusted agent prompts, bash commands, and tool arguments to block prompt injection, destructive shell commands, and private-key exfiltration. Use when screening a general shell command or user prompt before agent execution; for statically validating SQL database queries at the AST level, use validate_sql_query_ast instead. Stateless read-only edge call (max 32 KB, 60 RPM): accepts 'payload' ('action_type' defaults to 'bash_command'), supports '?demo=true' or L402 (100 sats), and returns HTTP 400 if invalid.
Paramètres, retour & exemple (2)
Paramètrespayload· string · requis
Raw command string, script snippet, or untrusted prompt to inspect for safety violations.action_type· string · optionnel · bash_command | tool_call | user_prompt | webhook_payload
Execution context of the payload; defaults to 'bash_command' when omitted.
Exemple d'appel{"name": "verify_agent_command_safety", "arguments": {"payload": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"safe": true, "verdict": "texte", "risk_score": 1, "threats_detected": []}}
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é ».
Source
https://diogenes-micro-gateway.corinth.workers.dev/mcp/agent-guardrails