Kamy
API de generación de PDF para desarrolladores. Envía facturas, recibos, contratos e informes con valores predeterminados magníficos.
Instalación
# SDK — in your app
npm i @kamydev/sdk
# CLI — globally for scripts, CI, previews
npm i -g @kamydev/cliimport Kamy from "@kamydev/sdk";
const kamy = new Kamy({ apiKey: process.env.KAMY_API_KEY! });
const pdf = await kamy.render({
template: "invoice",
data: { invoiceNumber: "INV-001", total: 1500, currency: "USD" },
});
console.log(pdf.url); // signed URL, valid 1 hourNovedades
Fecha | Cambio | ||
Abr 2026 |
| ||
Abr 2026 | El SDK ahora incluye tipos generados por OpenAPI: | ||
Abr 2026 | Validación de JSON Schema por plantilla en el momento del renderizado mediante Ajv (formatos habilitados). Anteriormente solo se comprobaba | ||
Abr 2026 |
| ||
Abr 2026 | La especificación OpenAPI 3.0.3 ahora cubre las 19 rutas | ||
Abr 2026 | CLI | ||
Abr 2026 |
| ||
Abr 2026 | `options.pdfA: "1b" | "2b" | "3b"`: etiquetado de archivo PDF/A de mejor esfuerzo mediante sRGB ICC OutputIntent + XMP incrustados. |
Abr 2026 |
| ||
Abr 2026 |
|
Detalles completos por versión en CHANGELOG.md.
Arquitectura
Kamy es un monorepo de Turborepo que contiene:
Paquete | Descripción |
| Aplicación Next.js 15: página de inicio, panel de control, API REST |
| Cloudflare Worker: servidor MCP para agentes de codificación de IA |
| Sitio de documentación Nextra |
|
|
|
|
|
|
|
|
|
|
Requisitos previos
Node.js 22+
pnpm 10+
Supabase CLI (
brew install supabase/tap/supabase)Wrangler CLI (
pnpm add -g wrangler): para el servidor MCP
Desarrollo local
# 1. Install dependencies
pnpm install
# 2. Copy env file and fill in values
cp .env.example apps/web/.env.local
# 3. Start local Supabase (requires Docker)
supabase start
# 4. Apply database migrations
supabase db reset
# 5. Generate TypeScript types from schema
supabase gen types typescript --local > packages/shared/src/types/database.ts
# 6. Start all apps in dev mode
pnpm devLa aplicación web se ejecuta en https://kamy.dev
Comandos
pnpm dev # Start all apps with Turbopack (hot reload)
pnpm build # Production build all apps
pnpm typecheck # TypeScript check across all packages
pnpm lint # Biome lint + format check
pnpm lint:fix # Biome auto-fix
pnpm test # Run all tests (Vitest unit + Playwright E2E)
pnpm test:unit # Vitest unit tests only
pnpm test:e2e # Playwright E2E tests only
pnpm clean # Remove all build artifactsBase de datos
Las migraciones residen en supabase/migrations/. Se aplican en orden por marca de tiempo.
# Reset and reseed local DB
supabase db reset
# Create a new migration
supabase migration new <name>
# Push to remote Supabase project
supabase db pushDespliegue
Aplicación web: Desplegada en Vercel al hacer merge a
mainServidor MCP: Desplegado en Cloudflare Workers mediante
wrangler deployBase de datos: Alojada en Supabase Cloud
Variables de entorno
Consulta .env.example para ver todas las variables requeridas con sus descripciones.
Stack tecnológico
Framework: Next.js 15 (App Router, React Server Components, Turbopack)
Lenguaje: TypeScript 5.7+ estricto
Base de datos: Supabase (Postgres 16 + Auth + Storage)
Estilos: Tailwind CSS v4 (motor Oxide)
Pagos: Stripe (API de medidores)
Motor PDF: Browserless.io v2
Correo electrónico: Resend + React Email
Observabilidad: Sentry + PostHog + Axiom
Pruebas: Vitest + Playwright + MSW
Plugins abiertos
Este repositorio incluye una distribución de Open Plugins para que los agentes de codificación de IA (Cursor, Claude Code y cualquier otra herramienta compatible con Open-Plugins) puedan instalar Kamy como un único plugin y obtener una canalización de PDF lista para usar.
El plugin agrupa cuatro componentes en la raíz del repositorio:
Ruta | Componente | Propósito |
| Manifiesto | Nombre, versión, metadatos, componentes declarados |
| Habilidad | Enseña al agente cuándo y cómo renderizar PDFs |
| Regla | Convenciones de codificación para |
| Sub-agente | Agente especializado en diseño de plantillas (Handlebars + CSS de impresión) |
| Servidor MCP | MCP alojado en |
Para instalar el plugin en un agente compatible, apúntalo a este repositorio (https://github.com/rakanalalami/kamy) y sigue el flujo de instalación de plugins del host. El agente leerá el manifiesto y cargará los componentes automáticamente.
Consulta la especificación de Open Plugins para ver el esquema completo.
This server cannot be deployed
Related MCP Connectors
Hosted MCP server: convert PDFs to clean, LLM-ready Markdown with tables, formulas and OCR.
MCP server for Api2Pdf — generate PDFs & images from HTML, URLs or office files; merge, barcodes.
Turn a description into a shareable, editable PDF — invoices, certificates, reports, resumes.
Hosted MCP server for Anvil — fill & generate PDFs and run Etch e-signature packets for AI agents.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables creative PDF generation with full design control including colors, shapes, emoji, and Unicode support. Supports everything from simple documents to artistic masterpieces using PDFKit's powerful API.51,421 npm2MIT