Integrations
Toolcue returns tool names, so it fits any agent: keep your tools and your model, and pass the model only the tools each user turn needs. These guides show the cleanest place to plug it in.
| Framework | Where Toolcue plugs in | Guide |
|---|---|---|
LangChain (create_agent) | One middleware: selects per turn, filters every model call, adds find_tools, refuses hidden tools | LangChain |
| LangGraph (your own graph) | A select node before the model node; bind only the selected tools | LangGraph |
| Vercel AI SDK | prepareStep returns the turn's activeTools on every step | Vercel AI SDK |
| Pydantic AI | One capability: before_run, prepare_tools, find_tools, a tool-call guard | Pydantic AI |
| OpenAI Agents SDK | is_enabled on each function tool, reading the turn from the run context | OpenAI Agents SDK |
| MCP | Publish tools/list once, filter per turn in your host | MCP |
| OpenAI SDK, Anthropic SDK, plain HTTP | Filter the tools you pass per request | Recipes in the guide |
Each integration was run end to end against Toolcue on 2026-11-02 (28 tests in all), with a scripted model that records exactly which tools it receives on every call. They all fail open: if Toolcue is unreachable, the turn gets every tool.
Not sure you need any of this? Too many tools? Five ways to pick them per turn compares the approaches.