SignalEDI MCP

MCP para desarrolladores de EDI X12 para documentación, fixtures sintéticos, conexiones gobernadas y flujos de trabajo de API de sandbox/producción con control de perfiles (850/810/856/837P).

Documentación

Servidor MCP para Desarrolladores de SignalEDI

Conecta un asistente de codificación con IA a SignalEDI para descubrir, generar, validar y probar integraciones X12. El servidor MCP es una experiencia de desarrollo nativa para IA sobre la misma guía pública y el contrato REST /api/v1 utilizado por las aplicaciones convencionales. Complementa—no reemplaza—la API REST de SignalEDI, la especificación OpenAPI, los webhooks, los SDK y la documentación.

El paquete es una mejora del adaptador MCP existente de SignalEDI. La versión 0.5 añade descubrimiento público para desarrolladores, plantillas de recursos, ejemplos de código, herramientas gobernadas del plano de control de conexiones, validación estricta de entradas de herramientas y perfiles de capacidad explícitos, manteniendo los adaptadores existentes de parser, transacciones, partner-kit y QuickBooks.

Paquete@signaledi/mcp-server
Registro MCPio.github.SignalEDI/mcp-server
Transportestdio
RuntimeNode 22+
Dependencia de runtime@modelcontextprotocol/sdk 1.30.0 (generación de protocolo 2025)
Acceso predeterminadoSiempre sin clave docs; las herramientas autenticadas requieren sandbox o production explícitos

Perfiles de capacidad

Establece SIGNALEDI_MCP_PROFILE en uno de estos perfiles. El descubrimiento de herramientas y las llamadas directas a herramientas están restringidos al perfil activo.

PerfilAutenticaciónSuperficie
docsNingunaSolo recursos de documentación pública y ayudas sintéticas locales; el contenido de documentos y las credenciales proporcionadas nunca se cargan. El recurso OpenAPI realiza un GET público sin contenido. Este es siempre el predeterminado, incluso cuando existe una clave en el entorno del host.
sandboxClave de no producción aprovisionada por separado más URL base explícitaParse/validación autenticados, descubrimiento genérico de partner-kit, lecturas de datos de tenant y mutaciones protegidas para un sandbox aprovisionado por separado. Los hosts canónicos de producción de SignalEDI son rechazados.
productionClave de plataforma autorizada para producción, base exacta https://signaledi.com y SIGNALEDI_MCP_ALLOW_PRODUCTION=1Lecturas permitidas de transacciones/estado-QBO/kit/conexiones; borradores de conexión primero en sandbox; configuración de conexión protegida, pruebas de conectividad de enlaces guardados y solicitudes de entrega a producción; exportación saliente y QBO a EDI. Parse/validación, navegación de entidades QBO, sincronización QBO, desconexión, control genérico del ciclo de vida y activación de producción permanecen ocultos.

El perfil es un límite de menor privilegio dentro del adaptador MCP, no un sustituto de la autorización de la API ni un límite de gobernanza de datos. Para exportación saliente y QBO, el servidor inyecta SANDBOX o PRODUCTION desde el perfil activo; el modelo no puede seleccionarlo. La API vincula ese valor a la conexión de socio seleccionada. La entrega en producción requiere una versión de producción inmutable activa, y la entrega en sandbox requiere un entorno sandbox verificado/activo.

Cada llamada autenticada requiere el alcance base platform. El inventario de conexiones requiere platform:connections:read; la creación y configuración de borradores añaden platform:connections:write; la configuración de producción y la entrega a producción añaden platform:connections:production. Estos alcances de dominio no autorizan la entrega de documentos ni operaciones de QuickBooks. Las credenciales obsoletas de solo paraguas platform:write y platform:production son rechazadas por operaciones con alcance de dominio y deben reemplazarse mediante la ruta de rotación de claves compatible. Antes del lanzamiento, los operadores deben censar las credenciales afectadas, notificar a los propietarios de la migración y proporcionar esa ruta de rotación. La selección de perfil MCP nunca otorga un alcance.

