Model Context Protocol Rewrite Leaves More Security Decisions to Developers
In a significant update to the Model Context Protocol (MCP), a protocol primarily designed to allow artificial intelligence (AI) agents to interact with external tools, major changes have been introduced that address a longstanding security weakness. However, this latest revision is not without controversy, as it inadvertently creates several new vulnerabilities that could compromise digital security.
The recent alterations were announced by the protocol’s lead maintainers, David Soria Parra and Den Delimarsky, whose insights were disseminated in a blog post detailing the update. This revision comes nearly three years after MCP was initially launched. The MCP acts as a connector between AI agents and various external tools like databases or booking systems, facilitating seamless interactions between these platforms. With this update, one of the key features—session tracking—has been completely overhauled.
Previously, session tracking provided a crucial layer of security. Under the old system, when an AI agent engaged with an external tool, it would receive a session ID, akin to a wristband issued at a concert, which had to be presented in every subsequent communication. This served as the sole barrier keeping impersonators at bay; if malicious actors intercepted or guessed this ID, they could impersonate the legitimate user. The update eliminates this session ID requirement, promoting a more flexible architecture where any server can handle requests without needing to remember previous interactions. This change ostensibly fixes the old vulnerability but raises questions about how security will be managed moving forward.
Maxim Zavodchik, the senior director of threat research at Akamai, who co-authored a blog analyzing these updates, emphasized that while companies benefit from new features under the MCP, they are responsible for implementing their own security checks. Without the session ID, security now largely depends on the diligence and protocols that developers choose to establish within their respective systems.
Compounding this issue, the manner in which identification is now managed has also shifted. Instead of genuine session IDs being issued by the server, a token resembling an order number will be used. This new method has its downsides, as the number becomes accessible in plain text during conversations, raising the risk of unauthorized access. Security researcher Maya Pik likened this to trading a bouncer who recognizes guests for a mere ticket—while the ticket can be reused by anyone who comes across it, the direct oversight has been significantly diminished.
The revised specifications do make an effort to address potential risks. For instance, if a server receives a tracking number from an AI agent that influences what the agent can access, the server is now mandated to verify that this tracking number has not been tampered with before granting access. Nevertheless, the guidelines do not provide explicit instructions on how to conduct such checks, placing the onus on developers to determine their methods. This flexibility, while beneficial in some contexts, means that varied implementations across different companies could result in inconsistent levels of protection.
Moreover, a significant change concerning file access could lead to even greater vulnerabilities. Previous versions of MCP included a feature called "Roots," which enabled host applications to dictate which files or folders an AI agent could access. This feature has now been replaced by a more fragmented system, requiring developers to establish file permissions through several optional methods. This new paradigm invites potential exploitation, as demonstrated by Pik’s example where an AI agent inadvertently accessed sensitive files—including passwords—simply because there were no strict permissions in place to govern its actions.
History has shown that security gaps are often not unique to new technologies. The redesign of MCP mirrors older security issues, such as "insecure direct object reference," where a system validates an ID but fails to ensure the legitimacy of its holder. Therefore, while the protocol aims to facilitate more powerful AI interactions with external systems, it also introduces an abundance of complexity that developers must navigate.
The documentation provided in this release also raises other security concerns. Each server must comprehensively explain its functions to an AI agent, which not only educates the agent but inadvertently arms potential attackers with an in-depth understanding of the system’s operations.
A new feature, MCP Apps, allows servers to return data paired with interactive interfaces like forms or buttons within the agent’s operational environment. However, security experts argue this innovation brings its own risks. If any component of this interface were to break from its safeguarded containment, the fallout could lead directly to a programmer’s files, heightening the possibility for malicious activity.
Previous iterations of MCP also encountered issues where access tokens were applied across different servers, leading to mismatches and unauthorized access. The updated rules address this concern through improved token structuring, requiring that tokens name the specific server they originate from. While this is a step forward, the practical application of such checks still hinges on the developers’ implementation.
Another area of concern highlighted by AI infrastructure company TrueFoundry deals with background tasks initiated by an AI agent. Without limits on the duration or number of such tasks, there exists the possibility for unchecked resource consumption, posing a distinct risk to operational efficiency.
In conclusion, the latest revisions to the Model Context Protocol represent a double-edged sword. On one side, the updates remedy existing weaknesses; on the other, they place a greater security burden on developers who must now navigate a more open and flexible framework. As industries increasingly rely on AI integrations, the importance of diligent security measures cannot be overstated. The success of these revisions will largely depend on how well developers adapt and implement security protocols within their systems.

