Skip to main content
Glama

Model Context Protocol (MCP) Server

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 MCP
    • server.py : servidor WebSocket que maneja solicitudes MCP y proporciona herramientas/recursos de muestra
  • client/ : Implementación del cliente MCP
    • client.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:

  1. Negociación de capacidad : Protocolo de enlace cliente-servidor mediante initialize
  2. Descubrimiento de capacidades : Listado de herramientas y recursos disponibles
  3. Invocación de herramienta : llamar a la herramienta add_numbers con parámetros
  4. Acceso a recursos : lectura del contenido textual de un recurso

Configuración

  1. Crear un entorno virtual:
    python3 -m venv .venv source .venv/bin/activate
  2. Instalar dependencias:
    pip install -r requirements.txt

Uso

  1. Inicie el servidor MCP (en una terminal):
    python server/server.py
  2. Ejecute el cliente MCP (en otra terminal):
    python client/client.py

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étodoDescripción
initializeApretón de manos para establecer capacidades
tools/listLista de herramientas disponibles
tools/callLlamar a una herramienta con argumentos
resources/listLista de recursos disponibles
resources/readLeer el contenido del recurso
prompts/listLista 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

-
security - not tested
F
license - not found
-
quality - not tested

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.

  1. ¿Qué es MCP?
    1. Estructura del proyecto
      1. Características demostradas
        1. Configuración
          1. Uso
            1. Cómo funciona
              1. Servidor MCP
              2. Cliente MCP
            2. Detalles del protocolo
              1. Ampliación del proyecto
                1. Referencias

                  Related MCP Servers

                  • -
                    security
                    A
                    license
                    -
                    quality
                    A Python-based MCP server that integrates OpenAPI-described REST APIs into MCP workflows, enabling dynamic exposure of API endpoints as MCP tools.
                    Last updated -
                    2
                    109
                    Python
                    MIT License
                    • Linux
                    • Apple
                  • -
                    security
                    A
                    license
                    -
                    quality
                    A 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 -
                    15
                    Python
                    MIT License
                  • -
                    security
                    F
                    license
                    -
                    quality
                    A Python implementation of the Model Context Protocol (MCP) that connects client applications with AI models, primarily Anthropic's models, with setup instructions for local development and deployment.
                    Last updated -
                    Python
                    • Apple
                    • Linux
                  • -
                    security
                    A
                    license
                    -
                    quality
                    A dynamic MCP server that automatically discovers Python files in a directory and exposes them as tools to any MCP-compatible AI client, allowing users to easily create and deploy custom AI tools.
                    Last updated -
                    Python
                    MIT License

                  View all related MCP servers

                  MCP directory API

                  We provide all the information about MCP servers via our MCP API.

                  curl -X GET 'https://glama.ai/api/mcp/v1/servers/suspicious-cow/MCP2'

                  If you have feedback or need assistance with the MCP directory API, please join our Discord server