PolicyForge

Genera, audita y mantiene políticas de privacidad, términos, políticas de cookies, EULAs, avisos legales y BAAs de HIPAA desde tu código base, con alojamiento y seguimiento de versiones.

Documentación

Servidor MCP de PolicyForge

Genera políticas legales — políticas de privacidad, términos de servicio, políticas de cookies, políticas de reembolso, EULAs, avisos legales y Acuerdos de Asociado de Negocio HIPAA — directamente desde tus herramientas de codificación con IA (Claude Code, Cursor, Windsurf, Claude Desktop) a través del Protocolo de Contexto de Modelo.

Pídele a tu agente "genera una política de privacidad GDPR + CCPA para esta aplicación" y él completa los detalles desde tu código base, llama a PolicyForge y coloca la política directamente en tu proyecto.

Pruébalo gratis: auditorías de cumplimiento (audit_compliance), verificaciones de desviación (check_policy_freshness) y la rúbrica de escaneo (get_disclosure_checklist) son ilimitadas y nunca tocan tu cuota — comienza con "audita nuestro cumplimiento — ¿la política de privacidad cubre todo lo que este código realmente hace?". Y la primera vez que tu cuenta se conecta a través de MCP obtiene 3 generaciones de políticas de bonificación además de las 2 gratuitas al mes — suficiente para generar políticas de privacidad, términos y cookies para un nuevo proyecto en una sola conversación.

Conectar

Elige la fila que coincida con tu cliente. Si no estás seguro, comienza con A.

Cómo inicias sesiónMejor para
A. Remoto + OAuthInicio de sesión en navegador, sin clave que copiarClientes que admiten OAuth (Claude, ChatGPT)
B. Remoto + clave APIAuthorization headerCualquier cliente que pueda enviar un header
C. Local (npx)POLICYFORGE_API_KEY variable de entornoEjecutar el servidor como proceso local

Los tres exponen las mismas herramientas. A y B no necesitan nada instalado.

A. Remoto con OAuth (lo más fácil)

Sin clave que copiar, sin archivo de configuración que editar. Necesitarás una cuenta de PolicyForge primero — https://policyforge.co, gratis, sin tarjeta.

1. Agrega el servidor. El -s user lo hace disponible en cada proyecto en lugar de solo en el directorio donde lo ejecutaste:

claude mcp add -s user --transport http policyforge https://policyforge.co/api/mcp

Nota que no hay --header. Omitirlo es lo que hace que el cliente use OAuth.

2. Reinicia tu cliente. La configuración de MCP se lee al inicio, por lo que una sesión que ya estaba en ejecución no verá el nuevo servidor.

3. Autentícate. Ejecuta /mcp, selecciona policyforge y presiona Enter:

policyforge · △ needs authentication

Tu navegador se abre, inicias sesión y apruebas, y el cliente almacena el token él mismo. Deberías volver a /mcp mostrando ✔ connected · 15 tools.

Para confirmar desde el otro lado, una clave llamada MCP · <your client> aparece en https://policyforge.co/api-dashboard — ese es el permiso, y eliminarlo revoca el acceso.

Otros clientes difieren en el paso 3: algunos solicitan en el primer uso de la herramienta en lugar de ofrecer una acción de autenticación explícita.

B. Remoto con una clave API

Para clientes que aún no hacen OAuth. Crea una clave en https://policyforge.co/api-dashboard, luego:

claude mcp add --transport http policyforge https://policyforge.co/api/mcp \
  --header "Authorization: Bearer pf_your_key_here"

Para clientes con configuración MCP basada en URL (Cursor, Windsurf y otros):

{
  "mcpServers": {
    "policyforge": {
      "url": "https://policyforge.co/api/mcp",
      "headers": { "Authorization": "Bearer pf_your_key_here" }
    }
  }
}

C. Local (npx)

¿Prefieres un proceso local? El servidor se ejecuta a través de npx — nada que instalar globalmente. Usa una clave API del entorno, que es lo que la especificación MCP recomienda para transportes stdio.

Claude Code

claude mcp add policyforge \
  --env POLICYFORGE_API_KEY=your_key_here \
  -- npx -y @policyforge/mcp@latest