Operación de APIAlcances adicionales de menor privilegio
Parse/validación y lecturas genéricas de kitNinguno más allá de platform
Lecturas de transaccionesplatform:documents:read
Envío salienteplatform:documents:read, platform:documents:send; añade platform:documents:production para entrega en producción
Lecturas de conexionesplatform:connections:read
Crear/configurar conexiónplatform:connections:read, platform:connections:write; añade platform:connections:production para configuración de producción o solicitud de entrega
Prueba de conexiónplatform:connections:read, platform:connections:write; añade platform:connections:production cuando el perfil activo selecciona el entorno de producción
Estado QBOplatform:quickbooks:read
Filas de entidades QBOplatform:quickbooks:read, platform:data:sensitive; añade platform:quickbooks:production cuando el realm QBO resuelto es producción
Sincronización/desconexión QBOplatform:quickbooks:read, platform:quickbooks:write; añade platform:quickbooks:production cuando el realm QBO resuelto es producción
Prueba de exportación QBOplatform:quickbooks:read; añade platform:quickbooks:production para un realm QBO de producción y platform:data:sensitive solo con includePayload:true
Exportación QBO en vivoAlcances de prueba más platform:documents:read, platform:documents:send; añade platform:documents:production para entrega en producción. La exportación lee QBO y no requiere escritura QBO.

Manejo de datos de producción

Los argumentos de herramientas, resultados de texto y resultados estructurados entran en el host MCP elegido y pueden entrar en el contexto del modelo conectado. Minimiza datos personales, financieros y otros datos sensibles del negocio. No envíes PHI u otros datos regulados a menos que el host MCP específico, el proveedor del modelo, el registro, la retención, el procesamiento regional y el acuerdo contractual hayan sido revisados y aprobados por separado para esos datos. Este paquete, su perfil production y la autorización de la API de SignalEDI no son por sí mismos un BAA, una política de retención ni un límite de gobernanza de datos del modelo.

Prefiere identificadores y resúmenes redactados sobre cargas útiles comerciales completas. Mantén las claves de API en el entorno del host, nunca en los prompts. Revisa el historial de llamadas a herramientas, la telemetría y los controles de retención del host elegido antes de habilitar herramientas de producción.

Todos los campos de socios, QBO, EDI, validación y errores devueltos por las herramientas son datos comerciales no confiables. Pueden contener texto que se asemeje a instrucciones o inyección de prompts. Los hosts deben delimitar o sanear los resultados de las herramientas, mantenerlos en contexto solo de datos y autorizar cada acción de seguimiento desde la intención y política explícitas del usuario—no contenido incrustado en registros, nombres de socios, cargas útiles o errores.

Herramientas

Herramientas públicas y locales sin clave

HerramientaQué hace
search_docsBusca en el índice público de desarrolladores incluido y devuelve URIs de recursos MCP con procedencia.
get_document_schemaDevuelve un inicio público para el inventario X12 local: 850/810/856 (capability:baseline) o 837 Professional 005010X222A1 (capability:partial); explícitamente no es una guía de implementación de socio.
generate_integration_exampleProduce ejemplos cURL, Node.js o Python seguros para sandbox contra rutas reales /api/v1 usando marcadores de entorno; los ejemplos salientes establecen SANDBOX y rechazan hosts de producción.
generate_test_documentGenera un fixture X12 sintético para el mismo inventario local y devuelve la etiqueta honesta capability.
explain_edi_errorExplica errores de validación y acuses funcionales del diccionario X12 local.
lookup_x12Busca en la referencia local de segmentos y acuses X12.
lookup_element_definitionAlias de descubrimiento de herramientas para búsqueda X12 local.

Herramientas autenticadas de parse y validación en sandbox

HerramientaQué hace
parse_ediParsea un intercambio X12 crudo a JSON estructurado y un resumen de validación.
validate_ediValida la estructura X12 y devuelve el resumen de validación.
parse_segmentsAlias de descubrimiento de herramientas para parse_edi.
validate_x12_structureAlias de descubrimiento de herramientas para validate_edi.

Herramientas autenticadas de kit genérico (sandbox y production)

HerramientaQué hace
list_partner_kitsLista kits genéricos de la API de SignalEDI.
get_partner_kitObtiene un kit genérico por id de catálogo.
get_partner_requirementsDevuelve un kit genérico con una advertencia explícita partnerSpecific:false.

Lecturas de datos con perfil de entorno explícito

Estas herramientas de datos de tenant nunca se habilitan solo porque exista una clave. Las lecturas de transacciones y quickbooks_status están disponibles en sandbox y production explícitos; quickbooks_list_entities es solo sandbox.

