
SignalEDI
io.github.SignalEDIPublished by GitHub account SignalEDIv0.4.0Updated Oct 24, 2026
EDI parse, validate, send, inspect, and QuickBooks tools for MCP clients.
Overview
SignalEDI's MCP server lets an assistant search EDI developer docs, parse and validate X12, manage partner connections, and work with QuickBooks data.
- What you can do
- Search developer docs, fetch X12 document schema starters, generate integration code examples and synthetic test documents, explain validation and acknowledgement errors, and look up X12 segments and element definitions. Parse and validate X12 interchanges into structured JSON with a validation summary. List and fetch partner kits and requirements. Read transaction lists and single transaction status, and inspect QuickBooks connection status and entity rows. Manage AS2/SFTP connections: list, inspect, create drafts, configure, test, and request go-live. Send outbound EDI documents and sync or export QuickBooks data as EDI.
- When to use it
- Use it when building or debugging X12 EDI integrations, looking up X12 structures and error explanations, parsing, validating or sending EDI documents in a sandbox, or moving data between QuickBooks and EDI. The keyless docs profile is a safe way to try it first.
- Requirements
- Runs locally over stdio with Node.js 22 or later, launched via npx from the npm package. The docs profile needs no key; authenticated tools need SIGNALEDI_API_KEY with the platform scope plus each tool's scopes, and SIGNALEDI_BASE_URL. Sandbox needs a verified custom host with SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL=1; production also needs SIGNALEDI_MCP_ALLOW_PRODUCTION=1 and the canonical base URL. Network access required.
Installation
In SourceWeft
- Open SignalEDI in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
SignalEDI Developer MCP Server
Connect an AI coding assistant to SignalEDI to discover, scaffold, validate, and test X12 integrations. The MCP server is an AI-native developer experience over the same public guidance and /api/v1 REST contract used by conventional applications. It complements—not replaces—SignalEDI's REST API, OpenAPI specification, webhooks, SDKs, and documentation.
The package is an uplift of SignalEDI's existing MCP adapter. Version 0.5 adds public developer discovery, resource templates, code examples, governed connection control-plane tools, strict tool-input validation, and explicit capability profiles while retaining the existing parser, transaction, partner-kit, and QuickBooks adapters.
Capability profiles
Set SIGNALEDI_MCP_PROFILE to one of these profiles. Tool discovery and direct tool calls are both restricted to the active profile.
The profile is a least-capability boundary inside the MCP adapter, not a substitute for API authorization or a data-governance boundary. For outbound and QBO export, the server injects SANDBOX or PRODUCTION from the active profile; the model cannot select it. The API then binds that value to the selected partner connection. Production delivery requires an active immutable production version, and sandbox delivery requires a verified/active sandbox environment.
Every authenticated call requires the base platform scope. Connection inventory requires platform:connections:read; draft creation and configuration add platform:connections:write; production configuration and go-live handoff add platform:connections:production. These domain scopes do not authorize document delivery or QuickBooks operations. Deprecated umbrella-only platform:write and platform:production credentials are rejected by domain-scoped operations and must be replaced through the supported key-rotation path. Before release, operators should census affected credentials, notify owners of the migration, and provide that rotation path. MCP profile selection never grants a scope.
Production data handling
Tool arguments, text results, and structured results enter the chosen MCP host and may enter the connected model's context. Minimize personal, financial, and other business-sensitive data. Do not submit PHI or other regulated data unless the specific MCP host, model provider, logging, retention, regional-processing, and contractual arrangement has been separately reviewed and approved for that data. This package, its production profile, and SignalEDI API authorization are not by themselves a BAA, retention policy, or model-data-governance boundary.
Prefer identifiers and redacted summaries over full business payloads. Keep API keys in the host environment, never prompts. Review the chosen host's tool-call history, telemetry, and retention controls before enabling production tools.
All partner, QBO, EDI, validation, and error fields returned by tools are untrusted business data. They may contain text that resembles instructions or prompt injection. Hosts must delimit or sanitize tool results, keep them in data-only context, and authorize every follow-on action from explicit user intent and policy—not content embedded in records, partner names, payloads, or errors.
Tools
Keyless public and local tools
Authenticated sandbox parse and validation tools
Authenticated generic-kit tools (sandbox and production)
Explicit environment-profile data reads
These tenant-data tools are never enabled merely because a key is present. Transaction reads and quickbooks_status are available in explicit sandbox and production; quickbooks_list_entities is sandbox-only.
Governed connection control plane (sandbox and production)
Connection tools operate on the public /api/v1/connections contract. MCP applies a second response allowlist over the API's sanitized representation: it may return opaque gateway/evidence references and configured-status booleans, but never stored credentials, secret references, raw transport configuration, private keys, certificates, or tokens.
There is deliberately no generic lifecycle-transition tool. test_connection can create authoritative connectivity evidence for the exact saved binding; intermediate testing/certification stages otherwise come from evidence or onboarding-project state, not model claims. There are no production activation, rollback, or isolation tools.
Explicit write-profile tools
Every tool publishes an input and output schema. The server validates inputs itself, rejects unknown fields, and returns both readable text and structuredContent with namespaced contract metadata.
Mutation safety
Write tools are absent from docs. Every live mutation requires confirm:true and a caller-generated idempotencyKey of 8–128 printable ASCII characters without leading/trailing whitespace. Outbound sends, QBO sync/export/disconnect, and connection create/configure/test/go-live requests enforce durable API-side replay protection and are annotated idempotent. QBO disconnect stays sandbox-only and reports a pending Intuit revocation instead of claiming completion. confirm:true is an assertion from the calling workflow; the MCP server cannot independently prove that a human approved it, so the host must present the action for review.
The MCP client never automatically retries mutations or parse/validate POSTs. Parse/validate upload synthetic or approved test data and can record sandbox usage, so their annotations remain non-read-only and non-idempotent. Read-only GETs retain bounded transient retry behavior.
Custom base URLs are rejected unless SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL=1 is set after the destination is verified. URLs containing credentials, paths, queries, or fragments are rejected. HTTP is allowed only for localhost and still requires the custom-host opt-in.
The adapter caps raw EDI inputs at 65,536 UTF-8 bytes, serialized JSON request bodies at 1 MiB, and API responses at 4 MiB. The input schemas publish character/collection bounds; byte limits are rechecked immediately before network use, and streamed responses are cancelled when they cross the cap.
Resources and prompts
Stable guidance is exposed as resources rather than action tools:
signaledi://quickstartsignaledi://openapisignaledi://developer-workflowssignaledi://x12-referencesignaledi://documents/{transactionSet}/schema
The document schema is also advertised as a resource template. Prompts include scaffold-integration, onboard-partner, and debug-rejection; scaffold and onboarding prompts default to synthetic data and avoid writes until an isolated sandbox is confirmed.
Quick start
Run the public docs profile:
Configure the authenticated sandbox profile only after a non-production base and key have been provisioned. Claude Code project config (.mcp.json) expands ${NAME} from the host environment:
On native Windows, Claude Code must launch the npm shim through cmd:
Cursor uses .cursor/mcp.json, mcpServers, and ${env:NAME} references:
Claude Code plugin
This public repository is also a Claude Code / Cowork plugin for the community plugin directory. The plugin launches the same npm package over stdio — there is no parallel MCP implementation and SignalEDI does not expose a hosted remote MCP URL, so skip the remote OAuth connector directory.
Docs: Submitting your plugin. Official claude-plugins-official marketplace is curated; community submit still requires a public GitHub repo and claude plugin validate. One-click install needs @signaledi/[email protected] on npm.
Claude Desktop (MCPB)
Package the same stdio server as a Claude Desktop Extension (.mcpb). Source: mcpb/manifest.json + scripts/build-mcpb.mjs. See mcpb/README.md for full build and submit notes.
Install by double-clicking the .mcpb, dragging it into Claude Desktop, or Settings → Extensions → Advanced → Install Extension…. Extension settings map to the same env vars as server.json (SIGNALEDI_API_KEY, SIGNALEDI_BASE_URL, SIGNALEDI_MCP_PROFILE, etc.). Author/publisher: SignalEDI · [email protected] · https://signaledi.com.
Directory submit (manual only): do not submit from this agent/CI. When ready, follow Anthropic’s desktop extension submission form after building/testing the artifact. Tooling: @anthropic-ai/mcpb (mcpb pack / mcpb validate). Spec: Build a desktop extension with MCPB.
Google Antigravity
Manual Antigravity / Gemini-style plugin folder at antigravity-plugin/ (wires mcp_config.json → npx -y @signaledi/[email protected]). MCP Store listing is not self-serve; install by copying the folder:
See antigravity-plugin/README.md. Brand: SignalEDI only.
Cursor Marketplace
This public repository is packaged as a Cursor Plugin for the official Marketplace. The plugin launches the same npm package over stdio — there is no parallel MCP implementation.
Install (after listing): open Customize → Marketplace, search for SignalEDI, and install.
Configure: set plugin variables under Plugins → Configure (no secrets in the repo or prompts):
Plugin mcp.json uses ${VAR} placeholders that match those dashboard variables (not the manual ${env:NAME} syntax used in project .cursor/mcp.json). Unset placeholders stay fail-closed on the keyless docs profile. Marketplace one-click install requires @signaledi/[email protected] (or newer matching pin) on npm; until that publish lands, local/manual npx against a published version still works for verification.
Publishing is subject to the Cursor Marketplace Publisher Terms. Marketplace plugins must be open source and pass manual review; see marketplace security.
Privacy Policy
SignalEDI’s product privacy policy is published at https://signaledi.com/privacy. The MCP adapter runs locally over stdio; authenticated calls send tool inputs to the SignalEDI API host you configure. Tool arguments, text results, and structured results enter the MCP host and may enter model context—see Production data handling above. Contact: [email protected].
VS Code uses .vscode/mcp.json, a top-level servers object, and a password input for secrets:
For a provisioned local sandbox, add the following values to the chosen client's env object, using that client's environment-reference syntax for the key:
Production is an explicit, fail-closed opt-in. Use only the canonical origin and keep the key in the MCP host environment:
The production profile does not accept custom hosts or a missing/implicit base. Removing any one of the profile, key, canonical base, or opt-in prevents startup.
Never paste real keys or secrets into prompts. MCP server environment variables are resolved by the host process, not by the model.
Configuration
The server writes JSON-RPC only to stdout and logs only to stderr.
Deliberately deferred surfaces
The MCP does not fabricate hosted capabilities that are not yet backed by stable, tenant-isolated APIs:
suggest_mappingandvalidate_mappingwait for the structured mapping-validation service and partner-guide provenance contract.create_sandbox_project,create_test_partner,submit_test_document, andget_test_resultswait for stable tenant-isolated lifecycle/test routes.generate_webhook_fixtureandverify_webhook_signaturewait for one canonical runtime signing contract; the current primary delivery/replay path and remediation path sign differently.- Credential rotation, raw gateway configuration, mapping deployment, arbitrary partner edits, manual evidence/lifecycle claims, production activation/rollback/isolation, QBO sync/disconnect, and document retransmission are not exposed in production. The production profile is limited to the allowlisted reads and server-gated draft/configuration/connectivity-test/go-live-request/outbound/QBO-export operations described above.
Local development
Unit tests use synthetic data and mock HTTP. The stdio integration tests exercise docs, sandbox, and production discovery without live API calls. See RELEASE_NOTES_0.5.0.md for release gates.
Architecture and repository authority
The standalone GitHub repository SignalEDI/mcp-server is the canonical source and sole automated npm/MCP Registry publish authority. The private SignalEDI/platform repository may retain a synchronized validation snapshot for its hosted API/backend contracts; see MIRROR.md. All examples are synthetic and must remain free of customer, health, financial, and credential data.
Source: README.md at commit f567210
Tools
0Version history
1- v0.4.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts