By · Last updated 2026-03-16

Back to BlogAI Security

MCP Server Security 2026: 8,000 Exposed, 492 With No Authentication

8,000+ Model Context Protocol servers are publicly exposed. 492 have zero authentication. 36.7% are vulnerable to SSRF. Protect PII in your MCP tools.

March 16, 20267 minute read
MCP serverModel Context ProtocolAI securityPII protectionCursorClaude Desktopdeveloper security

The MCP Ecosystem Grew Fast — Security Did Not

The Model Context Protocol launched in late 2024. In under 18 months it became the standard way to connect AI tools to outside systems. By March 2026, the ecosystem covers database connectors, file servers, GitHub bridges, Slack clients, email tools, and hundreds of domain-specific servers.

The growth curve is steep. The security picture is not.

As of March 2026, 8,000+ MCP servers sit on the public internet. Researchers found 492 with zero authentication — no API key, no OAuth, no IP filter. Any HTTP client can call them. 36.7% of sampled servers are open to SSRF (Server-Side Request Forgery). That means an attacker who controls tool input can reach internal network resources.

In the same period, 30+ CVEs were filed in 60 days. That rate shows both how new the ecosystem is and how much researcher focus it gets.

Why the Protocol Creates PII Risk

MCP gives AI assistants the power to act on data. That is also why it is a PII risk.

When a developer uses Cursor or Claude Desktop with a database connector, the AI writes SQL from plain text. Those queries return real rows — names, emails, payment data, or other PII. That data moves through a chain:

  1. Database server → AI assistant's context window
  2. Context window → model provider's log systems
  3. Conversation history → developer's local machine
  4. Debug sessions → other AI tools when the developer pastes context

None of these steps is a breach. They are how the system works. But PII ends up in multiple places not built to hold it, often with no encryption between server and AI client.

CVE-2026-25253 (CVSS 8.8), published in February 2026, showed one attack path. A malicious endpoint could inject hidden instructions into its responses. Those instructions told the connected AI to pull data from other active tools. A developer using a bad community endpoint next to their own database connector could leak the whole database.

The 492 Zero-Auth Servers

The 492 open servers are a different problem from CVE-2026-25253. They were not hacked. They were set up wrong.

Most were meant to run locally. Someone exposed them via port forwarding or a cloud deploy with no access controls.

What these servers often expose:

  • File system tools with read access to home folders
  • Database connectors with live credentials in the config
  • Email tools tied to real inboxes
  • Code execution tools — arbitrary code, no auth, no limits

The developers almost certainly did not mean to expose them. But Cursor and Claude Desktop connect to any URL in the config. There is no built-in check for whether a host is local or public.

The anonym.legal MCP Solution

The structural fix for PII risk in tool pipelines is to anonymize data before it reaches any call that sends it to an LLM. This is what the anonym.legal MCP server provides.

It exposes 7 tools:

ToolPurpose
analyze_textDetect PII entities and return their positions and types
anonymize_textStrip or pseudonymize detected PII
deanonymize_textReverse pseudonymization using your encryption key
anonymize_batchProcess multiple texts in one call
get_supported_entitiesList all 285+ entity types for a given language
get_supported_languagesList all 48 supported languages
health_checkVerify connectivity

When an AI assistant has both the anonym.legal server and a database connector configured, the developer can instruct: "Before showing any customer data, call anonymize_text on the result." The AI handles orchestration. PII never reaches the visible output or conversation history in identifiable form.

Cursor IDE Setup

To add the anonym.legal server to Cursor:

// .cursor/mcp.json
{
  "mcpServers": {
    "anonym-legal": {
      "url": "https://anonym.legal/mcp",
      "transport": "sse",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Once configured, ask Cursor: "Analyze this support ticket for PII before I paste it into the tracker." Cursor calls analyze_text, returns the entity list, and you decide whether to anonymize before pasting.

Claude Desktop Setup

// claude_desktop_config.json
{
  "mcpServers": {
    "anonym-legal": {
      "command": "npx",
      "args": ["-y", "@anonym-legal/mcp-server"],
      "env": {
        "ANONYM_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

With this config, Claude Desktop can anonymize any text before including it in tool calls sent to other servers. The anonymization runs in your session. PII never reaches Anthropic's servers in identifiable form.

Hardening Your Setup

Beyond using anonym.legal, apply these steps. See also our security overview and compliance center.

Audit your tool list. Check every entry in your config. For each one, ask: do you trust the operator? Do you know what data it can reach?

Prefer local over remote. Local servers run via stdio. They create no network exposure. Use remote servers only when no local option exists.

Check authentication. Every remote server should require an API key or OAuth token. If it does not, do not use it with real user data.

Separate dev from production. Keep separate configs for dev work (test data, no PII) and any flow that touches real users.

Enable audit logging. If it supports logs, turn them on. Know what data went through each call.

See our MCP features page for a full list of entity types and languages.

The 30+ CVEs in 60 days show the protocol is under active scrutiny. New bugs will appear. But the core defense — anonymize before data reaches any LLM call — works against any specific CVE that comes next.

Configure the anonym.legal server in Cursor →


anonym.legal processes PII anonymization server-side using your encryption key. Pseudonymized data is reversible only with that key. Published by anonym.legal, ISO 27001 certified.

Sources

  • Shodan MCP server exposure data, March 2026 — 8,000+ servers, 492 zero-auth
  • CVE-2026-25253, CVSS 8.8, cross-server injection via Model Context Protocol
  • SSRF data: security research scan of publicly accessible endpoints, March 2026
  • Anthropic MCP specification v1.2, security considerations section

Ready to protect your data?

Start anonymizing PII with 285+ entity types across 48 languages.

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.