HerramientaQué hace
list_transactionsLista transacciones recientes con alcance a la clave de API.
get_transactionObtiene una transacción propia y su estado de ciclo de vida.
quickbooks_statusInspecciona el estado de conexión de QuickBooks Online sin devolver tokens.
quickbooks_list_entitiesPrevisualiza filas de Invoice, Estimate, PurchaseOrder, Customer, Vendor o Item para mapeo (solo sandbox).

Plano de control de conexiones gobernado (sandbox y production)

Las herramientas de conexión operan sobre el contrato público /api/v1/connections. MCP aplica una segunda lista de permitidos de respuesta sobre la representación saneada de la API: puede devolver referencias opacas de gateway/evidencia y booleanos de estado configurado, pero nunca credenciales almacenadas, referencias de secretos, configuración de transporte cruda, claves privadas, certificados o tokens.

HerramientaQué hace
list_connectionsPagina con cursor resúmenes de conexiones AS2/SFTP y API heredada legítima con alcance de tenant, con filtros opcionales de socio/ciclo de vida.
get_connectionInspecciona el estado seguro de entorno, gateway, aprobación, cobertura de pruebas, preparación y siguiente acción para una conexión AS2/SFTP o API heredada.
create_connection_draftCrea o recupera un DRAFT idempotente primero en sandbox; created distingue inserción de reutilización coincidente, y no puede activar producción.
configure_connectionVincula una referencia de gateway existente e identificadores ISA/GS X12 restringidos a un entorno SANDBOX o PRODUCTION AS2/SFTP; el servidor posee ISA15 y no acepta material de credenciales. La configuración de producción requiere platform:connections:production y aún así no activa la entrega. Las filas de API heredada son de solo lectura aquí y usan la superficie gobernada de conexiones API.
test_connectionPrueba la conexión guardada exacta en el entorno inyectado desde el perfil activo. La operación causa egreso a la red del socio, registra evidencia saneada, requiere revisión impuesta por el host más una clave de idempotencia, y nunca acepta endpoints o credenciales ni activa producción.
request_connection_go_livePide a la API mover una conexión READY probada por el servidor solo a GO_LIVE_APPROVED. La activación por el personal de SignalEDI sigue siendo una operación separada de MFA/gobernanza.

Deliberadamente no hay una herramienta genérica de transición de ciclo de vida. test_connection puede crear evidencia de conectividad autoritativa para el enlace guardado exacto; las etapas intermedias de prueba/certificación provienen de evidencia o del estado del proyecto de incorporación, no de afirmaciones del modelo. No hay herramientas de activación de producción, reversión o aislamiento.

Herramientas explícitas de perfil de escritura

HerramientaQué hace
send_outbound_documentEnvía un documento EDI saliente en el entorno sandbox/producción activo.
quickbooks_sync_to_qboEmpuja una selección acotada de transacciones a QBO (solo sandbox); las direcciones comprador y proveedor son explícitas, y all:true está paginado con cursor.
quickbooks_export_to_ediPrevisualiza o exporta facturas/órdenes de compra QBO como EDI en el entorno sandbox/producción activo. Los resultados de prueba están redactados en carga útil por defecto; las cargas útiles completas requieren includePayload:true, platform:data:sensitive y confirm:true impuesto por el host.
quickbooks_disconnectRevoca y elimina la conexión QBO del workspace (solo sandbox).

Cada herramienta publica un esquema de entrada y salida. El servidor valida las entradas por sí mismo, rechaza campos desconocidos y devuelve tanto texto legible como structuredContent con metadatos de contrato con espacio de nombres.

Seguridad de mutaciones

Las herramientas de escritura están ausentes en docs. Toda mutación en vivo requiere confirm:true y un idempotencyKey generado por el llamante de 8 a 128 caracteres ASCII imprimibles sin espacios en blanco al inicio o al final. Los envíos salientes, la sincronización/exportación/desconexión de QBO y las solicitudes de creación/configuración/prueba/puesta en marcha de conexiones aplican protección duradera contra repetición en el lado de la API y están anotados como idempotentes. La desconexión de QBO permanece solo en sandbox e informa una revocación pendiente de Intuit en lugar de afirmar su finalización. confirm:true es una afirmación del flujo de trabajo llamante; el servidor MCP no puede probar de forma independiente que un humano la aprobó, por lo que el host debe presentar la acción para revisión.