Cursor / Claude Desktop / Windsurf

Agrega a tu configuración MCP (.cursor/mcp.json, claude_desktop_config.json, etc.):

{
  "mcpServers": {
    "policyforge": {
      "command": "npx",
      "args": ["-y", "@policyforge/mcp@latest"],
      "env": {
        "POLICYFORGE_API_KEY": "your_key_here"
      }
    }
  }
}

En Windows, algunos clientes necesitan el comando envuelto: establece "command": "cmd" y "args": ["/c", "npx", "-y", "@policyforge/mcp@latest"].

Consulta https://policyforge.co/mcp para instalaciones de un clic (Cursor/VS Code) e instrucciones por cliente — con tu clave API prellenada cuando has iniciado sesión.

Solución de problemas

  • 401 — si te conectaste con OAuth, la autorización fue revocada o expiró: reconéctate y aprueba de nuevo. Si usaste una clave API, fue eliminada, deshabilitada o mal escrita (las claves comienzan con pf_) — rota o crea una en https://policyforge.co/api-dashboard y reinicia el cliente.
  • 402 — cuota de generación agotada. Nivel gratuito: 2 generaciones por mes calendario, más una bonificación única de 3 generaciones adicionales en la primera conexión MCP. Solo generate_policy/regenerate_policy consumen cuota — las auditorías y verificaciones de desviación son gratuitas; pídele a tu agente que ejecute get_usage para ver lo que queda.
  • 429 — límite de velocidad de solicitudes (nivel gratuito: 10/minuto, 100/día); la respuesta incluye retry_after.
  • Servidor no listado en /mcp — o la sesión comenzó antes de que lo agregaras (reinicia el cliente; la configuración se lee al inicio), o se agregó a un ámbito de proyecto diferente. claude mcp add -s user … lo hace disponible en todas partes.
  • Herramientas faltantes — reinicia el cliente después de los cambios de configuración; en Windows usa el envoltorio cmd de arriba.
  • "La URI de redirección no está registrada para esta aplicación" — el cliente está usando una URL de devolución de llamada que no hemos visto. Las devoluciones de llamada de bucle local funcionan en cualquier puerto (según RFC 8252), por lo que esto debería ser raro; reporta la URI exacta y puede ser compatible.

Más detalles: https://policyforge.co/mcp#troubleshooting

Herramientas

HerramientaQué hace
generate_policyGenera una política y devuelve su contenido Markdown + URL alojada. Consume una política de tu cuota.
generate_baaGenera un Acuerdo de Asociado de Negocio HIPAA entre una entidad cubierta y un proveedor que maneja PHI. Construido a partir de las cláusulas requeridas por 45 CFR 164.504(e) y validado cláusula por cláusula. Plan Pro; nunca alojado públicamente. Consume una política de tu cuota.
regenerate_policyRe-ejecuta el motor de IA con contexto de negocio cambiado — mismo ID y URL alojada, contenido anterior guardado como versión.
update_policyEdita manualmente una política en su lugar — mismo ID y URL alojada, para que los enlaces publicados sigan funcionando.
audit_complianceAnálisis de brechas: compara lo que el código hace (tu manifiesto escaneado) con lo que una política divulga.
check_policy_freshnessDetección de desviación: compara el escaneo actual del código base contra el manifiesto almacenado en el momento de la generación.
list_policy_versionsHistorial de versiones — se guarda una instantánea antes de cada actualización, regeneración o restauración.
restore_policy_versionRevierte una política a cualquier versión anterior (en sí mismo reversible).
list_policiesLista políticas en tu cuenta (filtra por tipo/estado, pagina).
get_policyObtiene una sola política por ID, incluido el contenido completo.
delete_policyElimina permanentemente una política (su URL alojada deja de funcionar).
get_usageVerifica tu nivel y cuota de generación restante antes de generar.
get_disclosure_checklistLa rúbrica de escaneo del código base: qué SDKs/patrones requieren divulgación y cómo los hallazgos se asignan a los campos generate_policy.
get_integration_guideInstrucciones de inserción/enlace copiar-pegar para Next.js, React, HTML simple o WordPress.
list_policy_typesLista tipos de políticas admitidos, tipos de negocio y jurisdicciones.

