{"_id":"kaduno-pullpush-mcp","_rev":"14-2a57f0c2014d28c0d761993cdc739980","name":"kaduno-pullpush-mcp","dist-tags":{"latest":"2.3.0"},"versions":{"1.0.0":{"name":"kaduno-pullpush-mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@1.0.0","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"49cb54e505237887a61efc9464a5f9b22f41c848","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-1.0.0.tgz","fileCount":11,"integrity":"sha512-Dk/DZXOeZ4q8Mp4aRxVtekW4Cv43PRocDoKJVc6GjRMKDxQLi6xKdc4+Hxz0n3vj9evF0iHrx5BR7ri9xlGHZg==","signatures":[{"sig":"MEUCIQCG6oUadpSwdudv1CmZgT220VbEJ4FBKgdX3QWV1nLoDgIgAQ/+AL3kTcxzEzv8K2sqWxKoyqGQcwARlTd72xitHIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14454},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"49fd9c22c18353c426a8b5ff65fdfeecb003fa6b","scripts":{"dev":"tsx src/index.ts","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^3.24.1","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_1.0.0_1782963929047_0.9039179101496546","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"kaduno-pullpush-mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@1.0.1","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"7f516a7c1986e0273356c37456038f9c75a15bf3","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-1.0.1.tgz","fileCount":11,"integrity":"sha512-yesc4IZE+tTY7uNPm4ovBsnESpr0P3I5G7MxhDq2wyxYJXJipT3+znqr0uIDuDQvUJGt3rBky9sDoYd0THHHMA==","signatures":[{"sig":"MEUCIBtrx8dllxTI6YFvSBrNbU53n7s9EQFaC5xKjBSuJ1JMAiEApVwQpVf13UKvcQv+KcZGeqYUXS6mv3APpDAh3l/u1RU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14644},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"b955a446366cfb7170ea5229992a37907d53d200","scripts":{"dev":"tsx src/index.ts","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^3.24.1","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_1.0.1_1782967367935_0.4475180802352774","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"kaduno-pullpush-mcp","version":"2.0.0","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.0.0","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"ac14098a1d2fa6d07472df613d0a19b1e78a5f92","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.0.0.tgz","fileCount":5,"integrity":"sha512-o4dbx+mhz53xQpLfk0j0aOj/yD5j+nKBvDiZx4h5wT9hBeDs2ApUOzyv0N6nnG4+alUazpnEOxyZRv5NdumTYA==","signatures":[{"sig":"MEYCIQDWCBYgMfk3WsyNg5iJFxdvlni1GwbKOcVAvXy6SmjZPQIhAMsSBrchUDFgaAisr2gPF6Um4VvfTNhkoCwOZELKI1cy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28568},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"92bb7316cb278317bc5626da41f3c0eb0eb6a937","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^3.24.1","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.0.0_1782975047518_0.0963979118732392","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"kaduno-pullpush-mcp","version":"2.0.1","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.0.1","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"2e8c6f64f8493b3272906b5c58aa8eca18ccecf3","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.0.1.tgz","fileCount":5,"integrity":"sha512-eKS4LOy6LkkOCCaRYn5enDJG8rXyIRzU+KUv2fJ3ssm/oQQDirV+dPhtBQVBmJ/4udZQUtuQyQNX4dxAydOQjQ==","signatures":[{"sig":"MEUCIQDXCCO1OVIKZZvxmmUQK3AyukegZS5BOVtHkYPwfVV/+wIgQBq2hesm9B2+/pUsSeqihxjGYuLoyMMEDeE9yAwF0U0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28547},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"077e13552faaac0366901ada37ea7b73a800fe48","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^3.24.1","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.0.1_1782982148347_0.5986295868797327","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"kaduno-pullpush-mcp","version":"2.1.0","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.0","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"05b8335a3acb8357f5d06f257381bdba19fe27c9","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.0.tgz","fileCount":5,"integrity":"sha512-2FOEmIje4R5mD1hgtI7k7S1oqOWg1APyesqyuMlmc92cQ2yMm9o+t0pK1XHqCefbNBEKD7a65zCyK5npaEXaOQ==","signatures":[{"sig":"MEYCIQCA512SPbVeaWyvpG4/5hNXIKTc8WgS2mhlYRrPnn6/NgIhANIE7sRQEWQjctMc1dvV33XYb5G8dU5hsbhytqsq9Xaw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32743},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"a7f90627a4d9d0af7a8b3c86330b4345d136d14b","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.0_1783491534894_0.9333557870529252","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"kaduno-pullpush-mcp","version":"2.1.1","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.1","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"2446dadb489c47397b12c46d47afe08b9d9b06a0","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.1.tgz","fileCount":5,"integrity":"sha512-ixlP1e+ckP1WvnXaOsTuJc5uEz1dsCxCHrVo20d+SmILMEdedjUsPgnURj+RtTrk4eznh0xA1yNvac5EBkCBjw==","signatures":[{"sig":"MEUCIA/6RtjHQXtIXKh+Cbv0Law7et2fEu2xQs03B32QxNFeAiEAnTvC7eYF9WA2gI+mWdq2iYyWsL3tMOguRGFFAa7quQQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32880},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"dcb67229eda7d26b89f3e8a1043228a170347c07","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"_npmVersion":"11.11.0","description":"MCP server for PullPush.ai — connect Cursor, Claude, and AI agents to your integration sync engine","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.1_1783649284572_0.5580209491196526","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"kaduno-pullpush-mcp","version":"2.1.2","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.2","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"836f2278ebacec53d503d5ee7b5d0b3f6db4b552","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.2.tgz","fileCount":6,"integrity":"sha512-3Xq11zMXsmDYSizihYm3MnRMqPXrY/VvDHz0JhRgmAkNEqIxvLI0nlnyaUECZVZCVLZpRtaqamJpd0q/v80xbw==","signatures":[{"sig":"MEUCIDtK+5CKGnb25LKGDQuIVBJ5+ruSYtnbSAXFFszf9lnxAiEA0Ew8SQoMxPqzlffsY6wQJlYq0Y2XTk5j5VIxBggRcs0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37218},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"b094b1c7b8729aba151a1a4c24aa26b6dbcc5092","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.2_1783695074008_0.004207139396477988","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"kaduno-pullpush-mcp","version":"2.1.3","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.3","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"2e9aa249c542e8eed3b333e42c6a59d9e08393c6","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.3.tgz","fileCount":6,"integrity":"sha512-dS3x80oZoEj7yobEYSe0DbfWpB9Ev3OD/y4GwD4a1CyP99kc/D5G3yEz0IFdqjVEN/KloE9R0UEfVyWZXKDqjw==","signatures":[{"sig":"MEQCIC7SNo82vNCxfVP/MnlnWVjWyrLH1m7q+Vio7yonIxCTAiA3pJ14FuBy3h6Q4J8E+pmUaS684vVCQiBH0ex7BmpuIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37715},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"e9a79e67e50137e1b00aabaacdddb3beb580efb2","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.3_1783696894441_0.9264209403220076","host":"s3://npm-registry-packages-npm-production"}},"2.1.4":{"name":"kaduno-pullpush-mcp","version":"2.1.4","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.4","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"eb48ed9ef6fd5e990fda64e5ff32b12334cfb442","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.4.tgz","fileCount":6,"integrity":"sha512-XMx1Icc6FJCSGB4/assn3xOaXwSyi/gonrqhgnUb9+WPQ/YU9iSdzv5x+Qtq9aUvHb6BUTnmcizcMBwNJ+TNAQ==","signatures":[{"sig":"MEYCIQDtAsfTxn9lOzsXf73GefBi0s5L4U6tbshhB/WTAMun8QIhALNG1UjtK/r2QdAeW7EKeoRtaMV85S9fhXW7Y38MTVU/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37880},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"4fea8a5b8d6d5f971c5a37d51162c220ccf67048","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.4_1783703202012_0.1971454354366402","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"kaduno-pullpush-mcp","version":"2.1.5","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.5","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"7a29bcfaf38606ea76e1212d27e260addbb9496c","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.5.tgz","fileCount":6,"integrity":"sha512-9IZ66T1IHDoo0+jOt0TbtfjqUCFy6+WwLTbtPFAf+XEcKq7a178tw69IyljEVcvHDxLXp/UuPexSSGieei1VDw==","signatures":[{"sig":"MEUCIAN3IxpSoBufsbXrBVYwA80WVeQ61F/2E7QEUq2nj4jkAiEArh2kBXZRjo6ftjuwq61MKXKBqQ+O9cBD4j82QMr9SK0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46420},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"98823dcaa51ec64956dc8fd4af893e2564ce05df","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.5_1784873480400_0.7733406750979352","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"kaduno-pullpush-mcp","version":"2.1.6","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.1.6","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"648bca64a7d73f417b0adbd1a2e3657d2070d00e","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.1.6.tgz","fileCount":6,"integrity":"sha512-KX1GL/gxb1EA5kJquxB+VKSVulzjtIXg5Ui4cOZY05Z2wdnyWMw8kS3fPagDrJk9KpfcI4EGX8RshNoFthQDWA==","signatures":[{"sig":"MEUCIQDMGRzw/VE8HDf5vP+0PgFZreLygTDMnFOjYhLj647xdQIgeVm0GHBaso12N2dc/euts5hNPGcX9jZUFR/ZVVS/Vu0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46420},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"37c075068d2ebd3503c6dc4e608c60a39a1d616e","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.1.6_1785395024056_0.982748839954698","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"kaduno-pullpush-mcp","version":"2.2.0","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.2.0","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"9df339cacb42c26cc2d3ce15f33fc202ed1035ba","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.2.0.tgz","fileCount":6,"integrity":"sha512-dXIuOf8nBigdRm3lYw8DRJvH8M+GVR6FbtE90XGVDGNC07y4lV8CFdz6wbpzSy+m1kY1QAKQHnBzpByuPWZFaw==","signatures":[{"sig":"MEUCIQC4WBR370dB38RbcrPeM90+5HJtUnXMt4wiN2uEZDfSxgIgZHQLXFRu6ZOvGxRp0TEQC0TOjfVsy360aeUO5ac2438=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41877},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"f1b9f929e48dffaf5fb73e23a02338100db7b038","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.2.0_1786015985449_0.5719747206300532","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"kaduno-pullpush-mcp","version":"2.2.1","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"license":"MIT","_id":"kaduno-pullpush-mcp@2.2.1","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"homepage":"https://pullpush.ai/docs/mcp","bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"bin":{"kaduno-pullpush-mcp":"dist/index.js"},"dist":{"shasum":"0a2c14442d163cfaeaad332ed8ad6423ff1927b5","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.2.1.tgz","fileCount":6,"integrity":"sha512-nJtYPVBhzWUeCvckHil/PP+Cl3Td5i24mKtJ9ZGAYGOp7KUHW/fdfkdTEKbWqjP3D5IbrEzYzRLO+QxFvlp/SA==","signatures":[{"sig":"MEUCIGtvUJp/FHQ7D4dwaMl5FAvrQBCEjGH4kTI8pTMRqPG9AiEAuWnblZEUwGXg1kiRtPMjUQq3OJFDboNG2WJ1wFgreFM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46734},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"bea3f4f13c0d741b17c2e22dea94d046c21f68e4","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/kaduno-pullpush-mcp_2.2.1_1786330807491_0.788621224290684","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"_id":"kaduno-pullpush-mcp@2.3.0","bin":{"kaduno-pullpush-mcp":"dist/index.js"},"bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"dist":{"shasum":"7bdfd09f8e07280bb1fcb737d19d9ec0d7354c5a","tarball":"https://registry.npmjs.org/kaduno-pullpush-mcp/-/kaduno-pullpush-mcp-2.3.0.tgz","fileCount":6,"integrity":"sha512-mvJEsMzckYKlj45HC6m74E//1CgM/9ejEmZ++4J00MW7Cs5LH0IvOJ8FVHcaUzG6EAjvAP1Hu+ne2NH+x5kARQ==","signatures":[{"sig":"MEYCIQDWCyE1Q/C8korV04LwcKe8ybejtHHw0mm4LffTyk2iNAIhAOlsi7g3bDrNnpx6yuuGGZNWKW0qtWn5kOLvYp0skp6Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDKjW7iHeVYnUNJc+awujaAfnG/UBtuu9k2nNYKfMLgBwIhAP2biwxNpWA3bjztSUAG33Yc+ttcxpMUZC7MsoqUxczR"}],"unpackedSize":97862},"main":"dist/index.js","name":"kaduno-pullpush-mcp","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"license":"MIT","mcpName":"ai.pullpush/pullpush-mcp","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit -p tsconfig.test.json","prepublishOnly":"npm run build && npm test"},"version":"2.3.0","_npmUser":{"name":"runech-kloner","email":"rune@kloner.no"},"homepage":"https://pullpush.ai/docs/mcp","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","directories":{},"maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"_nodeVersion":"25.8.0","dependencies":{"zod":"^4.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","tsup":"^8.3.0","vitest":"^3.2.7","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/kaduno-pullpush-mcp_2.3.0_1790780836494_0.2749567239304389"}}},"time":{"created":"2026-07-02T03:45:28.989Z","modified":"2026-09-30T15:07:16.774Z","1.0.0":"2026-07-02T03:45:29.193Z","1.0.1":"2026-07-02T04:42:48.065Z","2.0.0":"2026-07-02T06:50:47.649Z","2.0.1":"2026-07-02T08:49:08.516Z","2.1.0":"2026-07-08T06:18:55.025Z","2.1.1":"2026-07-10T02:08:04.699Z","2.1.2":"2026-07-10T14:51:14.150Z","2.1.3":"2026-07-10T15:21:34.584Z","2.1.4":"2026-07-10T17:06:42.147Z","2.1.5":"2026-07-24T06:11:20.553Z","2.1.6":"2026-07-30T07:03:44.193Z","2.2.0":"2026-08-06T11:33:05.581Z","2.2.1":"2026-08-10T03:00:07.628Z","2.3.0":"2026-09-30T15:07:16.559Z"},"bugs":{"url":"https://github.com/Kaduno-systems/pullpush-mcp/issues"},"license":"MIT","homepage":"https://pullpush.ai/docs/mcp","keywords":["mcp","model-context-protocol","pullpush","kaduno","ai","cursor","claude","integration","sync","connector"],"repository":{"url":"git+https://github.com/Kaduno-systems/pullpush-mcp.git","type":"git"},"description":"Connect any two APIs and keep them in sync — the official MCP server for PullPush.ai. Shadow-mode previews, canonical data models, reconciliation, diagnostics.","maintainers":[{"name":"runech-kloner","email":"rune@kloner.no"}],"readme":"# PullPush MCP — connect any two APIs and keep them in sync\n\n[![npm](https://img.shields.io/npm/v/kaduno-pullpush-mcp)](https://www.npmjs.com/package/kaduno-pullpush-mcp)\n[![MCP Registry](https://img.shields.io/badge/MCP%20registry-ai.pullpush%2Fpullpush--mcp-a855f7)](https://registry.modelcontextprotocol.io/v0/servers?search=ai.pullpush/pullpush-mcp)\n[![license](https://img.shields.io/badge/license-MIT-22c55e)](./LICENSE)\n\nThe official MCP server for [PullPush.ai](https://pullpush.ai) — an integration platform that\nconnects e-commerce stores, warehouses, marketplaces, ERPs, and POS systems, and keeps stock\nlevels, orders, and products in sync across all of them.\n\nThis server lets AI agents (Claude, Cursor, or anything that speaks\n[Model Context Protocol](https://modelcontextprotocol.io)) build, run, and monitor those\nintegrations end to end: connect two systems, preview the sync safely, and cut over to live —\nwithout a human clicking through a dashboard.\n\n## Why agents like it\n\n- **Deterministic runtime, no LLM in the hot path.** AI helps at build time (connector\n  generation, field-mapping suggestions); the sync engine itself is predictable, versioned,\n  and observable.\n- **Safe by default.** New flows start in **shadow mode** (read-only). `pullpush.sync`\n  `action:\"preview\"` shows a structured source-vs-destination diff before anything is written.\n- **Credentials never touch your machine or env.** Connection secrets are envelope-encrypted\n  (AES-256-GCM, per-tenant keys) server-side the moment they're created.\n- **Self-describing.** A `get-started` MCP prompt walks from zero to a working integration;\n  `pullpush://` resources expose the tool catalog, quickstart, and agent guide — no pre-briefing\n  needed.\n- **Structured, actionable errors.** Failures return `{code, suggestion, suggestedTool,\n  retryable}` — an agent always knows the next step.\n- **Server-grade reliability.** Circuit breakers, per-key ordered delivery, idempotency,\n  dead-letter queue with retry, exponential backoff.\n\n## Try it in 60 seconds — no signup\n\n```bash\ncurl -X POST https://api.pullpush.ai/api/sandbox\n```\n\nReturns a free 48-hour sandbox tenant: an API key, ready-to-paste MCP configs, and two\npre-wired demo connections whose stock data deliberately disagrees — so your first\n`pullpush.sync` `action:\"preview\"` shows a real canonical diff (drifted quantities, a missing\nitem, in-sync rows). The sandbox deletes itself on expiry — or keep it:\n`POST /api/sandbox/claim` (Bearer = the sandbox key, `{\"email\": \"...\"}`) converts it to a\npersistent free tenant with everything you built preserved.\n\n## Quick start\n\nConnect straight to the hosted endpoint. It is the most robust option — nothing runs on your\nmachine, so there is no process to crash or go stale:\n\n```json\n{\n  \"mcpServers\": {\n    \"pullpush\": {\n      \"type\": \"streamable-http\",\n      \"url\": \"https://api.pullpush.ai/mcp\",\n      \"headers\": { \"Authorization\": \"Bearer <your-api-key>\" }\n    }\n  }\n}\n```\n\nAdd this to `~/.cursor/mcp.json` (Cursor), Claude Desktop's config, or the MCP config for your\nclient.\n\n### Clients that only speak stdio\n\nUse this package as a local stdio proxy to the same endpoint. Install a pinned version once and\nrun the binary — do not use `npx ...@latest`, which re-resolves the package (and needs the\nnetwork) every time your client starts the server:\n\n```bash\nnpm i -g kaduno-pullpush-mcp@2.3.0\n```\n\n```json\n{\n  \"mcpServers\": {\n    \"pullpush\": {\n      \"command\": \"kaduno-pullpush-mcp\",\n      \"env\": { \"PULLPUSH_API_KEY\": \"<your-api-key>\" }\n    }\n  }\n}\n```\n\nThe proxy never exits because the API is unreachable: it starts, answers your client, and\nconnects in the background (exponential backoff, honouring `Retry-After`). It reconnects after a\nnetwork blip or an API restart, and while it is offline a tool call returns a retryable\n\"reconnecting\" error that changes nothing. The tool catalogue is cached on disk, so a restart\nwhile the API is down still lists your tools.\n\nThen ask your agent to run the **`get-started`** prompt — it walks through the whole flow:\ncatalog connectors → create + test connections → suggest a field mapping → create the flow in\nshadow mode → preview the diff → cut over.\n\n## Getting an API key\n\nFor a throwaway key, use the sandbox above. For a persistent tenant:\n\n1. [Sign up free](https://app.pullpush.ai/sign-up) (1 connection, 1,000 events/month — no card)\n2. Admin panel → **Settings → API Keys**\n3. Create a key with the scope you need (tenant, org, or admin)\n\n## Tools\n\n**48 tools** (**30 explicit tools** plus **188 actions** across 18 domain routers) covering the\nfull integration lifecycle. Explicit tools are individually named; domain routers accept an\n`action` parameter with multiple operations.\n\n### Connections\n\n- `pullpush.connection.create` — Create and configure a connection to an external system (Shopify, WooCommerce, Linnworks, Xero, HubSpot, and 20+ more)\n- `pullpush.connection.test` — Test live connection credentials; returns health metrics and failure count\n- `pullpush.connection` — List, get, update, delete, and configure connections (router with actions: list, get, update, delete, health, config)\n\n### Flows\n\n- `pullpush.flow.create` — Wire a source→destination sync pipeline with triggers, mapping, and canonical data models\n- `pullpush.flow.dryRun` — Dry-run an event through flow transform/filter without delivery; returns mapped payload\n- `pullpush.flow.natural` — Create a flow from a natural-language description; proposes mapping and creates in shadow mode\n- `pullpush.flow` — List, get, update, pause/resume, delete flows and view delivery history (router)\n\n### Sync & reconciliation\n\n- `pullpush.sync.reconcile` — Reconcile-and-deliver: diff source vs destination, then deliver changes with per-item progress\n- `pullpush.sync` — Preview diffs, snapshot data, inspect single keys, scan catalogs, diagnose unmatched SKUs, manage baselines (router with actions: preview, snapshot, inspect, reconcile, scan, reset-baseline, baseline.history, baseline.rollback, channel-cache, unmatched)\n\n### Field mapping\n\n- `pullpush.mapping.suggest` — AI-proposes field mapping from source sample to target shape; returns mapping, confidence, preview\n- `pullpush.mapping.validate` — Validate a mapping config against source and destination schemas\n- `pullpush.mapping.compare` — Compare two mappings side by side\n- `pullpush.mapping.explain` — Explain how a mapping transforms data, step by step\n- `pullpush.mapping.diff` — Diff two mapping versions to see what changed\n- `pullpush.mapping.get` — Get a flow's current mapping config, source fields, and destination fields\n\n### Diagnostics\n\n- `pullpush.explain` — Diagnose why a flow, connection, or delivery failed; gathers errors, identifies patterns, suggests fixes\n- `pullpush.diagnose.recent` — Scan all flows for recent failures; returns a prioritized issue list\n- `pullpush.ask` — Answer natural-language ops questions using tenant failures and anomalies\n\n### Connector authoring\n\n- `pullpush.connector.generate` — AI-generates TypeScript connector code, typechecks, tests, and registers\n- `pullpush.connector` — List, get, update, and manage connector definitions (router)\n\n### Data operations\n\n- `pullpush.data.push` — Push file data (CSV, JSON, XML) into a connection\n- `pullpush.import` — File-based data import operations (router)\n- `pullpush.export` — Scheduled export pipelines: create, list, update, delete, test, run (router)\n- `pullpush.canonical` — Inspect and manage canonical data models (router)\n\n### Shadow mode & safety\n\n- `pullpush.shadow` — Run integrations read-only before going live; compare shadow vs live results (router)\n\n### Batch operations\n\n- `pullpush.batch.test` — Test multiple connections in parallel\n- `pullpush.batch.status` — Get status matrix across all flows\n- `pullpush.batch.setup` — One-call setup: create connections + flow + test in one operation\n- `pullpush.batch` — Multi-flow batch operations and proactive reports (router)\n\n### Ops & health\n\n- `pullpush.health.overview` — Tenant health dashboard: connections, flows, failures, backlog, delivery rate, anomalies\n- `pullpush.health.mcp` — MCP server health: database, tools registered, uptime\n- `pullpush.ops` — Anomaly detection, dead-letter recovery, operation monitoring (router)\n\n### Workflows\n\n- `pullpush.workflow.create` — Create multi-step workflow with trigger and step DAG\n- `pullpush.workflow.trigger` — Manually trigger a workflow run from an existing event\n- `pullpush.workflow` — List, get, and manage workflows (router)\n\n### Integrations & marketplace\n\n- `pullpush.integration.create` — Create an integration grouping flows/workflows under one name\n- `pullpush.integration` — List and manage integrations (router)\n- `pullpush.marketplace.install` — Install a marketplace listing into your tenant\n- `pullpush.marketplace` — Browse and manage marketplace connectors (router)\n- `pullpush.destination.provision` — Provision custom fields on destination API (e.g. HubSpot properties)\n\n### Administration\n\n- `pullpush.tenant` — Tenant management: list, get, create, update (router)\n- `pullpush.billing` — Subscription and usage management (router)\n- `pullpush.partner` — Partner program operations (router)\n- `pullpush.backup` — Backup and restore operations (router)\n- `pullpush.feedback` — Submit feedback about MCP tool quality or missing features\n\nFull tool reference: [pullpush.ai/docs/mcp](https://pullpush.ai/docs/mcp)\n\n## Environment variables\n\n| Variable | Required | Default | Description |\n| --- | --- | --- | --- |\n| `PULLPUSH_API_KEY` | Yes | — | Your PullPush API key |\n| `PULLPUSH_API_URL` | No | `https://api.pullpush.ai` | API base URL (override for self-hosted) |\n| `PULLPUSH_CACHE_DIR` | No | OS cache directory | Where the tool catalogue is cached |\n| `PULLPUSH_TIMEOUT_MS` | No | `55000` | How long a tool call may take before the proxy answers with a timeout error |\n\n## Auth scopes\n\n| Scope | Access |\n| --- | --- |\n| **Tenant key** | Your tenant's connections, flows, sync, diagnostics |\n| **Org key** | All tenants in your organization (read or read+write) |\n| **Admin key** | Full platform access (billing, partners, all tenants) |\n\nTools are automatically scoped: a tenant key never sees another tenant's data.\n\n## Features\n\n- **Never dies on a bad connection**: starts even when the API is down, reconnects on its own,\n  and serves a cached tool catalogue meanwhile\n- **Auto-refresh**: tool catalog refreshes every 5 minutes — new server-side tools appear\n  without a restart (clients are notified only when the catalogue really changed)\n- **Offline quickstart**: built-in `pullpush://docs/quickstart-local` resource works without\n  network\n- **Retry on unknown tool**: automatically refreshes the catalog when a tool is not found\n- **Clear error messages**: auth failures, network issues, and version mismatches are explained\n\n## Documentation\n\n- [Getting started](https://pullpush.ai/docs/getting-started) — 5 minutes to a first integration\n- [MCP guide](https://pullpush.ai/docs/mcp) — full tool reference and client setup\n- [Shadow mode](https://pullpush.ai/docs/shadow-mode) · [Preview & reconcile](https://pullpush.ai/docs/preview-reconcile) · [Security](https://pullpush.ai/docs/security)\n- [llms.txt](https://pullpush.ai/llms.txt) — machine-readable product summary\n- [Machine-readable integration catalog](https://pullpush.ai/api/integrations)\n- MCP registry entry: [`ai.pullpush/pullpush-mcp`](https://registry.modelcontextprotocol.io/v0/servers?search=ai.pullpush/pullpush-mcp)\n\n## Also available: pullpush-mcp-dev\n\nFor connector authors, platform admins, and internal developers,\n[pullpush-mcp-dev](https://www.npmjs.com/package/pullpush-mcp-dev) exposes additional tools for:\n\n- AI-powered connector generation and composition\n- Canonical schema management\n- Marketplace publishing\n- Billing and partner administration\n- Batch operations across all tenants\n\n## Development\n\n```bash\ngit clone https://github.com/Kaduno-systems/pullpush-mcp.git\ncd pullpush-mcp\nnpm install\nnpm run dev    # Run from source via tsx\nnpm run build  # Compile with tsup\n```\n\nThis repository is a published mirror of the MCP client package; the platform itself is\ndeveloped in a private monorepo. Issues and questions are welcome here or at\n[hello@pullpush.ai](mailto:hello@pullpush.ai).\n\n## License\n\nMIT\n\n## Development\n\nDevelopment happens in the PullPush platform monorepo; the [Kaduno-systems/pullpush-mcp](https://github.com/Kaduno-systems/pullpush-mcp) repository is a published mirror of each release. Issues are welcome there; code changes land via the monorepo.\n","readmeFilename":"README.md"}