Custom engine agents
A custom engine agent is your own backend (Microsoft 365 Agents SDK, Teams AI, Semantic Kernel, or an Azure AI Foundry agent) that surfaces inside Microsoft 365 Copilot or Teams via Azure Bot Service. Because you own the orchestrator, you control the model endpoint it calls, which means you can route every model call through TapPass.
See Connect your harness for your base URL, key, and model IDs.
Setup (model plane)
Section titled “Setup (model plane)”- In your agent backend, find where the model client is configured. In the
Microsoft samples this is an endpoint environment variable, for example
AI_ENDPOINTor the Azure OpenAI endpoint. - Set that endpoint to TapPass:
- OpenAI-style client:
https://app.tappass.ai/v1 - Anthropic-style client:
https://app.tappass.ai
- OpenAI-style client:
- Set the API key to your TapPass agent API key.
- Use a prefixed model ID, for example
anthropic/claude-sonnet-4-5-20250929.
Example (Semantic Kernel, OpenAI-style client):
from semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletion
chat = OpenAIChatCompletion( ai_model_id="anthropic/claude-sonnet-4-5-20250929", api_key="<your TapPass agent API key>", base_url="https://app.tappass.ai/v1",)Every call the agent makes to the model is now governed, while the agent still appears natively inside Copilot.
Tool plane too
Section titled “Tool plane too”Register TapPass as an MCP server so the agent’s tool calls are governed as well as its model calls.
Verify
Section titled “Verify”Send one message to the agent in Copilot, then confirm a governed event for your agent identity in the TapPass console.