Integrations
Provides a Python implementation of both MCP client and server components, allowing Python applications to expose and access MCP capabilities.
Employs WebSocket connections for real-time bidirectional communication between MCP clients and servers, supporting the complete MCP handshake and capability negotiation process.
Implementación del Protocolo de Contexto de Modelo (MCP) en Python
Este proyecto implementa un servidor y un cliente del Protocolo de Contexto de Modelo (MCP) en Python, siguiendo la especificación MCP antrópica. Demuestra los patrones clave del protocolo MCP mediante un ejemplo sencillo e interactivo.
¿Qué es MCP?
El Protocolo de Contexto de Modelo (MCP) es un estándar abierto basado en JSON-RPC 2.0 para conectar modelos de IA a fuentes de datos y herramientas externas. Define una arquitectura cliente-servidor donde una aplicación de IA se comunica con uno o más servidores MCP, cada uno de los cuales ofrece capacidades como:
- Herramientas : Funciones ejecutables que realizan acciones
- Recursos : Fuentes de datos que proporcionan información
- Avisos : Plantillas o flujos de trabajo predefinidos
MCP estandariza cómo se descubren e invocan estas capacidades, y actúa como un "USB-C para IA" que permite que los modelos interactúen con sistemas externos de forma estructurada.
Estructura del proyecto
server/
: Implementación del servidor MCPserver.py
: servidor WebSocket que maneja solicitudes MCP y proporciona herramientas/recursos de muestra
client/
: Implementación del cliente MCPclient.py
: Cliente de demostración que se conecta al servidor y ejercita todas las capacidades de MCP
Características demostradas
Esta implementación muestra el flujo principal del protocolo MCP:
- Negociación de capacidad : Protocolo de enlace cliente-servidor mediante
initialize
- Descubrimiento de capacidades : Listado de herramientas y recursos disponibles
- Invocación de herramienta : llamar a la herramienta
add_numbers
con parámetros - Acceso a recursos : lectura del contenido textual de un recurso
Configuración
- Crear un entorno virtual:Copy
- Instalar dependencias:Copy
Uso
- Inicie el servidor MCP (en una terminal):Copy
- Ejecute el cliente MCP (en otra terminal):Copy
El cliente se conectará al servidor, realizará el protocolo de enlace MCP, descubrirá capacidades y demostrará cómo invocar herramientas y acceder a recursos con salida formateada.
Cómo funciona
Servidor MCP
El servidor:
- Acepta conexiones WebSocket
- Responde a solicitudes JSON-RPC siguiendo la especificación MCP
- Proporciona una herramienta de muestra (
add_numbers
) - Proporciona un recurso de muestra (
example.txt
) - Admite el protocolo de enlace MCP y el descubrimiento de capacidades
Cliente MCP
El cliente:
- Se conecta al servidor a través de WebSocket
- Realiza el protocolo de enlace MCP
- Descubre las herramientas y recursos disponibles
- Demuestra cómo llamar a una herramienta y leer un recurso.
- Presenta los resultados en una pantalla formateada
Detalles del protocolo
MCP implementa estos métodos clave:
Método | Descripción |
---|---|
initialize | Apretón de manos para establecer capacidades |
tools/list | Lista de herramientas disponibles |
tools/call | Llamar a una herramienta con argumentos |
resources/list | Lista de recursos disponibles |
resources/read | Leer el contenido del recurso |
prompts/list | Lista de indicaciones disponibles |
Ampliación del proyecto
Puede ampliar esta implementación mediante:
- Agregar más herramientas con diferentes capacidades
- Agregar recursos dinámicos que cambian en cada lectura
- Implementación de plantillas de indicaciones para interacciones guiadas
- Creación de aplicaciones de cliente más interactivas
Referencias
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Una implementación en Python del servidor MCP que permite que los modelos de IA se conecten con herramientas externas y fuentes de datos a través de un protocolo estandarizado, admitiendo la invocación de herramientas y el acceso a recursos a través de JSON-RPC.
Related MCP Servers
- -securityAlicense-qualityA simple MCP server implementation that provides AI models with basic Solana RPC methods and helpful development prompts.Last updated -21TypeScriptMIT License
- -securityFlicense-qualityImplements the Model Context Protocol (MCP) to provide AI models with a standardized interface for connecting to external data sources and tools like file systems, databases, or APIs.Last updated -90Python
- -securityAlicense-qualityA streamlined foundation for building Model Context Protocol servers in Python, designed to make AI-assisted development of MCP tools easier and more efficient.Last updated -13PythonMIT License
- -securityFlicense-qualityA simple demonstration project for the Model Control Protocol (MCP) server that provides tools for AI assistants to fetch news articles, perform calculations, retrieve weather data, and generate personalized greetings.Last updated -Python