Agent Tools
This file is the index for every tool an agent can use. For each tool, it points to a dedicated reference file, and — where the tool is also available through a toolbox — lists the toolbox type value.
Two delivery paths exist:
- Prompt agent — the agent definition declares tool classes directly (
CodeInterpreterTool,MCPTool, …). Use the SDK class column and the per-tool reference. - Hosted agent via toolbox — the agent connects to a single MCP endpoint that exposes all tools declared in a toolbox version. Use the
typecolumn and see use-toolbox-in-hosted-agent.md. For wiring the underlying project connection (catalog tile or generic remote MCP), see foundry-tool-catalog.md.
💡 Authoritative tool shapes: the source-of-truth for every tool's wire shape is the Foundry Agents typespec on the
mainbranch ofAzure/azure-rest-api-specs. When in doubt about a field name, default, or new tool type that isn't yet documented here, load the typespec directly — it's updated as tools are added/changed.
Tool Summary
| Tool | Prompt-agent SDK class | Connection? | Reference |
|---|---|---|---|
| Code Interpreter | CodeInterpreterTool | No | tool-code-interpreter.md |
| Function calling (client-side) | FunctionTool | No | tool-function-calling.md |
| File Search | FileSearchTool | No (vector store required) | tool-file-search.md |
| Web Search (preview) | WebSearchPreviewTool | No (basic Bing); Yes for Grounding with Bing Custom Search — the connection scopes grounding to specific domains | tool-web-search.md |
| Bing Grounding | BingGroundingTool | Yes (Bing) | tool-bing-grounding.md |
| Azure AI Search | AzureAISearchTool | Yes (Search) | tool-azure-ai-search.md |
| MCP server (remote) | MCPTool | Optional (none / static key / project MI / OAuth) | tool-mcp.md; toolbox attach via foundry-tool-catalog.md |
| OpenAPI tool | (n/a as a single class) | Conditional — connection auth requires project_connection_id; managed_identity auth does NOT (the project MI is used directly with an audience) | tool-openapi.md |
| Agent-to-Agent (A2A) | (n/a as a single class) | Optional | tool-a2a.md |
| Agent Memory | MemorySearchPreviewTool | Yes (project MI + embedding model) | tool-memory.md |
| Work IQ (preview) | WorkIQPreviewTool | Yes (Work IQ BYO-Entra-app OAuth connection) | tool-work-iq.md |
| Fabric IQ (preview) | FabricIQPreviewTool | Yes (Fabric IQ Entra-app OAuth or managed-OAuth connection) | tool-fabric-iq.md |
⚠️ Default for web search: Use
WebSearchPreviewTool(type: web_search) unless the user explicitly requests Bing Grounding or Bing Custom Search.
How to use this index
When you need details for a specific tool, load that tool's reference file directly — each one is self-contained (shape, requirements, references). Don't try to keep all tools in context at once.
Adjacent (not a type in a toolbox version)
- Agent Memory — use the
MemorySearchPreviewToolSDK class on prompt agents; for hosted agents, configure the memory store via the project (separate from the toolbox). See tool-memory.md. - Routines (preview) — not a tool; an agent trigger (
schedule/timer/github_issue/custom) that invokes an existing agent. Event-based routines are powered by the same Connector Namespace that backs catalog-MCP / managed-MCP connectors. See the public Routines docs.
References
- Foundry Agents typespec (
main) — authoritative tool shapes - Tool Catalog
- Toolbox (preview)
- foundry-tool-catalog.md — project connections for remote tools