← Back to list

Migra tus APIs REST a MCP Server con Apigee

¿Te has preguntado qué sucederá con todo el esfuerzo que las empresas consideraban prioritario hasta hace unos meses? Me refiero a las…

Carlos Reyes in google-cloud-hispanoamerica · 2026-06-08 12:52 · 0 claps · 6.4 min read
#apigee #mcp-server #ai-gateway #google-cloud-platform #google-adk
Open on Medium ↗
Wiki topics: AGT · AI Agents

Migra tus APIs REST a MCP Server con Apigee

¿Te has preguntado qué sucederá con todo el esfuerzo que las empresas consideraban prioritario hasta hace unos meses? Me refiero a las arquitecturas de servicios y APIs. Muchos nos preguntamos cómo este esfuerzo previo se integrará con la nueva tendencia de Inteligencia Artificial y agentes. Un reto fundamental es evitar que nuestras soluciones actuales se queden aisladas; por ello, Apigee evoluciona pasando de un API Gateway a utilizarse también como una AI Gateway. El objetivo de Apigee es convertirse en ese punto central, seguro y configurable, extendiendo este patrón a los servicios de IA mediante funcionalidades como el conteo de tokens o la revisión de prompts y respuestas.

En este contexto surge una librería llamada apigee-go-gen, que busca simplificar la integración entre los servicios REST y el nuevo entorno de MCP Servers. Esta librería genera una renderización de un proxy que cumple con el formato necesario para ser un servidor MCP. Esto nos permitirá aprovechar el trabajo previo y ponerlo a disposición de cualquier agente. A continuación te guiaremos para que puedas crear un Servidor MCP y conectarlo con un agente.

Introducción

En la siguiente sección, explicaremos cómo transformar un servicio REST en un servidor MCP para que nuestros servicios puedan ser expuestos en un formato que los agentes utilicen a través de Apigee y MCP:

  • Un proyecto de GCP
  • Una organización de Apigee instalada, puede ser de evaluación.
  • Conocimientos de git básicos.
  • Instalación previa de ADK en tu equipo de cómputo.
  • Una llave para uso de modelos de LLMs con Google AI Studio.

Arquitectura de referencia

La siguiente arquitectura muestra los componentes que utilizaremos para lograr que los servicios REST renderizados funcionen como un servidor MCP. El objetivo es explicar cómo cambian los componentes de las herramientas (tools), mientras que el agente sigue siendo una parte fundamental del uso.

Figura 1. Arquitectura de Solución para un MCP Server en Apigee.

Figura 1. Arquitectura de Solución para un MCP Server en Apigee.

Utilizaremos la organización de Apigee para disponer de una API REST con la que puedas interactuar y comparar resultados. Después, nos concentraremos en renderizar la especificación (spec). Una vez renderizada, desplegaremos este servidor MCP en Apigee y, finalmente, lo consumiremos desde un agente.

Instrucciones

En esta sección encontrarás los pasos para convertir un servicio REST en un servidor MCP con la ayuda de la librería apigee-go-gen y la interfaz de usuario (UI) de Apigee.

Accede a Google Cloud Shell

Figura 2. Acceso a Cloud Shell de Google Cloud

Figura 2. Acceso a Cloud Shell de Google Cloud

Espera a que se inicie la terminal.

Figura 3. Terminal de cloud shell

Figura 3. Terminal de cloud shell

Instala apigee-go-gen, puedes encontrar más información aquí:

curl -s https://apigee.github.io/apigee-go-gen/install | sh

export PATH="/usr/local/bin:$PATH"

Clona el repositorio apigee-go-gen

git clone https://github.com/apigee/apigee-go-gen.git

Paso 1

Clona el siguiente repositorio.

git clone https://github.com/CarlosGoogleMX/apigee-mcp

Cambia la ubicación a la siguiente ruta.

cd apigee-mcp/

Despliega el siguiente proxy en Apigee.

