Integración de LLM con cliente MCP usando GitHub tokens
Clase 7 de 22 • Curso de MCP con Microsoft Azure
Contenido del curso
- 5

Configuración de ambientes virtuales con UV en Python
05:48 - 6

Creación de cliente Python para comunicación con servidor
07:19 - 7

Integración de LLM con cliente MCP usando GitHub tokens
11:38 - 8

Conexiones SSE en Fast MCP para streaming eficiente
05:45 - 9

Integración de LLM con servidores MCP usando AI Toolkit
11:15 - 10

Uso de servidor MCP por línea de comandos
08:54 - 11

Despliegue de servidores MCP en Azure Container Apps
09:39 - 12

Configuración de servidores MCP en Visual Studio Code con Copilot
09:53 quiz de Conceptos basicos de MCP
- 13

Configuración de Azure MCP Server en VS Code para consultas directas
06:46 - 14

Herramientas avanzadas de MCP para optimizar servidores y seguridad
03:54 - 15

Configuración de LLM en Azure AI Foundry para MCP Server
14:10 - 16

Procesamiento multimodal de imágenes en servidores MCP con NumPy
09:48 - 17

Gestión de contexto dinámico en agentes de IA con MCP y Python
05:02 - 18

Enrutamiento de herramientas con MCP Server
09:20 quiz de MCP avanzado
Integración de Azure AI Inference con tu cliente MCP
¿Por qué integrar un modelo LLM con MCP?
Integrar un Large Language Model (LLM) como GPT-4 con tu cliente MCP permite transformar comandos humanos simples en acciones que el servidor pueda procesar. Esto mejora la experiencia al interactuar con tu proyecto, haciendo que las instrucciones sean más naturales, humanas y comprensibles.
En lugar de escribir código estructurado como add(a=2, b=20), ahora podrás decir cosas como "Agrega dos a veinte", y el modelo sabrá qué función ejecutar en el servidor.
¿Cómo integrar Azure AI Inference con tu cliente MCP?
1. Configurar credenciales de Azure AI
Antes de empezar, necesitas tener acceso a Azure AI Inference. Aquí te explicamos cómo configurarlo:
- Ve a Azure Portal y accede a tu cuenta.
- Crea un recurso de Azure AI Foundry o Azure OpenAI.
- Una vez creado, ve a la sección Keys and Endpoint.
- Copia tu API Key y Endpoint.
- Si usas Azure OpenAI, también necesitarás el deployment name de tu modelo.
🔐 Recomendación: Usa un archivo
.envpara guardar estas credenciales y no exponerlas en tu código.
2. Estructura del proyecto
Organiza tu proyecto con la siguiente estructura:
mcp-proyecto
└── clase6/
├── server.py
├── client.py
└── .env # Opcional pero recomendable
3. Instalación de librerías necesarias
Abre tu terminal y ejecuta:
pip install azure-ai-inference azure-core python-dotenv
4. Uso del archivo .env para tus credenciales
Dentro de tu archivo .env, agrega:
AZURE_AI_API_KEY=tu_api_key_de_azure
AZURE_AI_ENDPOINT=https://tu-endpoint.inference.ai.azure.com/
# Si usas Azure OpenAI, también agrega:
AZURE_OPENAI_DEPLOYMENT_NAME=tu_deployment_name
Y en tu client.py:
import os
from dotenv import load_dotenv
load_dotenv()
API_KEY = os.getenv("AZURE_AI_API_KEY")
ENDPOINT = os.getenv("AZURE_AI_ENDPOINT")
DEPLOYMENT_NAME = os.getenv("AZURE_OPENAI_DEPLOYMENT_NAME", "gpt-4")
5. Código en client.py: integración con Azure AI Inference
a. Importaciones necesarias
import json
from azure.core.credentials import AzureKeyCredential
from azure.ai.inference import ChatCompletionsClient
b. Convertir funciones del servidor al formato LLM
def convert_to_llm_tool():
return {
"name": "add",
"description": "Suma dos números",
"parameters": {
"type": "object",
"properties": {
"a": {"type": "integer", "description": "Primer número"},
"b": {"type": "integer", "description": "Segundo número"}
},
"required": ["a", "b"]
}
}
c. Función para llamar al LLM
def call_llm(prompt: str, functions: list):
client = ChatCompletionsClient(ENDPOINT, AzureKeyCredential(API_KEY))
messages = [{"role": "user", "content": prompt}]
tools = [{"type": "function", "function": f} for f in functions]
response = client.complete(
model=DEPLOYMENT_NAME, # Para Azure OpenAI usa deployment_name
messages=messages,
tools=tools
)
return response.choices[0].message.tool_calls
d. Integración final
if __name__ == "__main__":
prompt = "Agrega 2 a 20"
tools = [convert_to_llm_tool()]
print("Llamando al modelo de lenguaje...")
tool_calls = call_llm(prompt, tools)
if tool_calls:
for call in tool_calls:
print("Respuesta del modelo:")
print(json.dumps(call, indent=2))
else:
print("No se obtuvo respuesta.")
6. Ejecutar tu cliente MCP
Abre la terminal, navega al directorio del proyecto y ejecuta:
cd clase6
python3 client.py
Verás cómo el modelo interpreta tu frase en lenguaje natural y genera una llamada a la función del servidor, como add(a=2, b=20).
🔒 ¿Por qué usar un archivo .env?
Guardar tu token directamente en el código no es seguro. Usar .env te permite:
- Mantener tus datos sensibles fuera del repositorio.
- Compartir tu código sin comprometer credenciales.
- Seguir buenas prácticas de desarrollo seguro.
✅ ¿Qué aprendiste?
- Cómo generar un Personal Access Token en GitHub.
- Cómo estructurar tu cliente MCP para integrar un modelo LLM.
- Cómo transformar lenguaje natural en llamadas funcionales a tu servidor.
- Cómo proteger tus credenciales con
.env.