[agenticwork]
← blog

Tool Synthesis, Not Tool Registration: How Synth Eliminates AI Integration Debt

Every enterprise that has tried to deploy AI agents at scale has hit the same wall. It is not the model. It is not the prompt engineering. It is the tools. Specifically, the hundreds of hand-written integration wrappers you need before your agent can do anything useful. We call this integration debt, and it is the single largest barrier to production agentic AI.

The dominant frameworks — LangChain, CrewAI, AutoGen — all share the same fundamental design assumption: you, the developer, pre-build every tool the agent might need, register those tools with the framework, and then the agent selects from your catalog at runtime. This is the tool registration model. It works fine for demos. It collapses under the weight of real enterprise complexity.

Our open-source core takes a different approach. Instead of registering tools, you describe your intent, and the open-source core synthesizes the tool on demand — generates the code, submits it for human approval, executes it in a sandbox, and discards it. No wrappers to maintain. No catalog to curate. No integration debt.

The Integration Debt Problem

Consider a typical mid-size enterprise. They have Salesforce for CRM, Jira for project tracking, Snowflake for analytics, an internal REST API for inventory, a legacy SOAP service for billing, Slack for communication, and a half-dozen internal microservices. They want an AI agent that can answer questions across these systems.

Under the tool registration model, this means building and maintaining a dedicated wrapper for each system. Each wrapper requires:

  • Authentication handling (OAuth flows, API keys, token refresh)
  • Request construction (query parameters, pagination, rate limiting)
  • Response parsing (schema mapping, error handling, retry logic)
  • Type definitions and input validation
  • Unit tests and integration tests
  • Ongoing maintenance as APIs evolve

Multiply that by every system the agent needs to touch. Then multiply again by every variation of query the agent might run against each system. A Salesforce wrapper that can list opportunities is not the same one that creates a contact or updates a forecast. The tool count explodes. Large enterprise deployments can accumulate hundreds of registered tools across dozens of internal systems, with dedicated engineers doing little but maintaining tool wrappers. The agent itself becomes almost an afterthought.

This is integration debt. You accumulate it before the agent delivers any value, and it compounds every time an upstream API changes, a new system is onboarded, or a new query pattern is needed.

The Tool Registration Model: How the Incumbents Work

LangChain

In LangChain, you define tools by creating Tool objects or using the @tool decorator. Each tool has a name, a description (used by the LLM to decide when to invoke it), and a function that executes the actual logic. The agent receives a list of tools at initialization and selects among them based on the user's query.

This is clean and composable for five or ten tools. At fifty, the agent's tool selection degrades because the LLM has to reason over too many descriptions. At two hundred, you need routing layers, tool namespaces, and retrieval-augmented tool selection — adding yet more infrastructure to maintain.

CrewAI

CrewAI layers role-based abstractions on top of a similar pattern. You define Agents with specific roles, assign them Tasks, and equip them with Tools. The framework handles delegation and collaboration between agents. But the tools themselves are still pre-built: you write a class that inherits from BaseTool, implement a _run method, and register it. The abstraction is higher, but the integration burden is identical. Every new system still requires a hand-written tool.

AutoGen

AutoGen (now AG2) uses conversable agents that exchange messages to solve tasks. Tools are registered as Python functions decorated with metadata that the agents can call during their conversations. AutoGen's multi-agent conversation model is powerful for complex workflows, but the tool story is the same: you pre-define functions, register them, and hope the agents call them correctly.

The Common Pattern

All three frameworks share the same fundamental contract: you build the tools, then the agent chooses which to use. The intelligence is in the selection. The labor is in the construction. And as the number of integrations grows, the labor dominates.

The Open-Source Core Model: Tool Synthesis

The open-source core inverts this contract. Instead of building tools ahead of time, you describe what you need at the moment you need it. The framework handles the rest.

The open-source core synthesizing a tool to fetch GitHub trending repositories
The open-source core synthesizes a purpose-built tool from a natural language intent — no pre-built wrapper needed.

1. Intent Declaration

A user or upstream agent states a goal in natural language:"Query our Salesforce CRM for all opportunities in Q4 with a value over $500K." There is no pre-built Salesforce tool. There is no tool catalog to search. There is just an intent.

2. Tool Synthesis

The open-source core generates the executable code to fulfill the intent. This includes the API call itself, the authentication flow (using scoped credentials from a secrets vault), query construction, response parsing, and output formatting. The synthesized tool is a self-contained unit of work — not a reusable library, but a single-purpose function designed for exactly this request.

3. Human Approval

Before execution, the synthesized tool is presented to a human reviewer. They see exactly what code will run, what credentials it will use, what endpoints it will call, and what data it will access. This is not optional logging — it is a mandatory gate. The human-in-the-loop (HITL) approval step is architecturally enforced, not bolted on.

4. Sandboxed Execution