El cliente MCP nunca reintenta automáticamente mutaciones ni POST de análisis/validación. Las cargas de análisis/validación son datos sintéticos o de prueba aprobados y pueden registrar uso de sandbox, por lo que sus anotaciones permanecen como no solo lectura y no idempotentes. Los GET de solo lectura conservan un comportamiento de reintento transitorio acotado.

Las URL base personalizadas se rechazan a menos que SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL=1 esté configurado después de verificar el destino. Se rechazan URL que contengan credenciales, rutas, consultas o fragmentos. HTTP solo se permite para localhost y aún requiere la aceptación de host personalizado.

El adaptador limita las entradas EDI crudas a 65,536 bytes UTF-8, los cuerpos de solicitud JSON serializados a 1 MiB y las respuestas de API a 4 MiB. Los esquemas de entrada publican límites de caracteres/colecciones; los límites de bytes se vuelven a verificar inmediatamente antes del uso de red, y las respuestas transmitidas se cancelan cuando superan el límite.

Recursos y prompts

La guía estable se expone como recursos en lugar de herramientas de acción:

  • signaledi://quickstart
  • signaledi://openapi
  • signaledi://developer-workflows
  • signaledi://x12-reference
  • signaledi://documents/{transactionSet}/schema

El esquema de documentos también se anuncia como una plantilla de recurso. Los prompts incluyen scaffold-integration, onboard-partner y debug-rejection; los prompts de andamiaje e incorporación usan datos sintéticos por defecto y evitan escrituras hasta que se confirme un sandbox aislado.

Inicio rápido

Ejecuta el perfil de documentación pública:

npx -y @signaledi/mcp-server@0.5.0

Configura el perfil de sandbox autenticado solo después de aprovisionar una base y una clave que no sean de producción. La configuración del proyecto de Claude Code (.mcp.json) expande ${NAME} desde el entorno del host:

{
  "mcpServers": {
    "signaledi": {
      "command": "npx",
      "args": ["-y", "@signaledi/mcp-server@0.5.0"],
      "env": {
        "SIGNALEDI_MCP_PROFILE": "sandbox",
        "SIGNALEDI_API_KEY": "${SIGNALEDI_SANDBOX_API_KEY}",
        "SIGNALEDI_BASE_URL": "${SIGNALEDI_SANDBOX_BASE_URL}",
        "SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
      }
    }
  }
}

En Windows nativo, Claude Code debe lanzar el shim de npm a través de cmd:

{
  "mcpServers": {
    "signaledi": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "@signaledi/mcp-server@0.5.0"],
      "env": {
        "SIGNALEDI_MCP_PROFILE": "sandbox",
        "SIGNALEDI_API_KEY": "${SIGNALEDI_SANDBOX_API_KEY}",
        "SIGNALEDI_BASE_URL": "${SIGNALEDI_SANDBOX_BASE_URL}",
        "SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
      }
    }
  }
}

Cursor usa referencias .cursor/mcp.json, mcpServers y ${env:NAME}:

{
  "mcpServers": {
    "signaledi": {
      "command": "npx",
      "args": ["-y", "@signaledi/mcp-server@0.5.0"],
      "env": {
        "SIGNALEDI_MCP_PROFILE": "sandbox",
        "SIGNALEDI_API_KEY": "${env:SIGNALEDI_SANDBOX_API_KEY}",
        "SIGNALEDI_BASE_URL": "${env:SIGNALEDI_SANDBOX_BASE_URL}",
        "SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
      }
    }
  }
}

Claude Desktop (MCPB)

Empaqueta el mismo servidor stdio como una Extensión de Claude Desktop (.mcpb). Fuente: mcpb/manifest.json + scripts/build-mcpb.mjs. Consulta mcpb/README.md para notas completas de compilación y envío.

npm ci
npm run build:mcpb
# → dist/signaledi-mcp-server-0.5.0.mcpb

Instala haciendo doble clic en .mcpb, arrastrándolo a Claude Desktop, o mediante Configuración → Extensiones → Avanzado → Instalar extensión…. La configuración de la extensión se asigna a las mismas variables de entorno que server.json (SIGNALEDI_API_KEY, SIGNALEDI_BASE_URL, SIGNALEDI_MCP_PROFILE, etc.). Autor/editor: SignalEDI · Support@signaledi.com · https://signaledi.com.

