iMessage Query

Un servidor MCP para consultar tu base de datos de iMessage en macOS, permitiendo que los LLMs accedan y busquen conversaciones de forma segura.

Documentación

iMessage Query MCP Server

Un servidor MCP que proporciona acceso seguro a tu base de datos de iMessage a través del Protocolo de Contexto de Modelo (MCP). Este servidor está construido con el framework FastMCP y la librería imessagedb, lo que permite a los LLM consultar y analizar conversaciones de iMessage con validación adecuada de números de teléfono y manejo de archivos adjuntos.

📋 Requisitos del Sistema

  • macOS (requerido para el acceso a la base de datos de iMessage)
  • Python 3.6+

📦 Dependencias

Instala todas las dependencias requeridas:

# Using pip
pip install -r requirements.txt

Paquetes Requeridos

  • fastmcp: Framework para construir servidores de Protocolo de Contexto de Modelo
  • imessagedb: Librería de Python para acceder y consultar la base de datos de Mensajes de macOS
  • phonenumbers: Librería de Google para el manejo de números de teléfono, para una validación y formato adecuados

Todas las dependencias están especificadas en requirements.txt para una instalación sencilla.

📑 Tabla de Contenidos

🛠️ Herramientas MCP

El servidor expone las siguientes herramientas a los LLM:

get_chat_transcript

Recupera el historial de mensajes de un número de teléfono específico con filtrado opcional por fecha. Incluye:

  • Texto del mensaje y marcas de tiempo
  • Información de archivos adjuntos (si los hay)
  • Validación adecuada de números de teléfono
  • Filtrado por rango de fechas

🚀 Primeros Pasos

Clona el repositorio:

git clone https://github.com/hannesrudolph/imessage-query-fastmcp-mcp-server.git
cd imessage-query-fastmcp-mcp-server

📦 Opciones de Instalación

Puedes instalar este servidor MCP en Claude Desktop o en el plugin Cline de VSCode. Elige la opción que mejor se adapte a tus necesidades.

Opción 1: Instalar para Claude Desktop

Instala usando FastMCP:

fastmcp install imessage-query-server.py --name "iMessage Query"

Opción 2: Instalar para el Plugin Cline de VSCode

Para usar este servidor con el plugin Cline de VSCode:

  1. En VSCode, haz clic en el icono de servidor (☰) en la barra lateral del plugin Cline
  2. Haz clic en el botón "Editar Configuración de MCP" (✎)
  3. Añade la siguiente configuración al archivo de configuración:
{
  "imessage-query": {
    "command": "uv",
    "args": [
      "run",
      "--with",
      "fastmcp",
      "fastmcp",
      "run",
      "/path/to/repo/imessage-query-server.py"
    ]
  }
}

Reemplaza /path/to/repo con la ruta completa donde clonaste este repositorio (por ejemplo, /Users/username/Projects/imessage-query-fastmcp-mcp-server)

🔒 Características de Seguridad

  • Acceso de solo lectura a la base de datos de iMessage
  • Validación de números de teléfono usando la librería phonenumbers
  • Manejo seguro de archivos adjuntos con detección de archivos faltantes
  • Validación de rango de fechas
  • Supresión de salida de progreso para respuestas JSON limpias

📚 Documentación de Desarrollo

El repositorio incluye archivos de documentación para el desarrollo:

  • dev_docs/imessagedb-documentation.txt: Contiene documentación completa sobre la estructura de la base de datos de iMessage y las capacidades de la librería imessagedb.

Esta documentación sirve como contexto al desarrollar funciones y puede usarse con LLM para ayudar en el desarrollo.

⚙️ Variables de Entorno

No se requieren variables de entorno, ya que el servidor localiza automáticamente la base de datos de iMessage en la ubicación predeterminada de macOS.