Security

Agents on real systems, without taking anyone's word for it.

The moment an agent can act on production, the question stops being what a model might say and becomes what it is permitted to do. This is how that is decided, enforced and evidenced.

See MCP Policies
The Palma console showing governed team spaces, surrounded by shields marking each one as checked

Posture

Where it runs, and what it never holds.

Most of the security question is answered by architecture rather than by features.

  • It runs on your infrastructure

    Docker, Kubernetes or bare metal, inside your network and in front of your own MCP servers. There is no shared tenancy to reason about and no data aggregation on our side.

  • Your identity provider stays the authority

    OIDC and SAML SSO with SCIM provisioning and just-in-time user creation. Palma is not an IdP and does not want to be one — it reads the groups you already maintain.

  • Credentials are not handed out

    Seven outbound strategies, including RFC 8693 token exchange and vault-held credentials, so a downstream system can be reached without its secret ever reaching an agent or a user.

On every call

Attribution is not optional.

A shared service account is where accountability goes to die. Every request through Palma carries all three principals, so the answer to “who did this” is a person — and the answer to “what happened” includes the calls that were stopped.

Every entry records
3
  • User
  • Agent
  • Host client
Outcomes recorded, not just successes
Allowed
Held for approval
Denied by policy
Rate limited

Controls

What is enforced at the call.

Every one of these applies before the request reaches your system, at the single point every agent-to-tool call passes through.

  • Least privilege, by construction

    A tool an identity is not entitled to is not listed to that identity. Access is decided by subject, group and token issuer, before anything is offered.

  • Approval for the actions that warrant it

    High-risk calls pause for a named approver mid-flight instead of failing silently or proceeding quietly.

  • Argument-level rules

    Policies decide on the contents of a request, not just its name — so a permitted capability can still be stopped on a specific value.

  • Rate limits at the gateway

    A looping agent is contained at the point of the call, before it becomes an incident downstream.

  • Secrets stripped from Skills

    Redaction runs before a Skill version is stored, and scanning blocks versions carrying injection, exfiltration or privilege-escalation patterns.

  • Scoped visibility for resources

    Tenant-wide, private by ownership chain, or restricted to a need-to-know allowlist — chosen per resource rather than assumed.

Evidence

An audit trail a reviewer can actually read.

Each entry names the person, the agent acting for them and the client it arrived through, alongside the tool, the server and the outcome. Failures carry their reason rather than a status code.

  • User, agent and host client on every call
  • Denials and rate-limit stops recorded alongside successes
  • Filterable by space, agent, server and status across the org
Palma activity timeline showing each tool call attributed to an agent acting on behalf of a named user via a specific client

Attribution

Who did this, answered properly.

Shared service accounts are how attribution dies. Every call carries the chain that produced it.

  • Three principals on every entry

    The user, the agent acting for them, and the client it came through. "Who did this" resolves to people, not to a service account.

  • Control-plane changes are tracked

    Configuration changes are recorded with diffs, so a change to the rules is as reviewable as a call made under them.

  • Readable by your reviewer

    Activity filters by space, agent, server and status across the organisation, so an auditor can answer their own question without a walkthrough.

Questions

What a security review asks.

Short answers, in the order reviewers usually ask them. The longer versions are above.

What exactly does Palma enforce, and where?

Palma governs agent-to-tool calls that pass through its connector: scoped tool access, rules on the request arguments, approval workflows, rate limits, credential handling, and an audit record that ties every call to the person, the agent acting for them and the host client, including calls that were denied or held. Coverage is the governed route; which clients, servers and credentials sit inside it is a deployment decision, and the first thing a reviewer should ask.

What are shadow MCP servers?

MCP integrations in use outside your approved inventory: a server someone wired into their IDE with a personal API key, a community server nobody reviewed, a connector a team set up before there was a process. Most are not malicious. The problem is that security cannot rely on controls it has not reviewed or traffic it cannot see. Reducing the risk starts with an inventory of clients, servers and owners, a review of the credentials each uses, and an approved route for the legitimate use cases.

Can Palma find every shadow MCP server?

No. Palma governs the MCP traffic connected through it and notices when a connected server changes its tools. It does not, on its own, find every unmanaged server on every device; endpoint and network controls cover the bypass paths, and the inventory above is where to start.

Where does Palma run?

On your infrastructure — Docker, Kubernetes or bare metal — inside your network and in front of your own MCP servers.

Do agents ever hold downstream credentials?

No. Outbound authentication strategies including RFC 8693 token exchange and vault-held credentials mean a downstream system can be reached without its secret reaching the agent or the user.

How is an agent action attributed?

Every call records three principals: the user, the agent acting on their behalf, and the host client the request arrived through.

Does Palma replace our identity provider or policy decision point?

No. Your IdP remains the source of identity and groups, and where you run a PDP it remains the authority. Palma is where those decisions are enforced, at the agent-to-tool call.

Book a demo

See what governed AI agents look like.

A 20-minute demo on your stack. We'll show Palma working with the agents, tools and identity provider you already run.

  • Enterprise security
  • Role-based access
  • Instant integration

Latest Blog Posts

Stay up-to-date with the latest in enterprise AI, MCP servers, and secure integration strategies.

Common Questions

Quick answers about Palma.ai's enterprise MCP platform

What is Palma.ai in one sentence?

Palma.ai is the enterprise governance layer for MCP — it gives every person and agent a single governed connector carrying the tools and Skills they're entitled to, enforces policies on the actual arguments of a call, pauses high-risk actions for approval, and records everything in a tamper-evident audit trail.

What does MCP governance mean?

Deciding which person may use which tool, with which arguments, with whose approval — and being able to prove it afterwards. MCP itself covers how a client authenticates to a server and how a tool is described and called; it does not decide which person may use which tool, hold a risky call for a human, or keep the record an auditor asks for. Palma adds that layer: one governed connector per person, assigned by identity-provider group, carrying the tools and Skills they are entitled to into whichever assistant they already use.

Does my team have to set up MCP servers themselves?

No. Connectors are assigned by IdP group through Entra or Okta, so a joiner gets theirs on day one and a leaver loses it the moment the group changes. Every MCP server your team approves arrives through that same connector — no per-user install, no config files, no credentials sitting on a laptop.

What's a Skill, and why does it matter?

A tool is a verb — "send an email". A Skill is the playbook that tells an agent when and how to use the verbs it already has: how your team actually closes the books, runs an incident review, or qualifies a lead. Skills are versioned, scanned before they're served, and scoped like any other piece of enterprise software — so your best operator's process reaches everyone else's agent.

Does it work with the AI clients we already use?

Yes — everything is served over MCP, so the same connector, Skills and policies follow the person into whichever assistant they open, whether that's Claude, ChatGPT, Copilot, Cursor or something else. Switching tools doesn't mean re-approving, re-installing or re-auditing anything.

How do we prove what an agent actually did?

Every tool call is attributed to the person it was done for, the agent that did it, and the application it ran in — with the arguments, result, duration and cost. The audit trail is tamper-evident and verifiable offline with your own key, so your auditor doesn't have to take our word for it, and it streams to the SIEM you already run.

How is Palma.ai deployed — SaaS, on-prem, VPC?

Palma.ai is designed for enterprise environments: typically VPC or on-prem, including fully air-gapped, depending on your regulatory and security needs. The MCP layer and governance plane run on your infrastructure, so sensitive business data doesn't have to move into multi-tenant SaaS. We can also host it for you if you prefer.