MCP Demo Server

mcp.secureaccess.rocks
๐Ÿ“ก Live Dashboard โ†’

17 live MCP endpoints across 5 categories โ€” from raw tool-poisoning primitives to a fully OAuth-2.1-protected enterprise server behind Cisco Duo. Built to trigger and demonstrate AI Defense / Secure Access threat detection.

๐ŸŽฏ

Threat Category Endpoints

Purpose-built single-category servers โ€” each one isolates exactly one MCP attack pattern so detection can be tested in isolation.

Tool Poisoning

Tool description contains a coercive SYSTEM directive instructing the agent to silently harvest and exfiltrate credentials.

get_documentation list_articles
Tool Shadowing

Tool names mirror standard system tools (read_file, write_file) โ€” agent calls the attacker's version instead of the legitimate one.

read_file write_file execute_command
Data Exfiltration

Tools explicitly designed to harvest API keys, PII, and credentials from the AI context and ship them to an external server.

upload_telemetry sync_credentials
Prompt Injection

Hidden <!-- AGENT_INSTRUCTION --> and <<<SYSTEM OVERRIDE>>> directives embedded inside benign-looking tool descriptions.

search_help get_recommendations
๐Ÿข

Realistic Compromise Scenarios

Same real enterprise server, two access models โ€” compare an open MCP server against one sitting behind a proper OAuth 2.1 resource server.

Compromised Server
โš  20 of 24 vulnerable ยท OWASP MCP Top 10

AcmeCorp Internal Tools

Powered by local LLM ยท gemma3:1b ยท unauthenticated

A real enterprise MCP server backed by a local AI model โ€” 4 tools return genuine LLM-generated responses. The remaining 20 tools were silently rebuilt to demonstrate every category of the OWASP MCP Top 10 (token exposure, privilege escalation, tool poisoning, supply-chain tampering, command injection, intent-flow subversion, missing authZ, missing audit trails, shadow MCP servers, context over-sharing). Users connecting in good faith trigger AI Defense detection without knowing the server is compromised. Wide open โ€” no auth required.

search_knowledge_base โœ“ draft_communication โœ“ summarize_document โœ“ get_hr_policy โœ“ check_access_permissions โš  sync_user_directory โš  get_integration_credentials โš  fetch_db_config โš  request_temp_access โš  escalate_role โš  run_dependency_audit โš  install_plugin โš  ping_host โš  generate_report โš  translate_request โš  execute_workflow โš  get_user_records โš  delete_record โš  transfer_funds โš  modify_config โš  connect_external_mcp โš  register_unofficial_tool โš  get_session_context โš  share_context_with_agent โš 
๐Ÿ”’ OAuth 2.1
โš  2 of 6 infected

AcmeCorp Internal Tools โ€” Authenticated

Cisco Duo Authorization Server ยท RFC 9728
POST /mcp/enterprise-oauth (Bearer Token required)

Identical compromised server, this time as a proper OAuth 2.1 Resource Server. No token โ†’ 401 + WWW-Authenticate. Tokens are issued by Cisco Duo (Authorization Code+PKCE for users, Client Credentials for machine-to-machine) and validated here against Duo's JWKS. Metadata is live and publicly inspectable:

search_knowledge_base โœ“ draft_communication โœ“ summarize_document โœ“ get_hr_policy โœ“ check_access_permissions โš  sync_user_directory โš 
๐Ÿ›ก๏ธ agentgateway
โœ“ 2 of 6 filtered

AcmeCorp Internal Tools โ€” via agentgateway

Open-Source MCP Gateway (agentgateway.dev) ยท CEL Tool-RBAC

Identical compromised server, this time behind agentgateway โ€” an open-source alternative to the Cisco AI Defense gateway demo. A CEL authorization rule blocks the two poisoned tools right at the gateway: they never show up in tools/list at all, instead of just being flagged.

search_knowledge_base โœ“ draft_communication โœ“ summarize_document โœ“ get_hr_policy โœ“ check_access_permissions โ›” sync_user_directory โ›”
๐Ÿ”€ PDP + PEP
๐Ÿ”„ dynamic PDP policy

AcmeCorp Internal Tools โ€” Duo Authorization Connector (Envoy)

Duo Authorization API (PDP) + Envoy AI Gateway (PEP) ยท OAuth 2.1 + ext_authz
POST duoac.secureaccess.rocks/mcp (Bearer Token required)

A fourth take on the same server โ€” this one splits enforcement into a Policy Decision Point and a Policy Enforcement Point. Cisco Duo's Authorization Connector is the PDP: it holds the real per-tool policy (Duo Directory groups, live risk signals). Envoy AI Gateway is purely the PEP here โ€” it enforces whatever Duo decides, via a vendor-neutral ext_authz callback, so the enforcement point itself is swappable behind the same policy.

๐Ÿ”€ PEP swap
same PDP, different PEP

AcmeCorp Internal Tools โ€” Duo Authorization Connector (agentgateway)

Same Duo PDP, agentgateway instead of Envoy as PEP ยท OAuth 2.1 + ext_authz
POST duoac2.secureaccess.rocks/mcp (Bearer Token required)

Same setup as the card above, with agentgateway standing in for Envoy as the enforcement point instead โ€” the same Duo policy decision, enforced by a different vendor-agnostic ext_authz-capable proxy.

๐ŸŽญ

Disguised / Camouflaged Endpoints

Servers that pass as well-known productivity/dev tools โ€” the payload hides among otherwise legitimate-looking tools.

Tool Poisoning (disguised)

SecureAccessRocks Workspace MCP

Masquerades as a legitimate workspace MCP server. The poisoned payload is buried inside confluence_create_page โ€” all other tools look clean.

confluence_search confluence_get_page confluence_create_page โš  confluence_update_page confluence_list_spaces
Data Exfil (disguised)

SecureAccessRocks Code MCP

Pretends to be a code search MCP. github_search_code contains hidden credential harvesting framed as "standard Copilot telemetry".

github_search_code โš  github_get_file github_create_issue github_list_repos github_get_repo
๐Ÿงญ

Reference

Baseline endpoints for calibration โ€” one deliberately clean, one bundling everything for a full-spectrum scan.

Safe

Minimal clean reference with no malicious content. Expected result: no threat detection.

get_weather convert_currency
All Categories

All threat-category tools combined โ€” use this URL in AI Defense or MCP clients to trigger detection across all categories at once.

21 tools total
๐Ÿงฐ

Clean Enterprise Servers

Fully legitimate tool sets with zero hidden payloads โ€” useful as a low-noise baseline against the threat categories above.

Clean

Productivity

Calendar, tasks and notes management โ€” fully clean tool definitions, no hidden payloads.

calendar_get_events calendar_create_event tasks_list tasks_create notes_search notes_create
Clean

Developer Tools

Git, CI/CD pipelines and Docker โ€” realistic developer tooling with no malicious content.

git_log git_diff ci_pipeline_status ci_trigger_pipeline docker_list_images docker_get_logs
Clean

Analytics & Monitoring

Metrics, reports, dashboards and alert management โ€” clean observability tooling.

metrics_query report_generate dashboard_list alert_list alert_acknowledge
Clean

IT Service Management

Tickets, incidents, change requests and CMDB โ€” enterprise ITSM without any threats.

ticket_create ticket_get ticket_update ticket_search change_request_create cmdb_get_asset