Envío de directorio (solo manual): no envíes desde este agente/CI. Cuando esté listo, sigue el formulario de envío de extensiones de escritorio de Anthropic después de compilar/probar el artefacto. Herramientas: @anthropic-ai/mcpb (mcpb pack / mcpb validate). Especificación: Crea una extensión de escritorio con MCPB.

Google Antigravity

Carpeta de plugin manual estilo Antigravity / Gemini en antigravity-plugin/ (conecta mcp_config.jsonnpx -y @signaledi/mcp-server@0.5.0). El listado en MCP Store no es autoservicio; instala copiando la carpeta:

AlcanceRuta
Global~/.gemini/config/plugins/signaledi
Espacio de trabajo.agents/plugins/signaledi (o _agents/plugins/signaledi)

Consulta antigravity-plugin/README.md. Marca: solo SignalEDI.

Cursor Marketplace

Este repositorio público está empaquetado como un Plugin de Cursor para el Marketplace oficial. El plugin lanza el mismo paquete npm a través de stdio — no hay implementación MCP paralela.

Manifiesto del plugin.cursor-plugin/plugin.json (name: signaledi)
Configuración MCPmcp.jsonnpx -y @signaledi/mcp-server@0.5.0
Logotipoassets/logo.svg (ruta relativa)
Habilidadskills/signaledi-mcp-profiles/
Envíocursor.com/marketplace/publish → repositorio https://github.com/SignalEDI/mcp-server

Instalación (después del listado): abre Personalizar → Marketplace, busca SignalEDI e instala.

Configuración: establece las variables del plugin en Plugins → Configurar (sin secretos en el repositorio ni en los prompts):

VariableValor típico
SIGNALEDI_MCP_PROFILEdocs (predeterminado), sandbox o production
SIGNALEDI_API_KEYClave de espacio de trabajo con privilegios mínimos (ignorada por docs)
SIGNALEDI_BASE_URLOrigen verificado que no sea de producción, o exactamente https://signaledi.com para producción
SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL1 solo para hosts personalizados verificados
SIGNALEDI_MCP_ALLOW_PRODUCTION1 solo con el perfil de producción y la base canónica

El plugin mcp.json usa marcadores de posición ${VAR} que coinciden con esas variables del panel (no la sintaxis manual ${env:NAME} usada en el proyecto .cursor/mcp.json). Los marcadores de posición no configurados permanecen con cierre ante fallos en el perfil sin clave docs. La instalación de un clic en Marketplace requiere @signaledi/mcp-server@0.5.0 (o un pin coincidente más reciente) en npm; hasta que se publique, el npx local/manual contra una versión publicada aún funciona para verificación.

La publicación está sujeta a los Términos del editor de Cursor Marketplace. Los plugins de Marketplace deben ser de código abierto y pasar una revisión manual; consulta seguridad del marketplace.

Política de privacidad

La política de privacidad del producto de SignalEDI está publicada en https://signaledi.com/privacy. El adaptador MCP se ejecuta localmente a través de stdio; las llamadas autenticadas envían entradas de herramientas al host de API de SignalEDI que configures. Los argumentos de herramientas, resultados de texto y resultados estructurados entran al host MCP y pueden entrar al contexto del modelo—consulta Manejo de datos de producción arriba. Contacto: Support@signaledi.com.

VS Code usa .vscode/mcp.json, un objeto servers de nivel superior y una entrada de contraseña para secretos:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "signaledi-api-key",
      "description": "SignalEDI non-production sandbox API key",
      "password": true
    },
    {
      "type": "promptString",
      "id": "signaledi-api-base",
      "description": "Verified non-production SignalEDI API base URL"
    }
  ],
  "servers": {
    "signaledi": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@signaledi/mcp-server@0.5.0"],
      "env": {
        "SIGNALEDI_MCP_PROFILE": "sandbox",
        "SIGNALEDI_API_KEY": "${input:signaledi-api-key}",
        "SIGNALEDI_BASE_URL": "${input:signaledi-api-base}",
        "SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
      }
    }
  }
}

Para un sandbox local aprovisionado, agrega los siguientes valores al objeto env del cliente elegido, usando la sintaxis de referencia de entorno de ese cliente para la clave:

