Integrations
Provides capability to upload screenshots to Cloudflare for storage and hosting, with options for custom filenames and debugging.
Enables injection of custom CSS into websites before capturing screenshots, allowing customization of page appearance.
Allows injection of custom JavaScript into websites before capturing screenshots, enabling customization of page behavior.
ScreenshotOne.com - Servidor MCP
Este proyecto proporciona un servidor de Protocolo de Contexto de Modelo (MCP) que conecta a los asistentes de IA con la API de ScreenshotOne.com para capturar capturas de pantalla de sitios web.
Funciones disponibles
- [x] Toma capturas de pantalla de cualquier URL
- [x] Renderizar contenido HTML y tomar capturas de pantalla
- [x] Personalizar el tamaño de la ventana gráfica y la emulación del dispositivo
- [x] Capturar capturas de pantalla de página completa
- [x] Seleccionar elementos específicos usando selectores CSS
- [x] Múltiples formatos de salida (PNG, JPEG, WebP, PDF)
- [x] Bloquear anuncios, rastreadores y banners de cookies
- [x] Inyectar CSS y JavaScript personalizados
- [x] Controlar el comportamiento y el tiempo de espera
Captura de pantallaOne.com
- Sitio web
- Patio de juegos
- Documentación de la API
- Crea tu clave API aquí
Transportes soportados
- [x] Transporte "stdio" : transporte predeterminado para el uso de CLI
- [x] Transporte"HTTP transmitible" : para clientes web
- [ ] Implementar autenticación (encabezados "Autorización" con
Bearer <token>
)
- [ ] Implementar autenticación (encabezados "Autorización" con
- [ ]
transporte "sse"(Obsoleto) - [ ] Escribir pruebas
Cómo utilizar
CLI
Configuración de MCP
Para la configuración local con transporte stdio:
Para la configuración HTTP remota:
Variables de entorno para el transporte HTTP:
Puede configurar el servidor HTTP utilizando estas variables de entorno:
MCP_HTTP_HOST
: El host al que vincularse (predeterminado:127.0.0.1
)MCP_HTTP_PORT
: El puerto para escuchar (predeterminado:8080
)MCP_HTTP_PATH
: La ruta del punto final (predeterminado:/mcp
)
Descripción general del código fuente
¿Qué es MCP?
El Protocolo de Contexto de Modelo (MCP) es un estándar abierto que permite a los sistemas de IA conectarse de forma segura y contextual con herramientas y fuentes de datos externas.
Esta plantilla implementa la especificación MCP con una arquitectura limpia y en capas que puede ampliarse para crear servidores MCP personalizados para cualquier API o fuente de datos.
¿Por qué utilizar este texto estándar?
- Arquitectura lista para producción : sigue el mismo patrón utilizado en los servidores MCP publicados, con una clara separación entre CLI, herramientas, controladores y servicios.
- Seguridad de tipos : creado con TypeScript para mejorar la experiencia del desarrollador, la calidad del código y la facilidad de mantenimiento.
- Ejemplo de trabajo : incluye una herramienta de búsqueda de IP completamente implementada que demuestra el patrón completo desde la CLI hasta la integración de API.
- Marco de pruebas : incluye infraestructura de pruebas para pruebas de integración unitarias y CLI, incluidos informes de cobertura.
- Herramientas de desarrollo : incluye ESLint, Prettier, TypeScript y otras herramientas de calidad preconfiguradas para el desarrollo de servidores MCP.
Empezando
Prerrequisitos
- Node.js (>=18.x): Descargar
- Git : para el control de versiones
Paso 1: Clonar e instalar
Paso 2: Ejecutar el servidor de desarrollo
Inicie el servidor en modo de desarrollo con el transporte stdio (predeterminado):
O con el transporte HTTP Streamable:
Esto inicia el servidor MCP con recarga activa y habilita el Inspector MCP en http://localhost:5173 .
⚙️ El servidor proxy escucha en el puerto 6277 🔍 MCP Inspector está en funcionamiento en http://127.0.0.1:6274
Al utilizar el transporte HTTP, el servidor estará disponible en http://127.0.0.1:8080/mcp de forma predeterminada.
Paso 3: Pruebe la herramienta de captura de pantalla
Tome una captura de pantalla usando la CLI:
Arquitectura
Este modelo sigue un patrón de arquitectura limpio y en capas que separa las preocupaciones y promueve la capacidad de mantenimiento.
Estructura del proyecto
Capas y responsabilidades
Capa CLI ( src/cli/*.cli.ts
)
- Propósito : Definir interfaces de línea de comandos que analizan argumentos y llaman a controladores.
- Nombre : Los archivos deben llamarse
<feature>.cli.ts
- Pruebas : pruebas de integración de CLI en
<feature>.cli.test.ts
Capa de herramientas ( src/tools/*.tool.ts
)
- Propósito : Definir herramientas MCP con esquemas y descripciones para asistentes de IA.
- Nombre : Los archivos deben llamarse
<feature>.tool.ts
con tipos en<feature>.types.ts
- Patrón : Cada herramienta debe usar zod para la validación de argumentos
Capa de controladores ( src/controllers/*.controller.ts
)
- Propósito : Implementar lógica empresarial, manejar errores y dar formato a respuestas.
- Nombre : Los archivos deben llamarse
<feature>.controller.ts
- Patrón : Debe devolver objetos
ControllerResponse
estandarizados
Capa de servicios ( src/services/*.service.ts
)
- Propósito : Interactuar con API externas o fuentes de datos
- Nombre : Los archivos deben llamarse
<feature>.service.ts
- Patrón : Interacciones de API puras con lógica mínima
Capa de utilidades ( src/utils/*.util.ts
)
- Propósito : Proporcionar funcionalidad compartida en toda la aplicación.
- Utilidades clave :
logger.util.ts
: Registro estructuradoerror.util.ts
: Manejo de errores y estandarizaciónformatter.util.ts
: ayudantes de formato Markdown
Guía de desarrollo
Scripts de desarrollo
Pruebas
Calidad del código
Creación de herramientas personalizadas
Siga estos pasos para agregar sus propias herramientas al servidor:
1. Definir la capa de servicio
Cree un nuevo servicio en src/services/
para interactuar con su API externa:
2. Crear controlador
Agregue un controlador en src/controllers/
para manejar la lógica empresarial:
3. Implementar la herramienta MCP
Crea una definición de herramienta en src/tools/
:
4. Agregar compatibilidad con CLI
Cree un comando CLI en src/cli/
:
5. Registrar componentes
Actualice los puntos de entrada para registrar sus nuevos componentes:
Herramientas de depuración
Inspector de MCP
Acceda al Inspector visual de MCP para probar sus herramientas y ver los detalles de la solicitud/respuesta:
- Ejecutar
npm run dev:server
- Abra http://localhost:5173 en su navegador
- Pruebe sus herramientas y vea los registros directamente en la interfaz de usuario
Registros del servidor
Habilitar registros de depuración para el desarrollo:
Publicación de su servidor MCP
Cuando esté listo para publicar su servidor MCP personalizado:
- Actualice package.json con sus datos
- Actualice README.md con la documentación de su herramienta
- Construya el proyecto:
npm run build
- Pruebe la compilación de producción:
npm run start:server
- Publicar en npm:
npm publish
Licencia
Nota: Para compatibilidad con versiones anteriores, el servidor también reconocerá las configuraciones con el nombre completo del paquete ( screenshotone-mcp-server
) o con el nombre sin ámbito ( screenshotone-mcp-server
) si no se encuentra la clave screenshotone
. Sin embargo, se recomienda usar la clave corta screenshotone
para las nuevas configuraciones.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Conecta asistentes de IA a la API de ScreenshotOne.com para capturar capturas de pantalla de sitios web con opciones personalizables que incluyen tamaño de la ventana gráfica, capturas de página completa y múltiples formatos de salida.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that provides AI vision capabilities for analyzing UI screenshots, offering tools for screen analysis, file operations, and UI/UX report generation.Last updated -261JavaScriptISC License
- AsecurityAlicenseAqualityAn official MCP server implementation that allows AI assistants to capture website screenshots through the ScreenshotOne API, enabling visual context from web pages during conversations.Last updated -16TypeScriptMIT License
- -securityFlicense-qualityEnables AI tools to capture and process screenshots of a user's screen, allowing AI assistants to see and analyze what the user is looking at through a simple MCP interface.Last updated -1Python
- -securityFlicense-qualityCaptures screenshots and saves them to file paths specified by client applications, primarily designed to facilitate screenshot analysis by AI assistants running in WSL environments.Last updated -Python