**https://github.com/CarlosGoogleMX/apigee-mcp/blob/main/disease-example-api.zip**

Prueba con un curl el consumo del proxy de Apigee

curl -s https://<YOUR-HOSTNAME>/disease/v3/covid-19/all | jq

Figura 4. Respuesta del curl al consumir el proxy de Apigee

Figura 4. Respuesta del curl al consumir el proxy de Apigee

Ahora ya tienes disponible una API Rest que consume los servicios de https://disease.sh/docs/#/ y que muestran los datos de Covid-19. Este proxy solo lo usamos como referencia para comparar contra nuestro MCP Server.

Paso 2

Convierte el archivo JSON a YAML (el repositorio ya incluye el YAML). En mi caso, utilicé Gemini para esta tarea.

gemini

---------------

"Convert open api specification json to yaml,following the next guidance. Include all the methods and schemas the current API support."

-----------------

Work done

Deberías obtener el siguiente resultado

openapi: 3.0.0
info:
 version: 3.0.0
 title: disease.sh Docs - An open API for disease-related statistics
 description: Third Party API for reliable global disease information
 license:
   name: GNU V3
   url: https://github.com/disease-sh/API/blob/master/LICENSE
servers:
 - url: https://disease.sh/
tags:
 - name: 'COVID-19: Worldometers'
   description: '(COVID-19 data sourced from Worldometers, updated every 10 minutes)'
 - name: 'COVID-19: JHUCSSE'
   description: >-
    (COVID-19 data sourced from Johns Hopkins University, updated every 10
    minutes)
 - name: 'COVID-19: NYT'
   description: '(COVID-19 data sourced from the New York Times, updated every 24 hours)'
 - name: 'COVID-19: Apple'
   description: >-
    (COVID-19 related mobility trend data from Apple, updated every 24
    hours)

En el repositorio puedes encontrar el yaml completo.

Paso 3

Ejecuta el siguiente comando para renderizar el mcp proxy.

En este comando es importante que revises las rutas donde tienes el template del repositorio descargado de apigee-go-gen, igualmente especifiques el ruta donde está el yaml y donde quieres el .zip.

apigee-go-gen render apiproxy
 - template /home/<user_id>/apigee-go-gen/examples/templates/mcp/apiproxy.yaml - set-oas spec=/home/<user_id>/apigee_mcp/disease_spec.yaml - set base_path=/mcp/covid-19
 - output /home/<user_id>/apigee_mcp/covid-19.zip

Importamos el .zip en la consola de UI de Apigee como si fuera un proxy estándar.

Genera las siguientes políticas (policies).

Figura 5. Policies del proxy

Figura 5. Policies del proxy

Genera los siguientes métodos, que son los necesarios para un servidor MCP.

Figura 6. Métodos implementados.

Figura 6. Métodos implementados.

Los siguientes recursos se encargan de realizar el procesamiento (parsing) de la información al protocolo MCP.

Figura 7. Recursos implementados.

Figura 7. Recursos implementados.

Despliega el proxy en algún ambiente de Apigee.

Figura 8. Despliegue de proxy

Figura 8. Despliegue de proxy

Ejecuta el siguiente comando de curl para ver las herramientas (tools) de MCP o utiliza MCP Inspector.

npx @modelcontextprotocol/inspector - server-url https://<APIGEE-HOSTNAME>/mcp/covid-19

Figura 9. Listado de tools

Figura 9. Listado de tools

curl -X POST "<APIGEE-HOSTNAME>/mcp/covid-19" -H "Content-Type: application/json" /
-d '{ "jsonrpc": "2.0", "method": "tools/list","id": 1}'

Figura 10. Curl con listado de tools

Figura 10. Curl con listado de tools

Paso 4

  • Accede al código del agente e instala los requerimientos.
cd covid_agent

pip install -r requirements.txt

Figura 11. Instalación de paquetes.

Figura 11. Instalación de paquetes.