Approved tools execute in an isolated sandbox with scoped credentials. The sandbox has network policies that restrict outbound calls to only the approved endpoints. The credentials are short-lived and narrowly scoped — if the tool needs read access to Salesforce opportunities, it does not get write access to Salesforce contacts. The blast radius of any failure or compromise is bounded by design.

5. Ephemeral Disposal

After execution, the tool code is discarded. It is not saved to a library. It is not cached for reuse. It is gone. This means there is no persistent attack surface from accumulated tool code, no version drift between wrapper implementations, and no catalog to audit for vulnerabilities. Every execution starts clean.

Side-by-Side Comparison

DimensionLangChain / CrewAI / AutoGenOpen-Source Core
New integrationWrite and test wrapper codeDescribe intent in natural language
Ongoing maintenancePer-tool, ongoing (API changes break wrappers)Zero — tools are ephemeral
Security modelTrust the pre-written tool codeSandbox + human approval per execution
Audit trailOptional logging, varies by implementationMandatory HITL review with full code visibility
Vendor lock-inFramework-specific tool interfacesOpen standard, portable intents
Tool count scalingLinear growth with integrationsConstant — no persistent tool inventory
Time to first integrationHours to days (build, test, deploy wrapper)Minutes (describe intent, approve, run)

The Obvious Objection: Is Synthesis Slower and Less Reliable?

Yes. Let's be honest about the tradeoffs.

For a high-frequency, well-defined operation — say, looking up a customer record by ID ten thousand times a day — you should use a direct integration. A pre-built, pre-tested, cached API client will always be faster and more reliable than synthesizing the same call from scratch every time. This is not controversial, and the open-source core does not pretend otherwise.

But here is the reality of enterprise AI usage: the majority of agent interactions are not high-frequency, well-defined operations. They are the long tail. One-off data pulls. Ad-hoc queries that cross system boundaries. Investigative workflows where the user does not know which system holds the answer. Report generation that touches three APIs in a combination nobody anticipated when the tool catalog was built.

In typical enterprise agent usage, a small share of interactions hit the same well-worn paths repeatedly, while the majority are unique or near-unique queries that would each require their own dedicated tool under the registration model. Building tools for that long tail is economically irrational. Synthesizing them on demand is designed to be the more viable approach.

Tool synthesis adds latency — typically two to five seconds for generation and review — but it eliminates the weeks of development time that would otherwise precede any new integration. For the long tail, this is not a tradeoff. It is an overwhelming advantage.

Security as Architecture, Not Afterthought

The security difference deserves emphasis. In the tool registration model, every tool in your catalog is a persistent piece of code with access to production credentials. If any of those tools has a vulnerability — an injection flaw, an overly broad credential scope, a logging gap — it sits in your codebase indefinitely, waiting to be exploited.

The open-source core's tools exist for seconds. They run in sandboxes with scoped credentials and restricted network access. Every execution is reviewed by a human before it touches production systems. There is no accumulated attack surface because there is no accumulated code. The security model is not "trust the developers who wrote the tools six months ago." It is "verify this specific action right now."

For regulated industries — financial services, healthcare, government — this distinction matters enormously. Auditors do not want to review a catalog of hundreds of tool wrappers. They want to see that every action an AI agent took was explicitly approved by a human, executed in isolation, and logged with full code-level visibility. The open-source core provides this by default.

The open-source core workflow: synthesize, approve, and execute a tool
The full workflow: synthesize a tool, review the code, approve, and execute — all in seconds.

Where This Is Heading

The tool registration model made sense when LLMs were unreliable at code generation and when the scope of agent interactions was narrow enough that a human could anticipate every tool the agent would need. Neither condition holds anymore. Models are increasingly capable of generating correct, executable integration code. And the scope of what enterprises want agents to do is expanding far beyond what any pre-built catalog can cover.

The future of agentic AI is not more tool wrappers. It is not larger catalogs. It is not better tool-selection algorithms layered on top of the same registration pattern.

The future is describing what you need and having governed agents figure out how to do it — with human oversight, sandboxed execution, and zero persistent integration debt.

The platform is built for that future. The open-source core handles the tool synthesis piece — generating governed, sandboxed tools on demand so teams never have to write or maintain insecure MCP servers with too many tools and worthless auth. But tool synthesis is one component of a platform that also includes SmartModelRouter for multi-model routing across multiple model families and provider integrations, MCP Workshop for building and deploying persistent integrations when you need them, and a Workflow Builder for visual agent orchestration.

For the governance layer that regulated industries demand, the platform's Audit System records every synthesized tool, every approval decision, and every execution result in immutable, cryptographically hashed logs. Credential isolation ensures each tool invocation gets scoped, time-limited tokens — not blanket API keys. DLP scanning catches sensitive data before it leaves your perimeter. This is the audit trail that sprawling tool-registration deployments can never produce — not because logging is hard, but because you cannot log what you do not govern.

Resources