El flujo de trabajo consciente del código base

Tu agente puede leer tu proyecto — así que las políticas provienen de lo que el código realmente hace, no de lo que recuerdas que hace:

  1. get_disclosure_checklist → el agente escanea dependencias, etiquetas de script, escrituras de cookies y hosts salientes contra la rúbrica, y construye un manifiesto de pila de lo que encontró
  2. generate_policy con el contexto detectado + stack_manifest (almacenado en el servidor para detección de desviación)
  3. get_integration_guide → el agente conecta la política alojada en tu pie de página
  4. Más tarde, después de que la pila cambie: check_policy_freshness reporta la desviación, audit_compliance muestra las brechas concretas, y regenerate_policy las corrige — misma URL alojada, sin enlaces rotos, versión anterior restaurable

Entradas de generate_policy

Requeridas: type, business_type, jurisdiction, company_name, contact_email

  • typeprivacy_policy · terms_of_service · cookie_policy · refund_policy · eula · disclaimer
  • business_typee-commerce · saas · healthcare · education · financial · fintech · real-estate · non-profit · consulting · media · mobile_app · other
  • jurisdiction — uno o más de gdpr ccpa pipeda lgpd us eu ca uk au br global (separa con comas para combinar, p. ej. gdpr,ccpa)

Contexto opcional (mejora la salida): website_url, service_description, data_collection[], third_party_integrations[], data_retention, user_accounts, payments, marketing, analytics, cookies, children_data, sells_data, target_audience[], security_measures[], governing_law, physical_address, dpo_email, consent_tracking, hosting_enabled.

Entradas de generate_baa

Un Acuerdo de Asociado de Negocio es un contrato entre dos partes nombradas, no una política publicada, por lo que toma su propia herramienta y sus propios campos. Plan Pro.

Requeridas: acknowledge_contract (debe ser true), baa_direction, company_name, contact_email, los nombres legales y direcciones de ambas partes, baa_effective_date (YYYY-MM-DD), baa_services_description, baa_phi_types[], baa_permitted_uses[], baa_governing_law_state.

  • baa_directioncovered_entity_to_vendor (tú eres la práctica que emite el acuerdo) o business_associate_to_client (tú eres el proveedor que lo ofrece a un cliente de salud)
  • baa_phi_types[] — categorías de PHI involucradas. Incluir "Substance use treatment records (42 CFR Part 2)" agrega un anexo de la Parte 2
  • baa_permitted_uses[] — cualquier cosa no listada aquí no está permitida por el acuerdo (45 CFR 164.504(e)(2)(i))

Opcionales: baa_electronic_phi (predeterminado true), baa_uses_subcontractors (predeterminado false), baa_term_type, baa_term_end_date, baa_breach_notification_days (1–60, predeterminado 30), baa_return_or_destroy, baa_include_indemnification, baa_include_insurance, baa_insurance_amount.

Cada acuerdo generado se verifica contra las 15 cláusulas que 45 CFR 164.504(e) requiere antes de que se devuelva; un borrador incompleto se rechaza en lugar de entregarse. El resultado sigue siendo un borrador para que el asesor legal lo revise, y nunca se publica en una URL pública.

Configuración

Solo se necesita para el transporte local (npx). Las conexiones remotas se autentican a través de OAuth o un header Authorization en su lugar.

Variable de entornoRequeridaPredeterminadoPropósito
POLICYFORGE_API_KEYsí (solo local)Tu clave API de PolicyForge.
POLICYFORGE_API_URLnohttps://policyforge.coAnula la URL base de la API (autoalojamiento/pruebas).

Cómo funciona

Este servidor es un envoltorio delgado sobre la API REST pública de PolicyForge (/api/v1). Cada herramienta se asigna a una solicitud HTTP autenticada, por lo que la cuota, el límite de velocidad y la generación de políticas siguen siendo autoritativos en el servidor de PolicyForge — la capa MCP no guarda secretos más allá de tu clave API y no tiene lógica de negocio propia.

Licencia

MIT