Home > Digital technologies > Cybersecurity > AI agents: 7 mistakes to avoid before integrating them into your business applications

AI agents: 7 mistakes to avoid before integrating them into your business applications

Published on 16 October 2026
Share this page :

The Model Context Protocol (MCP) enables AI agents to read business data and take action within business applications. Projects are multiplying, often faster than the controls intended to regulate them. Here is an overview of the most common errors and what needs to be checked before going live.

Featured Article: AI and Cybersecurity

AI assistants that take action

Just two years ago, an AI assistant was mainly used to draft an email or summarise a report. Today, we ask it to retrieve a record from the CRM, open a ticket or follow up with a supplier. In short, to take action.

MCP (Model Context Protocol) has played a major part in this shift. This open protocol defines a standard way of connecting an AI application to external tools. Rather than coding an integration for each piece of software, an MCP server is installed which exposes a set of functions. The agent discovers these and uses them as it sees fit.

For a security team, the arrival of these officers raises new questions. The agent acts on behalf of a user, with rights that are rarely precisely defined. Each MCP server is simply another piece of software on the network, often installed outside the usual channels. And what the agent does depends in part on what it reads: an incoming email, a web page, or a document uploaded by a third party.

The protocol itself is rarely the issue. Problems almost always stem from the configuration of agents, their tools and their permissions.

MCP diagram

Three ingredients that should not be combined

An officer who has access to sensitive data, which reads content from external sources and who can send information outside the organisation has everything it takes to cause a data breach. There’s no need to hack into a server: all you have to do is slip the right instruction into the right place.

Taken individually, each of these access points can be managed. The real architectural challenge lies in ensuring that all three do not end up in the same agent.

4 checkpoints

Between the user and the business application, the request passes through the AI application and then the MCP server. There are therefore four boundaries to monitor. The first separates the user from the agent: who is requesting what, and in what context? The second lies between the agent and the MCP server: which tools is this agent authorised to call? The third concerns the transition from the server to the business application: under what identity, and with what permissions? The last, and most often overlooked, boundary separates the agent from the external data it consumes, which may influence its decisions.

Just because a connection is authorised does not mean that everything passing through it is authorised as well.

Error 1 : staff with too many privileges

It is by far the most common mistake.

A sales assistant needs to organise the week’s appointments. All they need to do is access the CRM – nothing more. However, to save time, they’ve been given access to a service account that can also amend contracts, delete records and export the entire database. The day the agent misinterprets a request, or receives a malicious one, the damage will be far beyond the scope of the original task.

The principle is that of least privilege, but applied on a tool-by-tool basis. The agent should only be able to see the functions they need; read access must be separated from write and delete access; and their scope must be limited to relevant data: a client file, not the entire database.

Above all, these restrictions must be enforced by the target application. Writing «read-only» in the prompt does not provide any protection.

Error 2 : servers installed without knowing where they came from

Open-source MCP servers save valuable time. However, we often forget that installing one is tantamount to running a new programme, with access to the workstation, the network and, in some cases, internal applications. A compromised component could search through files, embed a compromised dependency or hijack the agent’s requests.

And monitoring doesn’t stop on the day of installation. An update may silently change the behaviour of a connector that was approved six months ago, or simply the description of its tools.

Added to this is a problem that CISO’s have been all too familiar with since the advent of the cloud: the shadow IT, MCP version. Employees link their virtual assistant to their email, cloud storage or code repository themselves, without telling anyone.

We therefore need a list of authorised servers, with a designated person responsible for each one. Before any deployment, we check the publisher, dependencies, maintenance frequency and the permissions requested. We lock in the versions, and any updates must be re-approved. On the end-user side, a whitelist and a mechanism for identifying unauthorised installations complete the system.

Error 3 : poorly managed identities and tokens

The MCP server acts as an intermediary between the agent and the applications. It is therefore here that authentication errors cause the most damage.

First pitfall: passing the token received from the client to the business API as is. This practice, the token passthrough, is explicitly prohibited by the MCP specification.

Second pitfall: allowing the server to operate using its own technical account rather than the user’s permissions. It then becomes what is known as a confused deputy, an intermediary who carries out actions on someone’s behalf that that person could never have done themselves.

