Aventura, Florida · serving clients across the United States (305) 404-9404Toll-free (800) 767-8566Emergency? Get a call within 1 hour
Technology and professional services Illustrative engagement

First AI agents with tool access secured: least-privilege tools, human approval and prompt-injection testing

A mid-size company of about 400 employees, a leader in its segment.

Scale
3 agents, 14 tools, 2 approval tiers, 120 adversarial test cases, 1 gateway with full logging
Engagement
10 weeks from design to a controlled pilot

The challenge

Three teams were building AI agents that could read email, query the CRM and ticketing system and draft changes. Each used a shared service account and broad API keys, and nobody had tested what happened when an agent read a document that contained hidden instructions. Security wanted the pilot to continue, but not with an agent able to send data outside the company or change records on its own.

What our team delivered

  • Inventory of every agent, tool and data source, with an owner for each and an agent identity of its own instead of a shared account
  • Least-privilege tools: 14 tools cut down to narrow, scoped actions, read-only by default, with short-lived credentials and no direct database access
  • A gateway between agents and tools that enforces an allow list, rate limits and egress rules, and logs every call with the user, the agent and the arguments
  • Two approval tiers: reads and drafts run on their own, while sending external mail, changing records and moving money need a named person to approve in the tool
  • Prompt-injection testing with 120 adversarial cases in documents, web pages, email and tool output, run again after every prompt or tool change
  • A review of each connected MCP server and a runbook to disable an agent in minutes, with alerts on unusual tool use

Result

The pilot went live with agents that cannot act outside their scope, and every action is attributable to an agent and a person. In the first test run, 23 of 120 injection cases changed agent behavior; after the fixes, none caused an unapproved action. The security team now has a repeatable gate before any new tool is connected. This is an illustrative engagement that describes the kind of work our team does; details are composite.

Get this for your company

Related services with fixed prices and a written scope.

AI agent bot, standard

One bot for a task that crosses two systems or handles varied documents, with exception handling and a review queue for your team.

About 3 to 4 weeks

$5,900 per bot

Details

Initial assessment of public endpoints

What an attacker can see and reach from the internet: your domains, mail, websites, remote access and cloud exposure.

Report within 5 business days of kickoff

$1,000 per assessment

Details

Show 2 more

Clayton Secure program

One monthly program that bundles monitoring, patching, backups, email protection and security awareness for your whole team. Priced per team member.

Onboarding starts within 10 business days

$150 per team member, per month

Details

After you purchase, we contact you within 1 hour, any time of day or night, to start onboarding.

No payment is taken online. When we call you within the hour we confirm the scope and send an invoice (ACH, card or crypto).

Every agent tool call passes one checkpoint

Agents reach MCP servers only through a gateway that checks policy, enforces a per-agent scope allow-list and logs every call to the SIEM. A call outside the allow-list is blocked. A local stdio server started on a laptop skips the gateway, so it needs its own control.

Every agent tool call passes one checkpointTwo AI agents send tool calls to an MCP gateway that performs a policy check, applies a scope allow-list and writes a log. Allowed calls continue to a CRM server, a ticket server and a data store. A call to a payments tool is outside the allow-list and is blocked at the gateway. Every call is logged to a SIEM. A dashed red path from one agent goes directly to a local stdio server and bypasses the gateway, with no policy check and no log. AGENTSMCP SERVERSAgent Aticket triageAgent Bfinance helperMCP gatewaypolicy · scope · logCRM serverread toolsTicket serverread, commentData storeread onlyPayments toolnot allowedSIEMaudit logLocal stdio serverno gateway, no log1 · agent sends a tool call2 · gateway checks scope and logs the call3 · out-of-scope call blocked and loggedAllow-list per agent and per toolEvery call loggedStdio bypasses the gateway

Three approval tiers for AI agents

Every action an agent can take falls into one of three tiers: it runs on its own, a named person approves it first, or a human always does it. The examples are illustrative; each firm draws its own lines during scoping.

Three approval tiers for AI agentsThree side-by-side cards. Runs on its own: reading, drafting, searching approved sources, writing its own log. Needs approval: external email, changing records, widening access, running scripts. Never automated: moving money, changing bank details, switching off logging, deleting backups, signing contracts.What an agent may do, by approval tierRuns on its ownLow impact, easy to undoRead and summarise filesDraft text for reviewSearch approved sourcesWrite its own activity logNeeds approvalA named person says yesSend email outside the firmChange a customer recordGrant or widen accessRun a script on a serverNever automatedA human does it, every timeMove moneyChange bank detailsSwitch off logging or alertsDelete backupsSign a contractImpact and difficulty of undoing rise from left to rightExample tiers only. The lines between them are set per firm, per workflow.

An agent with its own identity and its own token

A named human sponsors each agent. The agent gets its own identity from a blueprint, signs in and receives a token bound to one audience with narrow scopes. The resource server validates the audience, so a token meant for one resource is rejected anywhere else. No passthrough.

An agent with its own identity and its own tokenA human sponsor creates an agent identity from a blueprint. The agent identity requests an OAuth access token from the authorization server, which returns a token with an audience set to resource A and the scope tickets.read, and records the sign-in in the sign-in logs. The agent presents the token to resource A, which validates the audience and accepts it. Resource A then tries to pass the same token on to resource B, which rejects it because the audience does not match. ACCESS TOKENaud: resource Ascope: tickets.readsub: agent identitySponsorhuman ownerAgent identityfrom a blueprintAuth serverissues tokensSign-in logsResource Achecks audResource Baud mismatchno passthrough1 · sponsor creates the agent identity2 · token issued: audience and scopes3 · resource validates the audience4 · token for another resource is rejectedAudience-bound · short-lived tokensScopes per agentSponsor accountable

How we audit an MCP deployment

We inventory every server, read its configuration and manifest, scan statically, test authorization against the MCP specification, red-team with adversarial prompts, map each finding to OWASP agentic categories, and retest after the fix.

How we audit an MCP deploymentA seven-step audit flow. Step one inventories MCP servers, local and remote. Step two reads configuration and manifests. Step three is a static scan of tool descriptions and permissions. Step four checks authorization against the MCP specification: resource indicators, audience, PKCE and issuer. Step five runs red-team prompts for injection and abuse. Step six maps findings to OWASP agentic categories. Step seven is remediation and retest, ending in a report. Typical findings are tool poisoning, excessive scope, token passthrough and missing audit logs. Inventorylocal and remote1Read configmanifests, config2Static scantool descriptions3Authorizationper the MCP spec4Red-team promptsinjection, abuse5Map to OWASPAgentic categories6Fix and retestre-test same cases7Reportfindings + evidence8STEP 4 CHECKSresource indicatorsaudiencePKCEissuerTYPICAL FINDINGStool poisoningexcessive scopetoken passthroughChecked against the MCP specOWASP Agentic mappingRetest before close

Do you know if your company is safe?

Speak with a security engineer today. The first assessment call is free and confidential.

CallFree assessment