MCP Gateway vs. Inference Hooks: Two Deployment Options
MCP Gateway and Inference Hooks are two ways to inspect AI data in motion, each with real tradeoffs. Here's how they differ, and why most teams need both.
Last updated
Two deployment options exist today for inspecting AI data in motion before it leaves your business: an MCP Gateway, and Inference Hooks. Both are inline, in the sense that a request waits for a verdict before it proceeds. Neither is a substitute for the other, because they sit in different places and see different traffic. This piece breaks down how each one actually works, the real pros and cons of both, and why most enterprises running AI agents end up deploying both rather than picking one.
The short version
- An MCP Gateway sits directly in the agent-to-tool request path at the protocol level. It is model-agnostic: any agent, any MCP server, any LLM, and it can allow, redact, hold for approval, inspect-only (allow the request but log the violation), or block it.
- Inference Hooks is a callback built into one model vendor’s own inference pipeline, currently Claude Enterprise. It inspects prompts and tool results before they reach that specific model and returns an allow or deny verdict.
- Both are inline and blocking. The difference is where each one sits and what it can see, not which one is “really” inline.
- An MCP Gateway’s biggest gap is traffic that never goes over MCP. Inference Hooks’ biggest gap is that it only exists for the vendors who have built it, and it cannot redact, only allow or deny.
- Most enterprises need both: Inference Hooks to gate what reaches a specific model directly, and an MCP Gateway to govern what any agent, on any model, does with a tool afterward.
What is an MCP Gateway, and where does it sit?
An MCP Gateway is the control point that sits between your AI agents and every tool, database, or model they call over the Model Context Protocol (MCP). It reads the content of each request as it happens, not just the metadata, and decides in real time whether to allow it, redact the sensitive part, hold it for a person to review, inspect it and log any violation without blocking (inspect-only), or block it outright. Because it operates at the protocol level, it does the same job regardless of which agent is calling or which model is behind that agent. Claude, Cursor, ChatGPT, or a custom agent framework all look the same to the gateway: a request carrying content that either should or shouldn’t be allowed through. See What Is an MCP Gateway? for the full definition, and Metomic’s MCP Gateway for how Metomic implements it.
What are Inference Hooks, and where do they sit?
Inference Hooks is a feature Anthropic built for Claude Enterprise. It routes every governed prompt across Claude chat, Claude Code, and Claude Cowork to an organization’s own AI security server, which verifies a signed webhook call and returns an allow or deny verdict before inference runs, inside a configured timeout (1 to 10,000 ms, 5 seconds by default). Metomic operates that server, so a customer’s security team writes policy rather than standing up infrastructure. If the endpoint doesn’t answer in time, Claude Enterprise’s own Mode setting decides what happens next: allow the request through uninspected, block it, or fall back to shadow mode, where Claude keeps calling and logging Metomic’s verdict but always lets the request through regardless. Because the hook is built into Anthropic’s own inference pipeline, it covers traffic that never touches a tool call at all, including a prompt typed straight into Claude chat. See Metomic for Claude Inference Hooks and Anthropic’s own documentation on Inference Hooks for the underlying spec. For a non-technical walkthrough of the same feature, including what happens when the security service is unavailable, see Anthropic Inference Hooks: What Security Teams Need to Know.
Are Inference Hooks actually “not inline”?
It’s worth being precise here, because the two get described loosely. Inference Hooks is blocking: Anthropic’s model waits on a verdict from the security server before inference proceeds, the same way an MCP Gateway waits before letting a tool call through. Neither one is inline in the sense of physically sitting in a network path the way a proxy does. The real difference is architectural: an MCP Gateway is a protocol-level control point that works the same way no matter which model or agent is involved. Inference Hooks is a callback wired into one vendor’s own product, so it only exists, and only sees traffic, where that vendor chose to build it.
See both control points on your own traffic
Watch an MCP Gateway and Inference Hooks inspect a real request
See what's already calling your tools over MCP, and what a governed Claude Enterprise prompt looks like, from one platform.
Book a demoSOC 2 Type II certified. Rated 4.8 on G2.
MCP Gateway: pros and limits
Where it wins:
- Inline in the protocol-level request path, so it inspects traffic from multiple agents and multiple LLMs independently of any one model vendor.
- Sees the full tool call, arguments and results, not just prompt text, which is where sensitive data most often actually moves.
- Discovers and governs Shadow AI: the MCP servers and agents nobody approved, not only the ones on an official list.
- Decision options go beyond allow or deny: redact the sensitive part, hold the request for a person, log a violation without blocking it (inspect-only), or block it outright, so most low-risk traffic goes through untouched. That’s “govern, not block” in practice.
Where it stops:
- It only covers traffic that actually goes over MCP. A direct LLM API call or an embedded copilot that never makes an MCP tool call is outside what a gateway alone can see, that traffic needs an inference hook or a similar interception point wired into the model call itself.
Inference Hooks: pros and limits
Where it wins:
- Native to the model vendor’s own enterprise product, so it covers prompts and completions before they ever reach the model, including a prompt typed straight into chat, not only a tool call.
- Nothing to stand up on the customer’s side beyond pointing a webhook at Metomic and generating a signing secret.
- Can run in shadow mode before anything is enforced: Claude’s own Mode setting keeps calling Metomic and logging its verdict, but always lets the request through, so nothing is blocked while you still get real visibility into what’s flowing before you turn on enforcement.
- Deny reasons are written in plain language and shown to the user, so a blocked prompt becomes a teachable moment instead of just friction.
Where it stops:
- It only exists for vendors who have built the capability. Today that’s Claude Enterprise. A model without an equivalent hook has no equivalent control.
- Anthropic’s verdict schema is allow or deny only, once you do move to enforcing. There is no redaction option on this path today, and no per-request inspect-only decision either, so a prompt carrying one sensitive field alongside a legitimate request gets the same binary treatment as one that’s entirely sensitive. Claude Enterprise’s own Mode setting adds a native shadow mode (always allow, always log), but that’s an account-wide switch, not a per-request decision the way inspect-only is on the MCP Gateway.
- It doesn’t see what happens after a model decides to call a tool over MCP. That handoff is exactly what an MCP Gateway is built to govern.
- Attachments arrive as metadata and extracted text only. Image-only content, such as a screenshot of a document, is not inspected.
- Anthropic currently sends only prompt-side events. Enforcement on model responses is planned as a later event, but it isn’t live yet.
- Voice mode conversations are not covered.
- Claude’s system prompts and tool definitions are never included in the inspected content.
- An unreachable endpoint or a verdict slower than your configured timeout (1 to 10,000 ms, 5 seconds by default) falls back to your organization’s Mode setting: allow the request through uninspected (fail open), block it outright (fail closed), or shadow mode, where Claude keeps calling and logging Metomic’s verdict but always lets the request through. If Anthropic’s circuit breaker trips from sustained failures, enforcement stops and Claude applies that same Mode setting until you restore the connection.
Side by side
| MCP Gateway | Inference Hooks | |
|---|---|---|
| What it governs | Every call any agent makes to any tool, on any model | Prompts and tool results reaching Claude Enterprise |
| Model coverage | Any model, any MCP client, any agent | Claude Enterprise only: chat, Code, Cowork |
| Decision | Allow, redact, hold for approval, inspect-only, or block | Allow or deny natively, per request; account-wide Mode setting adds a native shadow option |
| Content inspected | Full tool call, arguments and results | Prompt text and extracted attachment text only, no images, no voice |
| Response-side enforcement | Governs the tool call itself, so this doesn’t apply | Not yet, prompt-side only today; Anthropic has this planned as a later event |
| Visibility before enforcing | See live traffic and findings before any policy is turned on | Shadow mode: Claude always allows, while logging Metomic’s verdict |
| Endpoint unreachable or slow | Not applicable, gateway is the request path itself | Configurable Mode setting: allow, block, or shadow mode |
| Where the check runs | Metomic’s hosted gateway, in the agent-to-tool path | Metomic’s AI security server, called by Anthropic’s webhook |
| Shadow AI outside the covered model | Discovered and governed | Not visible |
| Infrastructure to stand up | None, hosted and preconfigured | None, Metomic operates the webhook endpoint for you |
Do you need both?
If AI agents in your business call tools over MCP, and your organization also uses Claude Enterprise directly for chat or coding, yes. The two aren’t competing for the same job. Inference Hooks gates what reaches Claude directly, including prompts that never touch a tool. An MCP Gateway governs what any agent, on any model, sanctioned or not, does with a tool once it’s connected. Metomic runs both from one platform, so the two controls share one policy engine and one audit trail instead of two consoles that never talk to each other. See Metomic’s platform for how the two deployment options fit together.
Key takeaways
- An MCP Gateway is a protocol-level, model-agnostic control point in the agent-to-tool path. Inference Hooks is a callback built into one model vendor’s own inference pipeline.
- Both are inline and blocking. The real difference is where each sits and what traffic it can see, not which one is “more” inline.
- An MCP Gateway’s gap is traffic that bypasses MCP entirely. Inference Hooks’ gap is vendor coverage (Claude Enterprise only today) and a binary allow-or-deny decision with no redaction.
- Most enterprises running AI agents need both, covering different traffic, sharing one policy and one audit trail.
If you want to see what either control point looks like on your own traffic, book a demo of Metomic.
Frequently asked questions
- What is the difference between an MCP Gateway and Inference Hooks?
- An MCP Gateway sits directly in the agent-to-tool request path at the protocol level. It inspects traffic from any agent calling any MCP server, on any model, and can allow, redact, hold for approval, or block a request. Inference Hooks is a callback built into one model vendor's own inference pipeline, currently Claude Enterprise. It inspects prompts and tool results before they reach that specific model and returns an allow or deny verdict. Both are inline in the sense that nothing proceeds until a verdict comes back, but they cover different traffic and sit in different places.
- Do I need both an MCP Gateway and Inference Hooks?
- Most enterprises end up wanting both, because they cover different paths. Inference Hooks gates what reaches one vendor's model, including prompts typed directly into chat. An MCP Gateway governs what any agent, on any model, does with a tool once it is connected over MCP, including agents and tools that never touch Claude at all. Running only one leaves the other path unwatched.
- Which one should I deploy first?
- Start with whichever path carries more of your risk today. If your teams are already deep into agents calling internal tools and data over MCP, an MCP Gateway gives broader, model-agnostic coverage faster. If your organization has standardized on Claude Enterprise and wants to gate prompts and chat directly, Inference Hooks is a lighter first step. Either way, both are hosted and preconfigured, so neither requires new infrastructure on your side.
- Does Inference Hooks work with models other than Claude?
- Not today. Inference Hooks is a feature Anthropic built specifically for Claude Enterprise: Claude chat, Claude Code, and Claude Cowork. It is not a general protocol, so it only exists where a vendor has built an equivalent hook, and as of now that's Claude Enterprise only. Other model vendors could ship a similar capability in the future, but until they do, traffic to other models, or to agents connected over MCP regardless of model, needs an MCP Gateway to be covered.
- Can either option redact data instead of just blocking it?
- Only the MCP Gateway can today. On the Inference Hooks path, Anthropic's verdict schema is allow or deny only, so Metomic cannot rewrite or redact a prompt before it reaches Claude, only permit or refuse it once enforcement is on. Claude Enterprise's own Mode setting also offers a native shadow mode, where Claude keeps calling Metomic for a verdict and logs it, but always lets the request through regardless, which gives visibility without blocking anything. Metomic's MCP Gateway goes further and can redact the sensitive part of a tool call and let the rest of the request through, which is usually the better outcome when only a small part of a request is actually sensitive.
- Does an MCP Gateway see what happens inside Claude chat itself?
- Not directly. An MCP Gateway sees an agent's calls to tools and data over MCP, whichever model is driving those calls, including calls that originate from Claude. It does not inspect a prompt typed directly into Claude chat that never triggers a tool call, that path is what Inference Hooks was built to cover for Claude Enterprise specifically.
- What doesn't Inference Hooks see today?
- A handful of things, at least for now. Attachments arrive as metadata and extracted text only, so image-only content like a screenshot of a document isn't inspected. Anthropic currently sends only prompt-side events, so enforcement on model responses is planned but not live yet. Voice mode conversations aren't covered. Claude's own system prompts and tool definitions are never part of the inspected content. And if the endpoint is unreachable or a verdict is slower than your configured timeout (1 to 10,000 ms, 5 seconds by default), Claude falls back to your organization's Mode setting: allow the request through uninspected (fail open), block it (fail closed), or shadow mode, where Claude keeps calling Metomic and logging its verdict but always lets the request through. None of these are gaps in Metomic's policy engine, they're the current boundaries of what Anthropic's Inference Hooks sends and covers.
- What are Claude's three failure handling modes for Inference Hooks?
- Claude Enterprise's admin console gives you three Mode options for Inference Hooks failure handling, all supported by Metomic. Allow the request lets inference proceed without inspection when the endpoint can't be reached or a verdict times out, a fail-open design. Block the request stops inference in that case instead, fail-closed. Shadow mode keeps calling your endpoint and recording its verdict, but always lets the request through regardless of what it says. The verdict timeout itself is configurable from 1 to 10,000 ms, 5 seconds by default, and a slower verdict counts as an unreachable endpoint.