Technology · Protocol

Model Context Protocol (MCP)

Every agent in my estate reaches every tool through MCP: a gateway of 475 tools, generated servers, a product server ported to .NET, and a single discovery tool backed by a model.

FAFOHive gatewayAgentOS and HelixServers, clients and transports
Agent seats above, tools below
FAFOHivethe single MCP endpoint
one square per tool; credentials stay on the server
  • ~45work-lifecycle actions across eleven AgentOS tools
  • ~180actions across 18 FAFO Core tools, dispatch compiled from YAML
  • 24tools on the digital-employee server, 13 of them meeting actions

One endpoint for every agent seat

FAFOHive is the single endpoint every managed agent seat in my estate connects to, because I wanted one trust model for every tool an agent can reach. The provider tools sit under stable namespaces, and every provider call is durably accounted, so a restart does not repeat one. See Agents with real tools and no keys.

I design tools around jobs: in one module I threw away 83 generated endpoint tools for about fifteen designed ones, a set that later grew to thirty-six. Tool descriptions state their cost and pass the provider's errors through verbatim, so the agent reasons over real failures. When the SDK's streaming transport broke on every container restart, I replaced it with a stateless per-request transport.

Streaming transport
Per-request transport

container restart

Governed work without trusting the caller

AgentOS needed agents to drive governed work through tools without being trusted to say who they are. I exposed the whole work lifecycle as tools.

Identity from the session

the server derives who is calling

  • Who is callingthe session
  • Every mutating callidempotency key
  • A long operationa receipt
  • An identity argument from the modelnever trusted

Tools compiled from schemas, and tools that build tools

FAFO Core and Function Forge had to make every new function callable by an agent without hand-written routing. Its gateway compiles YAML tool schemas into dispatch, and Function Forge is itself an MCP tool that emits new MCP tools. See Tools that build tools, under governance.

A fully registered tool
builds
A tool registered halfway
the build stops
compile

One named employee for any model

Helix lets any model act in a Teams meeting as one named employee. I built a Rust server for it and made the catalog data, so a new tool reaches every client with no client change. The voice engine is itself an MCP client that signs in with OAuth 2.0 and PKCE. See Solving the digital-employee identity.

M1M2

The catalog is data: model clients and the voice engine read the same one, so a new tool needs no client change.

A hundred tokens instead of the catalog

Capabilities model attacks the cost of tool schemas. I collapsed the catalog into one discovery tool whose description a test caps at 520 characters, written as a trigger to look before concluding no tool exists. See A hundred tokens instead of forty-two thousand.

Tokens spent on tool schemas before any work starts
Full catalog41,990Discovery tool~100

Grants, products and provisioning

Agent Swarm exposes its persona launcher as MCP actions and gives each managed seat a tool selection by capability class at launch. An agent cannot call what it was not granted.

Auth and access plane offers one weather MCP product in two shapes, the full set over a local transport and a trimmed set for Microsoft Copilot Studio behind an edge proxy that authenticates and routes MCP requests. It also runs the authorization server MCP clients discover.

One product, two shapes · tools
Local transport21Copilot Studio8

Inference Fabric puts GPU provisioning behind an MCP tool, so an agent adds a consumer node in one call under a budget a person set. Every tool that creates something has a matching delete, and a tool's test runs its whole lifecycle through MCP alone.

I have built servers, gateways, clients and transports on MCP across every system on this site. I did not write the protocol or its SDKs.

I treat MCP as an engineering surface with identity, cost and failure designed in.