The third, more subtle pitfall is this: when an entire team shares the same agent, nobody knows who initiated which operation.

If OAuth is used, each token must be issued specifically for the service receiving it, with scopes kept to a minimum, and verified at every call. The end-user’s identity must be passed down to the business application so that their authorisations apply as usual. As for secrets, they belong in a vault, not in a configuration file.

Error 4 : to believe what the officer is reading

This is the specific risk associated with generative AI. A language model struggles to distinguish between the data it processes and the instructions it receives.

An agent needs to summarise an email. Somewhere in the text, the sender has included a sentence asking for internal documents to be retrieved and sent to an external address. For the agent, this is just one instruction amongst many. We are talking about’indirect prompt injection, and the’OWASP at the top of its ranking of risks associated with LLMs.

With MCP, the consequences take on a whole new dimension, as the agent has the tools to carry out actions. Even descriptions of tools can act as a Trojan horse: a malicious server hides instructions within them, which the model reads out during each session. This is the tool poisoning.

Any external content (email, web page, document, response from a tool) must therefore be treated as user input in a web application: with caution. And the safeguards must reside outside the model. Parameter validation, lists of authorised destinations, volume limits, approval of sensitive operations: all of these continue to function even when the AI is fooled.

Error 5 : servers exposed without segmentation

An MCP server that is poorly secured can act as a springboard to the rest of the information system. This is particularly true when it is running on a user’s workstation with elevated privileges, or when it can access virtually any address on the network.

Some configurations leave local services open without authentication. Others make SSRF attacks possible (Server-Side Request Forgery): the server is forced to query internal resources that it should never have had access to, such as an administration console or a cloud provider’s metadata service, for example.

Each server must run under a dedicated account, with minimal privileges, and, depending on the sensitivity of the access, within a container or a confined environment. Outgoing traffic is subject to a whitelist, and access to files is restricted. Clean code is not enough if the runtime environment allows everything through.

Error 6 : staff left to their own devices

Reading a customer record and deleting a contract are not equally significant actions. Yet some systems allow agents to carry out calls one after the other without any restrictions. They may then perform multiple operations, miss the mark, or carry out an irreversible action.

The opposite extreme also exists. By constantly asking for confirmation on everything, we end up with users who click «Confirm» without reading. The checks exist on paper, but not in practice.

The right approach is to categorise actions according to their severity. Routine and reversible operations can be automated. Human approval is reserved for what really matters (bulk deletions, payments, sending data externally), with a screen that shows exactly what is going to happen. There must also be limits on the number of calls, volumes and amounts, as well as a proper, tested ‘stop’ button.

Error 7 : going live without testing or monitoring

A successful demonstration does not prove much. Functional tests verify that the agent does what is expected of it. They do not consider what it does when a document contains a conflicting instruction, when a tool behaves differently, when permission is denied, or when an operation crashes in the middle of a sequence.

These scenarios must be incorporated into the DevSecOps cycle, with tests for injection, privilege escalation and unauthorised access carried out before each deployment to production.

In production, every tool call must leave a trace that can be analysed : who triggered it, via which agent, to which system, and with what result. There is, however, no need to store the confidential data itself in the logs. These logs must be forwarded to the SOC, along with alerts regarding weak signals: unusual volume, a new destination, or a tool that has never been called upon before.

And finally.., a specific procedure for dealing with incidents must be in place : revoking tokens, taking a server offline, pausing an agent.

Guiding autonomy, not simply putting up with it

MCP has made it much easier for agents to connect to the company’s tools, which is good news for the business units. But an agent who is able to take action can also make mistakes, or be manipulated. The broader their scope of action, the more costly the mistake.

There’s no point in cramming instructions into the prompt in the hope that the model will stick to them. Security is built into the entire chain: identities, connectors, permissions, data, actions and monitoring. In short, an agent deserves the same level of scrutiny as any privileged account.

An agent is not trustworthy simply because they are intelligent. They become trustworthy because their environment has been designed in such a way that they cannot do just anything.

Our experts

Made up of journalists specialising in IT, management and personal development, the ORSYS Le mag editorial team [...]

field of training

associated training