{"_id":"@ai-universe/mcp-conversation-client","_rev":"11-4e0d0a356e352c4d8a7d19f0a9c3fbfc","name":"@ai-universe/mcp-conversation-client","dist-tags":{"latest":"2.1.2"},"versions":{"0.1.0":{"name":"@ai-universe/mcp-conversation-client","version":"0.1.0","license":"MIT","_id":"@ai-universe/mcp-conversation-client@0.1.0","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"37b2045e4e22ccc207014f531a566b0df83e5f66","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-0.1.0.tgz","fileCount":51,"integrity":"sha512-/Itb/96dkuDB2StuILwf+Pgs5wc4AA1TH5pMXZx2s/c2ncyTF5jalnJFnkrLTpRhyFjdyOHZa+n0+OCH0BX0hg==","signatures":[{"sig":"MEUCIA7RYnW8QdULybZcsO4rDh+VAvQDlVeQZMLBjn3R9Q8RAiEAux4S+SfKKfkJlhkzkwe5RXxYI1qvCLJ1FZ8xEHAgzG4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104574},"main":"dist/cjs/index.js","type":"module","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"4924824eb77d41e3638a05a99255191fc4ef91c2","scripts":{"lint":"eslint src --ext .ts","test":"NODE_ENV=test jest","build":"npm run build:esm && npm run build:cjs && npm run build:types","clean":"rimraf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:types":"tsc -p tsconfig.types.json"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"11.5.1","description":"TypeScript client for interacting with the AI Universe conversation MCP server","directories":{},"_nodeVersion":"24.6.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^6.0.1","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.14","@types/node":"^20.11.19"},"peerDependencies":{"@modelcontextprotocol/sdk":"^1.18.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_0.1.0_1759044590847_0.9824513021343584","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.0","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.0","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"912becc24e0576dc88cc2f53e3e9e33a69a744b8","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.0.tgz","fileCount":54,"integrity":"sha512-cekQB1l91RtNKS2pWaBi/aofeh/SPDrtmyA8tHv8YniHboeF6E8giAirshAX8829Y1AIScJq0OgbkxRHo9ZGuQ==","signatures":[{"sig":"MEUCIQDxamApR8ymZuaWzvI7iYeGQoBn4i5n0GSHjUjNQhpn1AIgQYFXFpZRwUQqPhM3M8HB/zutAhmZhwpQ8QbgFt1N8WQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121966},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b38084b8fba33aff018c673762c349dfb9ac9bdf","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"8.19.4","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.0_1759345517729_0.5150264406021281","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.1","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.1","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"65eb162207f6c8a45830c50a6c19dcd7cf5e02e7","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.1.tgz","fileCount":54,"integrity":"sha512-iXTXDWcNJjYBD/F9ICTut4iF9G5/wCnxTwgw7ZytjiKPSdxlzrpFtvCGpUTz0OEZVYeV2P9VFCJIcLJtwjqrFQ==","signatures":[{"sig":"MEUCIQDnnAnmD1DWUa9BwHqPAK+1CYGSmwcCXOpRmFu4GCFfQwIgRC+ue78D5g+zi/l9/q9HZuXAK9+POywQJ3FfZVWzxVM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121966},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4166b1887b604187bba18bfb19fe0db7a1b96768","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"8.19.4","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.1_1759376988603_0.5415293770879406","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.2","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.2","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"3637684c6ea021f6156f5217f6e99c45102ed3bd","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.2.tgz","fileCount":55,"integrity":"sha512-sIzdtYu0FMAb4w1Uy39VO3uC46dAM4uqb+xVFSMWIgjTgzEZ7unMDUh9Y+sXwokEGgqnad8Jhs9iLaOW0QJgZw==","signatures":[{"sig":"MEUCICa1eVU4DIICtxmAzUq8bZrabk14K85040Jndd50dQRBAiEAgl71RPJk4bteHnXNisB22GH/TuUdqDNz8N5CBOTU5xs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127899},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"85cdb474f2eb45938034d40965e4ee247fccf05b","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"8.19.4","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.2_1759385157052_0.9053319437305718","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.3","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.3","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"fec62fb18551fc1fa503703f23fb4d9f6841c5cb","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.3.tgz","fileCount":55,"integrity":"sha512-kbYVl+8e5vSVnzF2WoXulwHpI7Arh6JZ4gUNAwdSQB/HREXx5orVQnuSYmcN6Adzuu4u9ZoyiNXmmVY8aF8xfQ==","signatures":[{"sig":"MEYCIQDUI01E+5RzwnH+ty2O8oAebNQl1O5pqbt9cLDw7PwJnwIhAKyfVv4ljx6QHCDDww0witVzVQpfWwOlzCkKKdjTA8W5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128387},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0762d3d4aadc391e0013ade91dae3b0c80427e77","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"11.5.1","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"24.6.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.3_1759815722508_0.22654142337471117","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.4","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.4","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"23f50a289709b1a8019e0118d4175ec7ca3e8c3e","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.4.tgz","fileCount":55,"integrity":"sha512-0262tj+WW86EobXP7Ji4rUjbZ1klOqEduWyGDWTIG/3DJHkfTNx2Bd2EWi+46yNDxKHZu2rT7gmUbDJEmKWF9Q==","signatures":[{"sig":"MEUCIFfwsiK9kp5o/eRiiVY5ZecFfKHDuMHr0+XHVX1gn1JHAiEAxvFiTmUvWthoNyUlFuglfH9Z2l3E4xKgsNjVJ2JZTlY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131093},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"12c0867cba3b0a316e982327b22c22fbe93a1eeb","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"11.5.1","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"24.6.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.4_1762233851148_0.9652998611279688","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.5","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.5","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"dc9fc84aa835acb24d08d0452702ae21a0c3dd42","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.5.tgz","fileCount":55,"integrity":"sha512-WXmkcaTIP4F8S4XA29yy/MOd8viqzgTBXA0U8u0RQ2FsNgCgu5bOK1Ci7OPY1qHmwUObrX5c/RAWyxZVanoa5w==","signatures":[{"sig":"MEUCIHPRxI67a21+l9jVLPwVRBRlLtcF8WF2U6FC6Y0K+XJNAiEAsMUsZPit5TVT2eGoHzXto0n0hFmtMOQhUyuOLJd6jbQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133360},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8722403a547cba74e1b19416436c86e439b2faf0","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"11.5.1","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"24.6.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.5_1762234210682_0.7337917024483489","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"@ai-universe/mcp-conversation-client","version":"2.0.6","keywords":["mcp","conversation","client","typescript"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.0.6","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"a0e3f08a35d49017a7c55d4d05b12603a01c095c","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.0.6.tgz","fileCount":55,"integrity":"sha512-bPz6wx9L/5W/NgEvaLZ+Pu2FdcrWgbn2I3+C7yVA4spOzTUUg/dLd3HvFE0l/u29dAWNgpMGqz9cy0h+amzOLg==","signatures":[{"sig":"MEUCIQC+Le+tp+c1OFgjWzg9J/seZIfoarMna8bAdisNvD8cYgIgILPkc7vv9qVxIn3J+pfFA7yjqEGfeTk0diGhRLJfkIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133338},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8d13fc8a078ea853ae7a5a0839951eb904efac75","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"11.5.1","description":"TypeScript client library for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"24.6.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.0.6_1762237082739_0.5236756687957704","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@ai-universe/mcp-conversation-client","version":"2.1.0","keywords":["mcp","conversation","client","typescript","json-schema","schemas","validation"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.1.0","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"7d119bd6a6688ffbad9866d28e7078476b37f7fd","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.1.0.tgz","fileCount":59,"integrity":"sha512-mtaxUrgsOVAMUEqkaU48coP7iqCFJrJHioobI8r0ljkLDKv1B5k0Xllo08qAzjGLimqPHVn05RMTgVXRAOoBzg==","signatures":[{"sig":"MEQCIE+kW9xFLE1QS6fPErvC0yhCb0E/C4kIWnRgZjL+a8fKAiAuNfRdkDd50vZ98UmK5hb2T66PUM5P9KolDhJOQtcURw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218498},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./schemas":{"types":"./dist/schemas.d.ts","import":"./dist/schemas.js","default":"./dist/schemas.js"}},"gitHead":"1a98a56962a1502664636d38bd5dbc2e7157be4d","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"8.19.4","description":"TypeScript client library and JSON schemas for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.1.0_1762681610270_0.7512607089549628","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@ai-universe/mcp-conversation-client","version":"2.1.1","keywords":["mcp","conversation","client","typescript","json-schema","schemas","validation"],"author":{"name":"AI Universe Team"},"license":"MIT","_id":"@ai-universe/mcp-conversation-client@2.1.1","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"dist":{"shasum":"9eed16956402b5744ea37c8f9edb6eb732ffa97f","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.1.1.tgz","fileCount":59,"integrity":"sha512-jkSA+/ACUHNvFzjyuwNgxR91S1KS1OkCfbyKL26jHMz7U/IOFfrg2Shp+kahQ3XVYCqeVT4k+8EXdhv257O4JA==","signatures":[{"sig":"MEUCIHUMoovzg4fKI7jnzM09BQK0sjno+MHB0odRxQfZ52N2AiEAoyKFCz6l547L1VO4Hn8u3rAXDQFksAMzEHQDtr6gHxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220462},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./schemas":{"types":"./dist/schemas.d.ts","import":"./dist/schemas.js","default":"./dist/schemas.js"}},"gitHead":"03d391bbdf1c0adedf406f06704727950d7afeeb","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"_npmVersion":"8.19.4","description":"TypeScript client library and JSON schemas for AI Universe Conversation MCP Server with unified auto-creation API","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-conversation-client_2.1.1_1762686128741_0.3269687768325704","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@ai-universe/mcp-conversation-client","version":"2.1.2","description":"TypeScript client library and JSON schemas for AI Universe Conversation MCP Server with unified auto-creation API","main":"dist/index.js","types":"dist/index.d.ts","type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./schemas":{"types":"./dist/schemas.d.ts","import":"./dist/schemas.js","default":"./dist/schemas.js"}},"scripts":{"build":"tsc","test":"jest","prepublishOnly":"npm run build"},"keywords":["mcp","conversation","client","typescript","json-schema","schemas","validation"],"author":{"name":"AI Universe Team"},"license":"MIT","devDependencies":{"@types/jest":"^29.5.14","jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.0.0"},"dependencies":{},"gitHead":"aba15ed642e102ca4c48a156dcc322fba4c63266","_id":"@ai-universe/mcp-conversation-client@2.1.2","_nodeVersion":"20.19.4","_npmVersion":"8.19.4","dist":{"integrity":"sha512-sP6iS8Wn2/YZAyKQ2KSgwzidg6unEtkHklN8jzqlKz921rmUR7bVb3LnBXRnIgT49mKHPDLgB83wnzgTVvfwOw==","shasum":"255eaeb12839f6486f88532d55ddf66c54386e40","tarball":"https://registry.npmjs.org/@ai-universe/mcp-conversation-client/-/mcp-conversation-client-2.1.2.tgz","fileCount":59,"unpackedSize":254510,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAQfgwAyhDOzMnPp8Y5iWhyIXCnimfnrGclf+vv/AeWAAiEAyMAQ0tHjo+H7zAl13Sl+vAL+zJZZEhOA6irM5syk27A="}]},"_npmUser":{"name":"jleechan","email":"jleechan+npm@gmail.com"},"directories":{},"maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-conversation-client_2.1.2_1762689980253_0.6908532044082936"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-28T07:29:50.757Z","modified":"2025-11-09T12:06:20.661Z","0.1.0":"2025-09-28T07:29:51.040Z","2.0.0":"2025-10-01T19:05:17.940Z","2.0.1":"2025-10-02T03:49:48.803Z","2.0.2":"2025-10-02T06:05:57.263Z","2.0.3":"2025-10-07T05:42:02.721Z","2.0.4":"2025-11-04T05:24:11.345Z","2.0.5":"2025-11-04T05:30:11.042Z","2.0.6":"2025-11-04T06:18:02.935Z","2.1.0":"2025-11-09T09:46:50.467Z","2.1.1":"2025-11-09T11:02:08.937Z","2.1.2":"2025-11-09T12:06:20.465Z"},"author":{"name":"AI Universe Team"},"license":"MIT","keywords":["mcp","conversation","client","typescript","json-schema","schemas","validation"],"description":"TypeScript client library and JSON schemas for AI Universe Conversation MCP Server with unified auto-creation API","maintainers":[{"name":"jleechan","email":"jleechan+npm@gmail.com"}],"readme":"# AI Universe MCP Conversation Client\n\nTypeScript client library for the AI Universe Conversation MCP Server with unified auto-creation API.\n\n## Installation\n\n```bash\nnpm install @ai-universe/mcp-conversation-client\n```\n\n## Features\n\n- 🚀 **Unified Auto-Creation API** - Conversations auto-create on first message\n- 📝 **Type-Safe** - Full TypeScript support with exported types\n- 🔒 **Secure** - Built-in userId validation and ownership checks\n- 📊 **Complete API Coverage** - All 4 MCP conversation tools supported\n- 🎯 **Simple & Intuitive** - Clean, easy-to-use API\n- ✅ **Persist-or-Error Contract** - v2.0.4+ guarantees every successful `sendMessage`\n  returns both `conversationId` and `messageId`, and the client throws if either is missing\n\n## Persist-or-Error Guarantee\n\nBeginning with v2.0.4 the Conversation MCP server retries transient Firestore failures once\nand only returns success when both the conversation and message records have been\npersisted. The TypeScript client enforces this contract: if a response omits either\nidentifier it throws, ensuring agents never operate on partially saved data. Remove any\nsynthetic persistence fallbacks in your agents once you upgrade to this release.\n\n## Quick Start\n\n```typescript\nimport { ConversationClient } from '@ai-universe/mcp-conversation-client';\n\n// Initialize client\nconst client = new ConversationClient('http://localhost:3000/mcp');\n\n// Send a message (auto-creates conversation if needed)\nconst result = await client.sendMessage({\n  userId: 'user_123',\n  content: 'Hello! This is my first message.',\n  role: 'user',\n  title: 'My Conversation'\n});\n\nconsole.log('Conversation ID:', result.conversationId);\nconsole.log('Created new conversation:', result.created);\n\n// Add another message to the same conversation\nawait client.sendMessage({\n  userId: 'user_123',\n  conversationId: result.conversationId,\n  content: 'This is my second message.',\n  role: 'assistant'\n});\n\n// Get conversation metadata\nconst conversation = await client.getConversation({\n  userId: 'user_123',\n  conversationId: result.conversationId\n});\n\nconsole.log('Title:', conversation.title);\nconsole.log('Message count:', conversation.messageCount);\n\n// Get message history\nconst history = await client.getHistory({\n  userId: 'user_123',\n  conversationId: result.conversationId,\n  limit: 50\n});\n\nconsole.log('Messages:', history.messages);\n\n// List all conversations for a user\nconst conversations = await client.listConversations({\n  userId: 'user_123',\n  pageSize: 10\n});\n\nconsole.log('Total conversations:', conversations.totalCount);\n```\n\n## API Reference\n\n### `sendMessage(params)`\n\nSend a message to a conversation. Auto-creates conversation if `conversationId` is not provided.\n\n**Parameters:**\n- `userId` (string, required) - User identifier\n- `content` (string, required) - Message content\n- `role` ('user' | 'assistant', required) - Message role\n- `conversationId` (string, optional) - Conversation ID. Omit to auto-create.\n- `title` (string, optional) - Conversation title (only used on auto-creation)\n\n**Returns:**\n```typescript\n{\n  conversationId: string;\n  messageId: string;\n  sequence: number;\n  created: boolean;  // true if conversation was auto-created\n  title: string;\n  timestamp: string; // ISO-8601 timestamp of message creation\n}\n```\n\n### `getConversation(params)`\n\nGet conversation metadata.\n\n**Parameters:**\n- `userId` (string, required)\n- `conversationId` (string, required)\n\n**Returns:**\n```typescript\n{\n  conversationId: string;\n  userId: string;\n  title: string;\n  messageCount: number;\n  createdAt: string;\n  updatedAt: string;\n}\n```\n\n### `getHistory(params)`\n\nGet conversation message history with pagination.\n\n**Parameters:**\n- `userId` (string, required)\n- `conversationId` (string, required)\n- `limit` (number, optional) - Max messages to return\n- `cursor` (string, optional) - Pagination cursor\n\n**Returns:**\n```typescript\n{\n  conversationId: string;\n  messages: Array<{\n    messageId: string;\n    conversationId: string;\n    content: string;\n    role: 'user' | 'assistant';\n    sequence: number;\n    timestamp: string;\n  }>;\n  hasMore: boolean;\n  nextCursor?: string;\n}\n```\n\n### `listConversations(params)`\n\nList all conversations for a user with pagination.\n\n**Parameters:**\n- `userId` (string, required)\n- `pageSize` (number, optional) - Conversations per page\n- `cursor` (string, optional) - Pagination cursor\n\n**Returns:**\n```typescript\n{\n  conversations: Array<{\n    conversationId: string;\n    title: string;\n    messageCount: number;\n    createdAt: string;\n    updatedAt: string;\n  }>;\n  totalCount: number;\n  hasMore: boolean;\n  nextCursor?: string;\n}\n```\n\n## Auto-Creation Feature\n\nThe unified API automatically creates conversations when you send the first message without providing a `conversationId`:\n\n```typescript\n// First message - auto-creates conversation\nconst result = await client.sendMessage({\n  userId: 'user_123',\n  content: 'Hello!',\n  role: 'user',\n  title: 'My Chat'  // Optional title\n});\n\nconsole.log(result.created);  // true\nconsole.log(result.conversationId);  // Auto-generated ID\n\n// Subsequent messages - use the conversation ID\nawait client.sendMessage({\n  userId: 'user_123',\n  conversationId: result.conversationId,\n  content: 'Follow-up message',\n  role: 'assistant'\n});\n```\n\nIf no title is provided, one is auto-generated from the first message content with PII redaction.\n\n## Error Handling\n\n```typescript\ntry {\n  const result = await client.sendMessage({\n    userId: 'user_123',\n    content: 'Hello!',\n    role: 'user'\n  });\n} catch (error) {\n  if (error.message.includes('unauthorized')) {\n    console.error('User does not own this conversation');\n  } else if (error.message.includes('not found')) {\n    console.error('Conversation not found');\n  } else {\n    console.error('Unexpected error:', error);\n  }\n}\n```\n\n## TypeScript Types\n\nAll types are exported for use in your application:\n\n```typescript\nimport type {\n  SendMessageParams,\n  SendMessageResponse,\n  GetConversationParams,\n  ConversationMetadata,\n  GetHistoryParams,\n  ConversationHistory,\n  ListConversationsParams,\n  ConversationList,\n  Message\n} from '@ai-universe/mcp-conversation-client';\n```\n\n## JSON Schemas\n\nStarting in v2.1.0, comprehensive JSON schemas are included for all MCP tool requests and responses. These can be used for validation, documentation, code generation, and more.\n\n### Using the Schemas\n\n```typescript\n// Import all schemas\nimport { schemas, requestSchemas, responseSchemas } from '@ai-universe/mcp-conversation-client/schemas';\n\n// Use individual schemas\nimport {\n  sendMessageRequestSchema,\n  sendMessageResponseSchema,\n  getHistoryRequestSchema,\n  getHistoryResponseSchema\n} from '@ai-universe/mcp-conversation-client/schemas';\n```\n\n### Available Schemas\n\nRequest and response schemas are available for all MCP tools:\n\n- `health-check` - Health check endpoint\n- `convo.send-message` - Send message with auto-creation\n- `convo.get-conversation` - Get conversation metadata\n- `convo.get-history` - Get conversation history\n- `convo.get-message` - Get a single message\n- `convo.list-conversations` - List user conversations\n\n### Schema Structure\n\nAll schemas are JSON Schema Draft 7 compliant. Example:\n\n```typescript\n// Access a complete tool schema\nconst sendMessageSchema = schemas['convo.send-message'];\nconsole.log(sendMessageSchema.request);   // Request schema\nconsole.log(sendMessageSchema.response);  // Response schema\n\n// Or access directly\nconsole.log(requestSchemas['convo.send-message']);\nconsole.log(responseSchemas['convo.send-message']);\n```\n\n### Validation Example\n\nUse with your favorite JSON Schema validator:\n\n```typescript\nimport Ajv from 'ajv';\nimport { sendMessageRequestSchema } from '@ai-universe/mcp-conversation-client/schemas';\n\nconst ajv = new Ajv();\nconst validate = ajv.compile(sendMessageRequestSchema);\n\nconst data = {\n  userId: 'user_123',\n  content: 'Hello!',\n  role: 'user'\n};\n\nif (validate(data)) {\n  console.log('Valid!');\n} else {\n  console.log('Invalid:', validate.errors);\n}\n```\n\n## Version History\n\n### 2.1.0 (Current)\n- ✨ **NEW:** Comprehensive JSON schemas for all MCP tool requests and responses\n- Export schemas separately via `@ai-universe/mcp-conversation-client/schemas`\n- JSON Schema Draft 7 compliant for validation, documentation, and code generation\n- All previous v2.0.x features included\n\n### 2.0.6\n- Unified auto-creation API\n- Complete TypeScript support\n- PII redaction in auto-generated titles\n- Firestore backend support\n- Persist-or-Error contract guarantee\n\n### 1.x\n- Legacy in-memory storage\n- Manual conversation creation required\n\n## License\n\nMIT\n\n## Support\n\nFor issues and questions:\n- GitHub: [ai_universe_convo_mcp](https://github.com/jleechanorg/ai_universe_convo_mcp)\n- Issues: [GitHub Issues](https://github.com/jleechanorg/ai_universe_convo_mcp/issues)\n","readmeFilename":"README.md"}