Math MCP Server for MacOS

Integrations

  • Allows integration with Apple Keynote for creating presentations, opening new documents, drawing shapes, and adding text to slides automatically.

  • Integrates with Google Gemini API for processing mathematical queries and generating responses that can be visualized in Keynote presentations.

  • Enables interaction with macOS applications specifically for creating visual presentations in Keynote, including drawing rectangles and adding text to slides.

Introducción a MCP: Dibujar y añadir texto a Keynote en macOS

Este proyecto implementa un agente matemático que utiliza el Protocolo de Control de Modelos (MCP) para realizar cálculos matemáticos y presentar resultados visualmente en Keynote para macOS. El agente puede dibujar formas y añadir texto a las diapositivas de Keynote, lo que resulta útil para crear presentaciones matemáticas.

Características

  • Operaciones matemáticas (suma, resta, multiplicación, división, etc.)
  • Funciones matemáticas avanzadas (factorial, logaritmos, funciones trigonométricas)
  • Cálculos de valores ASCII y operaciones de suma exponencial
  • Presentación visual en Keynote:
    • Dibujar rectángulos
    • Agregar texto a las diapositivas
    • Gestión automática de diapositivas

Prerrequisitos

  • Python 3.x
  • macOS (para la integración de Keynote)
  • Keynote instalado en su sistema
  • Clave API de Google Gemini

Instalación

  1. Clonar el repositorio:
git clone <your-repository-url> cd keynote-drawing-text
  1. Instalar las dependencias necesarias:
pip install -r requirements.txt
  1. Cree un archivo .env en la raíz del proyecto y agregue su clave API de Gemini:
GEMINI_API_KEY=your_api_key_here

Estructura del proyecto

  • mcp-server.py : Contiene la implementación del servidor con herramientas matemáticas e integración con Keynote
  • mcp-client.py : Implementa el cliente que se comunica con el LLM y administra el flujo de trabajo
  • requirements.txt : enumera todas las dependencias de Python

Uso

El script del cliente ( mcp-client.py ) gestiona automáticamente el inicio y la comunicación con el servidor MCP. Solo necesita ejecutar el cliente con su consulta:

python mcp-client.py "Your mathematical query here"

Por ejemplo:

python mcp-client.py "Find the ASCII values of characters in INDIA and then return sum of exponentials of those values"

Si no se proporciona ninguna consulta, el script utilizará una consulta predeterminada mencionada en el ejemplo anterior.

El cliente:

  1. Iniciar automáticamente el servidor MCP en segundo plano
  2. Abra Keynote y cree un nuevo documento
  3. Realizar las operaciones matemáticas solicitadas
  4. Dibuje un rectángulo en la diapositiva
  5. Añade el resultado como texto dentro del rectángulo

Nota: El servidor MCP se administra internamente mediante el script del cliente, por lo que no es necesario iniciarlo manualmente. El servidor gestiona todas las operaciones matemáticas y las interacciones con Keynote, mientras que el cliente gestiona la comunicación con el modelo de lenguaje y organiza el flujo de trabajo general.

Herramientas matemáticas disponibles

  • Operaciones básicas:
    • Adición ( add )
    • Resta ( subtract )
    • Multiplicación ( multiply )
    • División ( divide )
    • Poder ( power )
    • Raíz cuadrada ( sqrt )
    • Raíz cúbica ( cbrt )
  • Operaciones avanzadas:
    • Factorial ( factorial )
    • Logaritmo natural ( log )
    • Resto ( remainder )
    • Funciones trigonométricas ( sin , cos , tan )
    • secuencia de Fibonacci ( fibonacci_numbers )
    • Cálculos de valores ASCII ( strings_to_chars_to_int )
    • Suma exponencial ( int_list_to_exponential_sum )

Integración de Keynote

El proyecto incluye herramientas para la integración de Keynote:

  • mac_open_keynote : abre Keynote y crea un nuevo documento
  • mac_draw_rectangle : Dibuja un rectángulo en la diapositiva actual
  • mac_add_text_in_keynote : Agrega texto a la diapositiva actual

Manejo de errores

El sistema incluye un manejo integral de errores para:

  • Problemas de comunicación de la API
  • Operaciones matemáticas no válidas
  • Problemas de integración de Keynote
  • Manejo de tiempos de espera para respuestas LLM

Herramientas

  • Protocolo de control de modelos (MCP) para el marco
  • Google Gemini para el modelo de lenguaje
  • Apple Keynote para la plataforma de presentaciones

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

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

Implementa un agente matemático utilizando el Protocolo de Control de Modelos que realiza cálculos matemáticos y presenta visualmente los resultados en Keynote, lo que permite dibujar formas y agregar texto a las diapositivas.

  1. Features
    1. Prerequisites
      1. Installation
        1. Project Structure
          1. Usage
            1. Available Mathematical Tools
              1. Keynote Integration
                1. Error Handling
                  1. Tools
                    1. Contributing
                      ID: 6f8ostr2kt