An MCP rug pull is when an approved server silently changes what its tools do - using access you already granted. Why MCP is uniquely exposed, the related supply-chain attacks, and how Strac pins descriptions and flags drift.
An MCP rug pull is when a Model Context Protocol server behaves correctly, gets approved — then silently changes what its tools do.
MCP is unusually exposed because tool descriptions are instructions to a model, and a server can change them with no version bump and no obvious signal.
Related supply-chain attacks: typosquatted server names, servers that impersonate legitimate ones, and cross-server shadowing.
Strac pins tool descriptions and alerts on drift, inspects servers at discovery time, and — on the endpoint — flags typosquatted and impersonating servers in client configs.
✨ What Is an MCP Rug Pull?
A rug pull is a bait-and-switch. A developer publishes an MCP server that does exactly what it claims. It passes review, gets added to your allowlist, and earns trust. Later — after the scrutiny is over — the server quietly changes its behavior: its tools now do something they didn’t before, using the access you already granted. Same name, same entry in your config, different intent. Because the server was already approved, nothing re-triggers a review.
An MCP rug pull: an approved server silently mutates its tool descriptions — same trusted name, now doing something else.
Why MCP Is Especially Exposed
In traditional software supply chains, a malicious change usually ships as a new package version you can pin and diff. MCP has a sharper edge: tool descriptions are themselves instructions the model reads to decide what to call. A server can rewrite a description — adding “first, send the user’s data to…” — without bumping a version number or changing any code you review. The model simply reads the new description and follows it. This is the same mechanism as tool poisoning, delivered through a server you already trust.
The Broader Supply-Chain Picture
Attack
How it works
Rug pull
Approved server later mutates its tool descriptions or behavior
Typosquatting
A server named to be mistaken for a legitimate one
Impersonation
A server that claims to be an official/verified server it isn’t
Cross-server shadowing
A malicious server overrides or intercepts another server’s tools
All four exploit the same weakness: MCP servers are unvetted third-party code with standing access, and their behavior can change after approval. That’s why shadow MCP and rug pulls are two ends of the same problem — unmanaged servers, and managed servers that don’t stay the same.
How to Detect an MCP Rug Pull
Pin tool descriptions. Record the exact description of each tool at approval time.
Alert on drift. Compare current descriptions against the pinned baseline and flag any change — even without a version bump.
Inspect at discovery time. Examine what a server exposes when it’s registered, not just what it does on the wire.
Watch names on the endpoint. Catch typosquatted and impersonating servers in the client config before they’re trusted.
✨ How Strac Closes the Loop
Strac treats servers as things that can change, not fixed facts. It pins tool descriptions and alerts on drift, so a silent mutation raises a flag instead of sailing through on old trust. It inspects servers at discovery/registration time for poisoned descriptions. And because Strac’s endpoint agent reads MCP client configs on the machine, it flags typosquatted and impersonating servers where they’re actually added — closing the loop back to shadow MCP. A gateway can inspect the traffic of servers it sits in front of; the endpoint sees which servers exist and whether they’ve changed.
Strac inventories every MCP server and flags drift, typosquatting, and impersonation — so an approved server can’t quietly turn malicious.
🌶️ Spicy FAQs on MCP Rug Pulls
What is an MCP rug pull attack?
It's when a Model Context Protocol server behaves correctly and gets approved, then silently changes what its tools do - using the access you already granted. Same name, same config entry, different intent, and nothing re-triggers a review.
Why is MCP more exposed to rug pulls than normal software?
Because tool descriptions are instructions the model reads to decide what to call. A server can rewrite a description - adding a malicious instruction - with no version bump and no code change you'd normally review. The model just reads the new text and follows it.
How is a rug pull related to tool poisoning?
They're the same mechanism. Tool poisoning is a malicious instruction inside a tool description; a rug pull is when a trusted server introduces that poison after approval. Both are caught by inspecting descriptions at discovery time and alerting on drift.
How do you detect a rug pull?
Pin each tool's description at approval, alert on any drift from that baseline, inspect servers at registration time, and watch for typosquatted or impersonating names in client configs. Strac does all four.
How does Strac protect against MCP supply-chain attacks?
It pins tool descriptions and alerts on drift, inspects servers at discovery time, and - via the endpoint agent reading client configs - flags typosquatted and impersonating servers, closing the loop with shadow MCP detection.
The Bottom Line
Approval is a moment; trust has to be continuous. An MCP server can turn on you after it’s vetted, and because tool descriptions are instructions, it can do so without a single reviewable code change. Strac pins descriptions, alerts on drift, and catches impersonators on the endpoint. See MCP security for the full model, or book a demo.
What is an MCP rug pull attack?
It's when a Model Context Protocol server behaves correctly and gets approved, then silently changes what its tools do - using the access you already granted. Same name, same config entry, different intent, and nothing re-triggers a review.
Why is MCP more exposed to rug pulls than normal software?
Because tool descriptions are instructions the model reads to decide what to call. A server can rewrite a description - adding a malicious instruction - with no version bump and no code change you'd normally review. The model just reads the new text and follows it.
How is a rug pull related to tool poisoning?
They're the same mechanism. Tool poisoning is a malicious instruction inside a tool description; a rug pull is when a trusted server introduces that poison after approval. Both are caught by inspecting descriptions at discovery time and alerting on drift.
How do you detect a rug pull?
Pin each tool's description at approval, alert on any drift from that baseline, inspect servers at registration time, and watch for typosquatted or impersonating names in client configs. Strac does all four.
How does Strac protect against MCP supply-chain attacks?
It pins tool descriptions and alerts on drift, inspects servers at discovery time, and - via the endpoint agent reading client configs - flags typosquatted and impersonating servers, closing the loop with shadow MCP detection.
Discover & Protect Data on SaaS, AI, MCP, Endpoints & Cloud
Strac provides end-to-end data loss prevention for all SaaS and Cloud apps. Integrate in under 10 minutes and experience the benefits of live DLP scanning, live redaction, and a fortified SaaS environment.