The new rush is to build AI agents. The biggest problem for developers is to get the AI to talk to the data. Agoda, the travel giant, is taking on this challenge today. The company has officially launched APIAgent, a free open-source software that converts any REST or GraphQL-based API into a Model Context Protocol Server with No code The following are some examples of how to get started: 0 deployments.
The Problem: The ‘Integration Tax‘
You had to create a tool to allow your AI to lookup flight prices and databases. Anthropic launched the Model Context Protocol (MCP)It was a way to create a standard for Large Language Models.
Even with MCP the workflow can be tedious. A developer must:
- Write a MCP server using Python or TypeScript.
- Define all tools and their parameters manually.
- Install and maintain the server.
- The API will change every so often, and you’ll need to update the code.
Agoda team calls this the ‘integration tax.’ Writing 1000s MCP server is not feasible for an organization with 1000s APIs. APIAgent The answer to the scaling issue is their solution.
What is APIAgent?
APIAgent acts as a universal server for MCP. APIAgent is a universal MCP server. The APIAgent sits between a LLM like Claude, GPT-4 or GPT-5 and the existing APIs.
This tool was built using a particular technical stack.
- FastMCP: The MCP Server Layer.
- OpenAI Agents SDK Manages the orchestration of language models.
- DuckDB: The in-process SQL engine is used to SQL Post-processing.
The ‘magic’ lies in its ability to understand API documentation. You provide a definition of your API—using an OpenAPI Specification for REST, or schema for GraphQL—and APIAgent handles the rest.
It Works?
It is a simple architecture. APIAgent is a gateway. The flow of a user asking an AI agent to answer a question looks something like this.
- You Request: The user asks, ‘Show me the top 10 hotels in Bangkok with the most reviews.’
- Schema Introspection: APIAgent will automatically scan the API schema and identify the fields, endpoints and available data.
- DuckDB is a SQL layer. The secret sauce. APIAgent can sort 10,000 unsorted rows. DuckDB SQL can be used to aggregate, filter and sort data on the local computer before sending it back to LLM.
- What is the Response? APIAgent formattes the JSON for AI.
This system utilizes Dynamic Tool Discovery. APIAgent can be pointed at any URL and will automatically create the tools required for LLM, without the need to manually map.
Key Feature: ‘Recipe’ Learning
A key characteristic is Recipe Learning. When a complex natural language query successfully executes, APIAgent can extract the trace and save it as a ‘Recipe.’
- This recipe is a great way to get started. Parametric templates.
- APIAgent will then use the recipe for a future question.
- It reduces cost and delays by avoiding the costly LLM reasoning stage.
The Key Takeaway
- Universal Protocol Bridge APIAgent is an open-source proxy which converts all types of data. REST or graphQL API into a Model Context Protocol (MCP) server. It eliminates the need for custom boilerplate code and maintaining individual MCP server instances for each internal microservice.
- Zero-Code Schema Introspection: The tool is ‘configuration-first.’ APIAgent is configured by pointing it at an API. OpenAPI Specification The following are some examples of how to use GraphQL endpointThe schema is automatically inspected to identify endpoints and field. The LLM is then exposed to these tools as functional without any manual mapping.
- SQL Advanced Post-Processing This integrates DuckDBAn in-process SQL Engine to manage complex data manipulation. APIAgent can use SQL to filter or sort thousands of rows returned by an API. Sort, aggregate or join Data is collected locally and then sent to AI for a quick answer.
- Performance via ‘Recipe Learning’: The agent feature is designed to reduce LLM costs and high latency. Recipe Learning. It can save the execution trace for any natural language query. Parametric template.
- Security-First Architecture: It is a system that works ‘Safe by Default,‘ operating in a read-only state. Any ‘mutating’ actions (like
POST,PUTOrDELETEIf a developer does not explicitly list them as whitelisted in the YAML file, the proxy blocks all such requests.
Click here to find out more PR Here. Also, feel free to follow us on Twitter Join our Facebook group! 100k+ ML SubReddit Subscribe Now our Newsletter. Wait! What? now you can join us on telegram as well.


