TextEdit-MCP
MCP basado en Swift para crear documentos RTF perfectamente formateados usando las APIs nativas de TextEdit de Apple
Documentación
TextEdit MCP
Pídele a tu IA (Claude, ChatGPT, Cursor o cualquier cliente MCP) un documento formateado. Abre un RTF real en TextEdit.
Demo simulada, no una captura real de macOS. La herramienta es create_rtf_document. Escribe un .rtf real que puedes abrir en TextEdit, Pages o Word.
Un servidor de Model Context Protocol (MCP) que permite a Claude Desktop crear documentos RTF bellamente formateados con compatibilidad nativa con TextEdit de macOS.
Inicio rápido
macOS, Swift 5.9 o posterior, y un cliente MCP.
- Clona el repositorio:
git clone https://github.com/M-Pineapple/TextEdit-MCP.git
cd TextEdit-MCP
- Ejecuta el instalador:
./install.sh
- Reinicia tu cliente MCP y pide un RTF formateado en tu Escritorio.
Características
-
📝 Formato de texto enriquecido
- Negrita, cursiva, subrayado, tachado
- Encabezados (H1-H2)
- Formato de párrafo con espaciado personalizable
-
🎨 Colores y resaltado
- Colores de texto: Rojo, Azul, Verde
- Colores de resaltado: Amarillo, Cian, Verde, Naranja
- Soporte completo de color en tablas
-
📊 Tablas
- Tablas RTF reales con bordes
- Estilo de fila de encabezado
- Soporte completo de formato dentro de celdas
- Relleno y alineación automática de celdas
-
🔗 Hipervínculos
- URLs clicables
- Texto de enlace formateado
- Funciona en TextEdit, Pages y Word
-
📋 Listas
- Viñetas
- Listas numeradas
- Sangría adecuada
-
🎯 Plantillas
- Negocios (predeterminada)
- Técnica (monoespaciada)
- Reunión (espaciado de línea aumentado)
-
🛡️ Protección de rutas
- Solo archivos
.rtfnuevos, dentro de la carpeta de inicio - Rutas ocultas, sobrescrituras y enlaces simbólicos que resuelven fuera del inicio son rechazados
- Solo archivos
Instalación
Requisitos previos
- macOS (requerido para NSAttributedString y generación de RTF)
- Swift 5.0 o posterior
- Claude Desktop
El instalador:
- Compilará el proyecto Swift
- Instalará el binario del servidor MCP
- Actualizará tu configuración de Claude Desktop
- Creará una copia de seguridad de tu configuración existente
Consulta Inicio rápido para los tres comandos.
Uso
En Claude Desktop, puedes crear documentos RTF usando lenguaje natural:
"Create an RTF document with my meeting notes"
"Make a formatted report with tables and highlights"
"Generate a technical document with code examples"
O usa la herramienta directamente:
Use textedit:create_rtf_document to create a document at ~/Desktop/MyDoc.rtf
Sintaxis de formato
TextEdit MCP usa una sintaxis intuitiva similar a Markdown:
Formato de texto
**Bold text***Italic text****Bold italic text***~~Strikethrough text~~
Colores
{red}Red text{/red}{blue}Blue text{/blue}{green}Green text{/green}
Resaltado
==Yellow highlight==[[Cyan highlight]]{{Green highlight}}((Orange highlight))
Encabezados
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
Listas
• Bullet point (or use - )
1. Numbered item
2. Another item
Tablas
| Column 1 | Column 2 | Column 3 |
|----------|----------|----------|
| Data 1 | Data 2 | Data 3 |
| More | Data | Here |
Enlaces
[Link text](https://example.com)
Ejemplos
Documento simple
# Meeting Notes
## Agenda
- Review **Q4 results**
- Discuss {red}urgent issues{/red}
- Plan for next quarter
## Action Items
1. ==Update documentation==
2. [[Review code changes]]
3. Schedule follow-up
Tabla con formato
| Task | Status | Owner |
|------|--------|-------|
| **Documentation** | {green}✅ Complete{/green} | Team A |
| *Testing* | ==In Progress== | Team B |
| Deployment | {red}Blocked{/red} | DevOps |
Desarrollo
Compilar desde el código fuente
swift build -c release
Ejecutar pruebas
swift test
Estructura del proyecto
TextEdit-MCP/
├── Sources/
│ └── TextEditMCP/
│ ├── main.swift # Entry point
│ ├── MCPServer.swift # MCP protocol handler
│ ├── RTFDocumentService.swift # RTF generation
│ └── MCPLogger.swift # Logging utility
├── docs/
│ ├── demo.gif # Simulated README demo
│ └── generate-demo-gif.py # Regenerates the demo GIF
├── Package.swift
├── README.md
├── FORMATTING_GUIDE.md
└── install.sh
Cómo funciona
- Protocolo MCP: Implementa el Model Context Protocol para comunicarse con Claude Desktop
- NSAttributedString: Usa APIs nativas de macOS para formato de texto enriquecido
- NSTextTable: Crea tablas RTF reales con bordes y formato de celdas adecuados
- Exportación RTF: Genera archivos RTF estándar compatibles con TextEdit, Pages y Word
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar un Pull Request.
Pautas
- Mantén la compatibilidad con TextEdit de macOS
- Sigue las convenciones de nomenclatura de Swift
- Agrega pruebas para nuevas funciones
- Actualiza la documentación
Soporte
Si esto te ahorra tiempo, una estrella ayuda a que otros lo encuentren.
Si encuentras útil esta herramienta, considera apoyar el desarrollo:
Más servidores MCP de M-Pineapple
Otros servidores MCP en este portafolio:
- Claude Project Coordinator. Rastrea proyectos Xcode, estado, stack tecnológico y salud.
- CryptoAnalysisMCP. Análisis técnico de criptomonedas para Claude Desktop.
- Warp Command Runner. Dale una terminal real a cualquier IA de chat.
- Msty Admin MCP. Administra Msty Studio Desktop.
- Member Berries. Calendario, Notas y Recordatorios de Apple con personalidad.
- SeaShell. Habla con Claude desde cualquier bloque de terminal.
- HubSpot Auditor. Auditoría de portal HubSpot de solo lectura.
Licencia
Licencia MIT. Consulta LICENSE para más detalles.
Agradecimientos
- Creado para uso con Claude Desktop
- Construido con Swift y AppKit
- Usa Model Context Protocol (MCP)
Creado por Pineapple 🍍
