{"_id":"@cloudbusiness/gl-importer-mcp","_rev":"6-6150f0721e15ab1b07dc062c440e8761","name":"@cloudbusiness/gl-importer-mcp","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.0":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.0","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"support@synder.com"},"license":"MIT","_id":"@cloudbusiness/gl-importer-mcp@0.1.0","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"homepage":"https://importer.synder.com","bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"bin":{"gl-importer-mcp":"dist/index.js"},"dist":{"shasum":"8896deab4cb9579ad0ae31ca723e60a935952d1b","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.0.tgz","fileCount":51,"integrity":"sha512-a0nk0+bvzHVu/Jvar9NkKsnBTGwT+vywxtamuX9SG4EPLKBMvjCDpMoSMvmrWhI5rQYCT3/KwJnSy1urLjPrvQ==","signatures":[{"sig":"MEUCIQCM18rgjwyZ9p1ORM7HURbnukRX5xNXvl0nnbMBlMkDAgIgVh8wRct3gZepyFG+oVweIJC2BuMknjdiWEGJKA/BMdo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89123},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"be25ae9a4f8afd6bd44cf679c0198e3f19a0fc43","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"repository":{"url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nock":"^13.5.0","vitest":"^1.4.0","typescript":"^5.4.0","@types/node":"^20.11.0"},"_npmOperationalInternal":{"tmp":"tmp/gl-importer-mcp_0.1.0_1781908543015_0.24311803656907238","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.1","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","_id":"@cloudbusiness/gl-importer-mcp@0.1.1","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"homepage":"https://importer.synder.com","bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"bin":{"gl-importer-mcp":"dist/index.js"},"dist":{"shasum":"ab81c8763a2044ade47341cd2b2021b1c583f91d","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.1.tgz","fileCount":51,"integrity":"sha512-HpDQQ35vTI1KjPuxrHu2r9/vvyZhUVY+KYJDODeVfstYa16/2qFaIUEIisSOQJhuCe460QOvuFiom+UdtBl4gg==","signatures":[{"sig":"MEUCICWO1AToKvAu/vA9b2AKaCcmr/aapqtaK7GHFKi2hT5GAiEA2nJ8daSCl0yKW+QYjeXjuNU8qH4u6drEznO1r5KtkcY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89160},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"d8259d237b8e27693d69101fdc43152c94f40426","mcpName":"com.synder/gl-importer-mcp","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"repository":{"url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nock":"^13.5.0","vitest":"^1.4.0","typescript":"^5.4.0","@types/node":"^20.11.0"},"_npmOperationalInternal":{"tmp":"tmp/gl-importer-mcp_0.1.1_1781914413055_0.7447140454829064","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.2","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","_id":"@cloudbusiness/gl-importer-mcp@0.1.2","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"homepage":"https://importer.synder.com","bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"bin":{"gl-importer-mcp":"dist/index.js"},"dist":{"shasum":"47578104526c28e448343585f255779a069929a9","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.2.tgz","fileCount":51,"integrity":"sha512-ydV7ebdwREL4I4CAsGTSBQdSHEOmvf3AeB3AmmKkU4qEpDPiStq7mu7z/7ZRTbqk3Si/DtgyiaWNaO3SygAtaA==","signatures":[{"sig":"MEUCIQDnIGWjjOV/OShpZ9HEG+8QAreK3wkrFBiHezR3j9rMYQIgbCFXfb9eEmRigo/+gw8LK9aCwjAybRMw7gXE9ZqyINs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89392},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"9292ac8e79897cbbc72618c1703e16a5d345f20d","mcpName":"com.synder/gl-importer-mcp","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"repository":{"url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nock":"^13.5.0","vitest":"^1.4.0","typescript":"^5.4.0","@types/node":"^20.11.0"},"_npmOperationalInternal":{"tmp":"tmp/gl-importer-mcp_0.1.2_1781928898604_0.6434958591871942","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.3","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","_id":"@cloudbusiness/gl-importer-mcp@0.1.3","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"homepage":"https://importer.synder.com","bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"bin":{"gl-importer-mcp":"dist/index.js"},"dist":{"shasum":"1dcf79500a2fa1055d69a8126088db753e4f9f6e","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.3.tgz","fileCount":51,"integrity":"sha512-yPxOPtOStblTjGflALy/Jvl2nxsj4ppH7h0NKhcOOiwoRF7U3mMXzzL1Lm4rQy/L0k9bn9zYiy4UccelMvlhdw==","signatures":[{"sig":"MEUCIClam7fKWduU+vr8LPfQa3hcfwpI2FYOv69YzjW+gcVPAiEA1QSU8CJJ1+ceQ0qaiQEw5UepL2UdDZ0vUbfOfMxqBuY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89392},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"f0b74d9aae9196e29deb723d2ad011dcfab2a2e9","mcpName":"com.synder/gl-importer-mcp","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"repository":{"url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nock":"^13.5.0","vitest":"^1.4.0","typescript":"^5.4.0","@types/node":"^20.11.0"},"_npmOperationalInternal":{"tmp":"tmp/gl-importer-mcp_0.1.3_1781935116626_0.24152058120333897","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.4","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","_id":"@cloudbusiness/gl-importer-mcp@0.1.4","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"homepage":"https://importer.synder.com","bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"bin":{"gl-importer-mcp":"dist/index.js"},"dist":{"shasum":"18ae40df7b2da84338986ca6f2fc73960ae21a18","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.4.tgz","fileCount":51,"integrity":"sha512-NK6iRaXNARPFGHkRz/fxlUOTUWnPC9G4DmPO16pvvl7M+JO+LZ0A33uI96TbfNDX2mcemE8kWXS1Xfz6w1w7Og==","signatures":[{"sig":"MEQCIEyM5wt4cjH/6XlwY6fsAgqQ4x3IOzaAkV6oAfJ82DmTAiAmKnxa5Rkuk3Uqf6Y1yszjYemrJt7ulrrXKPBmV5lZlw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":117226},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6fd5c27b7604c3a23dd33b3f3ac7c651a887503e","mcpName":"com.synder/gl-importer-mcp","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"repository":{"url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nock":"^13.5.0","vitest":"^1.4.0","typescript":"^5.4.0","@types/node":"^20.11.0"},"_npmOperationalInternal":{"tmp":"tmp/gl-importer-mcp_0.1.4_1781976044116_0.994962856234592","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@cloudbusiness/gl-importer-mcp","version":"0.1.5","description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","mcpName":"com.synder/gl-importer-mcp","type":"module","main":"dist/index.js","bin":{"gl-importer-mcp":"dist/index.js"},"scripts":{"build":"tsc","watch":"tsc --watch","start":"node dist/index.js","test":"vitest run","test:watch":"vitest","prepublishOnly":"npm run build"},"engines":{"node":">=18"},"keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","homepage":"https://importer.synder.com","repository":{"type":"git","url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git"},"bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","zod":"^3.23.0"},"devDependencies":{"@types/node":"^20.11.0","nock":"^13.5.0","typescript":"^5.4.0","vitest":"^1.4.0"},"_id":"@cloudbusiness/gl-importer-mcp@0.1.5","gitHead":"1e3243f4e36402af9ef1bff4cc7ef10c49b8923d","types":"./dist/index.d.ts","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-JiOqqoLvColV3+6jf7udyf1WoPEJl6ccjB6ZnAKuSXf+MCa6n1VAX3321FDrWKv7wnldzT9OmfvR9CNdepudUg==","shasum":"32c62bfca5ea3387f2ccd8984a00a2cd6f298a2c","tarball":"https://registry.npmjs.org/@cloudbusiness/gl-importer-mcp/-/gl-importer-mcp-0.1.5.tgz","fileCount":51,"unpackedSize":121380,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cloudbusiness%2fgl-importer-mcp@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCd1AlM5kpXJfd0RS+WVZ3mlraL1nAyG5XLyJ7B1I2DmQIhAOJgZPT7yPyV83WzBdSB+hgbBdbNV14AcPcplaBGoa8z"}]},"_npmUser":{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},"directories":{},"maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/gl-importer-mcp_0.1.5_1781978602695_0.6264977197074357"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-19T22:35:42.891Z","modified":"2026-06-20T18:03:23.176Z","0.1.0":"2026-06-19T22:35:43.180Z","0.1.1":"2026-06-20T00:13:33.204Z","0.1.2":"2026-06-20T04:14:58.731Z","0.1.3":"2026-06-20T05:58:36.769Z","0.1.4":"2026-06-20T17:20:44.258Z","0.1.5":"2026-06-20T18:03:22.844Z"},"bugs":{"url":"https://github.com/SynderAccounting/gl-importer-plugin/issues"},"author":{"name":"Synder","email":"help@synder.com"},"license":"MIT","homepage":"https://importer.synder.com","keywords":["mcp","synder","importer","quickbooks","xero","accounting","model-context-protocol"],"repository":{"type":"git","url":"git+https://github.com/SynderAccounting/gl-importer-plugin.git"},"description":"MCP server for the Synder Importer REST API. Imports CSV/XLSX accounting data into QuickBooks Online or Xero.","maintainers":[{"name":"michael.astreiko","email":"michael@cloudbusinessltd.com"},{"name":"k3rla3da","email":"matuspavel85@gmail.com"}],"readme":"# gl-importer (Claude Code plugin)\n\nImport CSV/XLSX accounting data into QuickBooks Online or Xero from inside Claude Code,\nusing the [Synder Importer API](https://importer.synder.com/apidocs).\n\nThis plugin bundles:\n\n- An **MCP server** wrapping the Synder Importer REST API (`/api/v1`) — full read + write,\n  19 tools covering account, companies, settings, entities, fields, mappings, imports,\n  status polling, results, cancel, revert, plus two composite \"happy path\" tools.\n- The `gl-importer` **agent skill** with natural-language guidance for the two-step\n  import flow (dry-run → confirm).\n\n## Requirements\n\n- Node.js 18 or newer\n- Claude Code with plugin support (`/plugin` command available)\n- A Synder Importer API token — set as `IMPORTER_API_TOKEN` in your shell env.\n  Generate at [importer.synder.com](https://importer.synder.com) → **Account → API Keys**.\n\n## Install\n\n### From the Claude Code marketplace (recommended)\n\n```\n/plugin marketplace add SynderAccounting/gl-importer-plugin\n/plugin install gl-importer\n```\n\nThen set your token in the shell that launches Claude Code:\n\n```bash\nexport IMPORTER_API_TOKEN=\"your_token_here\"\n```\n\n### Claude Desktop (one-click MCP install)\n\nDownload the latest `.mcpb` bundle from [Releases](https://github.com/SynderAccounting/gl-importer-plugin/releases) and double-click it. Claude Desktop will prompt you for the API token.\n\n### From source (development)\n\n```bash\ngit clone https://github.com/SynderAccounting/gl-importer-plugin\ncd gl-importer-plugin\nnpm install\nnpm run build\n# Point Claude Code at this directory:\nclaude --plugin-dir .\n```\n\n## Configuration\n\n| Env var | Required | Default | Purpose |\n|---|---|---|---|\n| `IMPORTER_API_TOKEN` | yes | — | Bearer token for the Synder Importer API |\n| `IMPORTER_BASE_URL` | no | `https://importer.synder.com/api/v1` | Override for staging/test |\n\n## Example prompts\n\nOnce installed, talk to Claude Code naturally:\n\n- *\"Import `~/Downloads/march-bills.csv` as Bills into my QuickBooks company.\"*\n- *\"What entities can I import into Xero?\"*\n- *\"Show me the saved mapping called 'Stripe payouts' and update it to map Date → TxnDate.\"*\n- *\"List my last 10 imports and tell me which ones failed.\"*\n- *\"Revert import 12345 — I uploaded the wrong file.\"*\n- *\"What's the status of import 12345? Wait for it to finish and tell me how many warnings.\"*\n\nThe skill will walk Claude Code through a safe two-step flow: a **dry-run** that\nshows the proposed field mapping, then a **confirmed** call that actually creates\nthe import and polls until it terminates.\n\n## Tools\n\nThe MCP server exposes 19 tools. The ones an LLM will hit most often:\n\n| Tool | Purpose |\n|---|---|\n| `import_csv` | **Happy path.** Auto-resolves company, uploads file, runs dry-run, then (on confirm) executes + waits. |\n| `wait_for_import` | Polls a running import to a terminal state with exponential backoff (2s → 1.5× → 30s cap). |\n| `list_companies` / `list_entities` / `get_fields` | Discover what you can import where. |\n| `list_mappings` / `create_mapping` / `update_mapping` / `delete_mapping` | Saved-mapping CRUD. |\n| `auto_import` / `execute_import` | Lower-level: create an import with auto-mapping or an explicit mapping. |\n| `get_import_status` / `get_import_results` / `cancel_import` / `revert_import` | Lifecycle. |\n| `get_settings` / `update_settings` | Per-company import settings. |\n| `get_account` | Whoami / token check. |\n\nFull schemas are emitted at MCP startup — the agent skill (`skills/gl-importer/SKILL.md`)\nalso documents the conventions.\n\n## Development\n\n```bash\nnpm install\nnpm run build       # tsc → dist/\nnpm test            # vitest, 60+ unit tests, virtual-clock polling tests\nnpm run watch       # tsc --watch for iterative dev\n```\n\nCI runs on every push and PR (`.github/workflows/ci.yml`).\n\n## Release process\n\n1. Bump `version` in `package.json` and `.claude-plugin/plugin.json` (keep them in sync).\n2. Commit and tag: `git tag v0.x.y && git push --tags`.\n3. The `publish.yml` workflow publishes to npm on the tag push (uses `NPM_TOKEN` secret).\n4. The marketplace install path resolves through this GitHub repo, so the tag is the release.\n\n## License\n\nMIT — see [LICENSE](LICENSE).\n\n## Support\n\n- Issues: https://github.com/SynderAccounting/gl-importer-plugin/issues\n- Email: help@synder.com\n","readmeFilename":"README.md"}