Igual comenzamos con el setup de nuestro agente. Es importante recordar que el valor de GOOGLE_API_KEY se obtiene de AI Studio; allí puedes generar las llaves que usarás n para llamar al modelo de IA y que usa el agente.

Figura 12. Archivo .env

Figura 12. Archivo .env

Configura el agente mediante las variables de entorno.

nano .env

GOOGLE_GENAI_USE_VERTEXAI=0
GOOGLE_API_KEY=

Inicializa el agente con el siguiente comando

adk web - allow_origins="*"

Configura el agente usando esta pieza de código:

import os
from dotenv import load_dotenv
from google.adk.agents.llm_agent import Agent
from google.adk.tools.mcp_tool.mcp_toolset import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPConnectionParams
# Load environment variables from .env file
load_dotenv()
# Configure MCP Toolset for COVID-19
covid_toolset = McpToolset(
  connection_params=StreamableHTTPConnectionParams(
  url="https://<YOUR-HOSTNAME>/mcp/covid-19"
  )
)
root_agent = Agent(
model='gemini-3.5-flash',
tools=[covid_toolset],
name='covid_agent',
description="An agent that retrieves COVID-19 data using an MCP server.",
instruction=(
  "Eres un experto en datos de COVID-19. Tu objetivo es ayudar a los usuarios a obtener información sobre la pandemia. "
  "Debes responder a las consultas de los usuarios en español. "
  "Utiliza las herramientas proporcionadas por el servidor MCP para recuperar los datos necesarios. "
  "Si el usuario pregunta en español, tradúcelo internamente para llamar a las herramientas si es necesario, pero responde siempre en español. "
  "Asegúrate de proporcionar información precisa y actualizada basada en los datos recuperados."
  ),
)
if __name__ == "__main__":
  print(f"Agent '{root_agent.name}' initialized and ready.")
  print(f"Model configured: {root_agent.model}")

El cambio principal en este agente es la importación de herramientas a través de un servidor MCP, que se observa en la variable covid_toolset.

Paso 5

Es importante comprender que, aunque el servidor MCP está en inglés (porque así se encontraban las herramientas y los endpoints), es posible especificar que el agente interactúe en español. Este ajuste nos permite lograr una comunicación mucho más fluida.

Ejecutar una prueba consumiendo el agente

Figura 13. Agente corriendo en el ADK Web, mostrando los resultados

Figura 13. Agente corriendo en el ADK Web, mostrando los resultados

Visualiza el consumo en la pantalla de debug de Apigee.

Figura 14. Debug del agente en Apigee.

Figura 14. Debug del agente en Apigee.

Conclusion

A través de este ejercicio, hemos demostrado cómo utilizar los servicios actuales para adaptarnos al cambio que supone el uso de agentes en la industria, permitiendo integraciones más naturales. Los esfuerzos enfocados en APIs son plenamente compatibles con el uso de agentes; esto demuestra que ambos son complementarios y permiten obtener grandes resultados sin perder el control de la plataforma.

En un futuro artículo, exploraremos cómo agregar seguridad al Servidor MCP y profundizaremos en el valor de una AI Gateway como Apigee. Esta herramienta no se limita a las APIs, sino que es la puerta de entrada a cualquier solución de IA, proporcionando una capa robusta para gestionar la seguridad, el tráfico y las nuevas capacidades, tales como filtros de prompting o contabilización de tokens.

Referencias:


메타데이터
post_id
9763feb390bc
slug
migra-tus-apis-rest-a-mcp-server-con-apigee-9763feb390bc
url
https://medium.com/google-cloud-hispanoamerica/migra-tus-apis-rest-a-mcp-server-con-apigee-9763feb390bc
canonical_url
https://medium.com/google-cloud-hispanoamerica/migra-tus-apis-rest-a-mcp-server-con-apigee-9763feb390bc
author_url
https://medium.com/@carlosreyesv
status
ok
fetched_at
2026-07-10 04:31:59