{
  "SIGNALEDI_MCP_PROFILE": "sandbox",
  "SIGNALEDI_API_KEY": "<host environment reference to SIGNALEDI_SANDBOX_API_KEY>",
  "SIGNALEDI_BASE_URL": "http://localhost:3100",
  "SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}

La producción es una aceptación explícita con cierre ante fallos. Usa solo el origen canónico y mantén la clave en el entorno del host MCP:

{
  "SIGNALEDI_MCP_PROFILE": "production",
  "SIGNALEDI_API_KEY": "<host environment reference to SIGNALEDI_PRODUCTION_API_KEY>",
  "SIGNALEDI_BASE_URL": "https://signaledi.com",
  "SIGNALEDI_MCP_ALLOW_PRODUCTION": "1"
}

El perfil de producción no acepta hosts personalizados ni una base faltante o implícita. Eliminar cualquiera de los elementos: perfil, clave, base canónica o aceptación, impide el inicio.

Nunca pegues claves o secretos reales en prompts. Las variables de entorno del servidor MCP las resuelve el proceso del host, no el modelo.

Configuración

Variable de entornoPredeterminadoPropósito
SIGNALEDI_MCP_PROFILEdocsLímite de capacidades: docs, sandbox explícito o production explícito. Proporcionar solo una clave nunca habilita herramientas remotas.
SIGNALEDI_API_KEYClave de espacio de trabajo con privilegios mínimos; ignorada en docs, requerida en perfiles autenticados. Necesita la base platform más los alcances de dominio publicados de cada herramienta. No emitas alcances heredados generales de escritura/producción a un host MCP.
SIGNALEDI_BASE_URLBase pública de producción para el GET de OpenAPI de documentación sin contenidoEl sandbox requiere un origen verificado explícito que no sea de producción; la producción requiere exactamente https://signaledi.com.
SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URLConfigúralo en 1 solo para un host localhost, vista previa o sandbox verificado.
SIGNALEDI_MCP_ALLOW_PRODUCTIONConfigúralo en 1 como la aceptación independiente de producción; ignorado por otros perfiles.
SIGNALEDI_MCP_TELEMETRYhabilitadoConfigúralo en 0 para deshabilitar líneas de métricas locales redactadas. Las métricas contienen herramienta, perfil, resultado/código, latencia e id de solicitud—no cargas útiles ni secretos.

El servidor escribe JSON-RPC solo en stdout y registra solo en stderr.

Superficies deliberadamente diferidas

El MCP no fabrica capacidades alojadas que aún no estén respaldadas por API estables y aisladas por inquilino:

  • suggest_mapping y validate_mapping esperan el servicio estructurado de validación de mapeo y el contrato de procedencia de guías de socios.
  • create_sandbox_project, create_test_partner, submit_test_document y get_test_results esperan rutas estables de ciclo de vida/pruebas aisladas por inquilino.
  • generate_webhook_fixture y verify_webhook_signature esperan un contrato canónico de firma en tiempo de ejecución; la ruta principal actual de entrega/reintento y la ruta de remediación firman de manera diferente.
  • La rotación de credenciales, la configuración cruda de gateway, la implementación de mapeos, ediciones arbitrarias de socios, afirmaciones manuales de evidencia/ciclo de vida, activación/reversión/aislamiento de producción, sincronización/desconexión de QBO y la retransmisión de documentos no están expuestas en producción. El perfil de producción se limita a las lecturas en lista blanca y a las operaciones de borrador/configuración/prueba de conectividad/solicitud de puesta en marcha/envío saliente/exportación de QBO descritas anteriormente.

Desarrollo local

node test.mjs
npm run test:stdio
npm start

Las pruebas unitarias usan datos sintéticos y HTTP simulado. Las pruebas de integración stdio ejercitan la detección de documentación, sandbox y producción sin llamadas API en vivo. Consulta RELEASE_NOTES_0.5.0.md para los criterios de publicación.

Arquitectura y autoridad del repositorio

MCP client
  <-> @signaledi/mcp-server over stdio
      |- public documentation resources and local synthetic helpers
      `- profile-gated calls to the conventional SignalEDI /api/v1 REST API

El repositorio independiente de GitHub SignalEDI/mcp-server es la fuente canónica y la única autoridad automatizada de publicación en npm/MCP Registry. El repositorio privado SignalEDI/platform puede conservar una instantánea de validación sincronizada para sus contratos de API/backend alojados; consulta MIRROR.md. Todos los ejemplos son sintéticos y deben permanecer libres de datos de clientes, salud, financieros y de credenciales.