{"_id":"@utcp/mcp","_rev":"22-deec9380d9f72f84db5fe049818d96c2","name":"@utcp/mcp","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"@utcp/mcp","version":"1.0.0","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.0","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"6ffce5b75f68a2f6ef688ec0393ad74372fc5f39","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.0.tgz","fileCount":8,"integrity":"sha512-90b5QPJ/KzjYtn0IG/mPqm/nbyW38hs64F4zt2bjjIxLh3i0jvFNts+IKw3lNjHT2GpP0QVeT7wkrHJRtr1M0A==","signatures":[{"sig":"MEUCIDcNPaocBZXPf/6hbxXKLRIfjPL16qDutNHNvvuJ7wg1AiEA8ZB3k7+Z83ZKs/aSJGfCeXkZ5saIiEOnL1NURhLyfdw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32099},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"eca07737e02dcfecb18e04fb4154724c3877dcca","scripts":{"build":"tsc"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.0","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.0_1760824749212_0.4473343621990653","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@utcp/mcp","version":"1.0.1","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.1","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"27286adbb7e02c0db96c9677ed55d7b6397cde90","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.1.tgz","fileCount":8,"integrity":"sha512-FHaOx63NKEYoILEDXOubiY+QaGh62uW3Mk6lXQ9sMLMeYWcXYixqSWXHXPdlTTMatmnod80CIQkiFXGw9dW1YA==","signatures":[{"sig":"MEYCIQDHozeV4nLgSCYonivKuEEuJJuTVIRxA1YzNUQH88jdCgIhAKJwIVhI4SKHQaR945o3onx5AsACgs40BfWvSYzxGahd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37861},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"40b783269e7ca45c8a258d3f11bdc8ee88eef03c","scripts":{"build":"tsc"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.1","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.1_1760829585474_0.8314509464024624","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@utcp/mcp","version":"1.0.2","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.2","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"ce5141d8a63e59ad4360179db6bfd1270b8230b0","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.2.tgz","fileCount":8,"integrity":"sha512-slcy2Hm2jDRbJ/cMTDkMoKLW+oa3TpDfTTElLNWxeAJZS31beSzFC/MQ1zOZx35aaD98e520qHQ5ApCQO3PfWw==","signatures":[{"sig":"MEYCIQCNlQkQKIg74hgg/A0uD3Bk1cvoVIpPRpJc6KIDH2d7NQIhAKjtAETtbnV+cukN2nCTSbf6T5TJuYTR9ICQPt02DmDs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37920},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"40b783269e7ca45c8a258d3f11bdc8ee88eef03c","scripts":{"build":"tsc"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.2","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.2_1760873689617_0.1746096522776226","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@utcp/mcp","version":"1.0.3","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.3","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"403515d4f8ebb42eef0dde5096566bfb8c189f31","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.3.tgz","fileCount":8,"integrity":"sha512-NZNvf0Jo2/2YDb54OoBq8bbjF3a70/aaiJ2cbsLNJzoW5DtuR+kCf7mj9jTuvKpbwFacER7UyDAb27rpk3zDFw==","signatures":[{"sig":"MEYCIQC+IKm9NGzmTT3y1tEh+mO8hy6sNJ62cvGF0ehtqMgSKgIhAKRaHZuXy5t4rjo5JCanc+Dk8TPVTUZGicfifBftiwVE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37980},"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","require":"./dist/index.js"}},"gitHead":"40b783269e7ca45c8a258d3f11bdc8ee88eef03c","scripts":{"build":"tsc"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.3","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.3_1760874316729_0.01030454771126732","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@utcp/mcp","version":"1.0.4","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.4","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"2133e9f2f37b13ea5b37799b12870c757c24ba90","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.4.tgz","fileCount":8,"integrity":"sha512-RSrpKeHqDIVEEofFRYRkbRIjkJenAIbnu4r3tjXwvOvTHf8DKUJHEDPOtBTlscr3YQ3sl36RlNiIi6mXd4bXUA==","signatures":[{"sig":"MEUCIQCJyhOTvO6YDNo3Bx02PmI/vw3lMrO+weDC8130czl97QIgSkLbfopcXsXXGKXxZmQUoaCncZNZ0MykY/CHvYWxUuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37633},"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","require":"./dist/index.js"}},"gitHead":"40b783269e7ca45c8a258d3f11bdc8ee88eef03c","scripts":{"build":"tsc"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.4","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.4_1760877014228_0.1888882699539718","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@utcp/mcp","version":"1.0.6","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.6","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"4811a589b65b4f6150be07de06696621b1d7ef18","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.6.tgz","fileCount":8,"integrity":"sha512-U5Ef6Vkq36pm8C8+2mnWlKeK7Kv2QHFcJW55Npi9yqo5cNp941gGiBJ8r0kGNKINzvLECbap20fzgfwpcz7Vxw==","signatures":[{"sig":"MEUCIA/suet8cwSmfENpp+/DFyYy2VIDqDcXGetEYoOwJLXeAiEAzcbnv7u5rtHCu7Hks33mZRJXc4HynMGG2NLQ/idzSuQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":847706},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7decb1ae9f0215ccd103de329e6b45cff41a2461","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.6","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.6_1761121237233_0.5324120641931245","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@utcp/mcp","version":"1.0.11","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.11","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"342c8c361321e0c918ee63e927c370c31e4192e6","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.11.tgz","fileCount":8,"integrity":"sha512-eSsWFiuN+G9VNj4P27wPFjtWtacUeN9u430VdBhx8Qpt4vPKJfPwZAia63+yhhQbwitG6O6j23IcZ4uKGVt6Jw==","signatures":[{"sig":"MEUCIGYBs09QFjKaapnVbHX4IA2QQuExes+1CYRD8vamEcHhAiEAiklOvtN+it/PWc5JeNDSRL36Y9DR7AEaeIT1TBSYA7I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846103},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c5328aa610e93073a5c0918b21c5389f6734abbb","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.11","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.11_1761236877045_0.6197471431740122","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"@utcp/mcp","version":"1.0.12","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.12","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"139bd1af5d49c99dcdf38a479e7a1e9d5a64adf5","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.12.tgz","fileCount":8,"integrity":"sha512-yP3PHl9Ho1p5pH8xZQvuluCL6LPd9AowYzuh09A+lrag8OqVb8Pj1X+D8MZZVHqAzafhsXd65HkBXdDIG59d2Q==","signatures":[{"sig":"MEYCIQDL5km5GH5ZtHOY+HMApZoioaJm2FzRYldFNp0vrWDmUQIhANyuFp9FLYqc5M2Idef17RXLmLObkvMEBO9IYRr2Q4hN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846103},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d13bade21b60e713ab784c5c467cfbebede0eb6f","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.12_1761322855364_0.5075800008725222","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"@utcp/mcp","version":"1.0.13","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.13","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"9ad202899fa282b59e318c986627c0eeddee5c72","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.13.tgz","fileCount":8,"integrity":"sha512-HDf3Ihj7hoxC4c8P2wJWSeZMp4mBtg+BLAqv5I5ZVoe67KmOcEtFqRyI1DL1y65JH0elU46kZ/vv/0rc0+T4jQ==","signatures":[{"sig":"MEQCIFpTxLKCtCPwKhnj7wcGssM5xyykqukvlCB/76v4Fcd+AiBGQFhwr/GoVYUWh/oZCa4REetnrpiuXO4izzB2t5lCoA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846233},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"2b820acae11fa63aac233c14330689bb0b5b503e","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.13_1762874598550_0.18659338583846807","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"@utcp/mcp","version":"1.0.14","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.14","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"f1c370347a1b7f089361c5e6511b82e1891e30af","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.14.tgz","fileCount":8,"integrity":"sha512-1GE1P4m129JM0vwc00i9Cn+c7zJDmZrM7Kgux2duXTGwGE40AcXfN5FIbkLWclMIiBCqwR+eiNUxKFsednoMuQ==","signatures":[{"sig":"MEQCIAkbM1Qtnb10q7b0yaMMJvrBj2NYAjxbv+MOHaZqiBGxAiAX+KDlOw6OB4U0D20Jr4n5ijsP7CtpxuzUgTDC5wuFbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846213},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"89b3b6259100a6d043133f9ff9af3f33087ebe90","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.14_1762957282084_0.7824042104520605","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"@utcp/mcp","version":"1.0.15","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.15","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"52d123b82b90c9c4b8d9b9f34f3daa7ce3d81ac7","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.15.tgz","fileCount":8,"integrity":"sha512-vizYVnfBLgS8TBjPt6GZviXGOlGjoNxUUEPcZyrBL3CkZCmemrl6VpbbeCjGjBjupNxmsUV/YONNurKTD2LPOg==","signatures":[{"sig":"MEYCIQDCPhNebomjsBOh50Is/u7zUtHcuYV4GGvaCPl2YpGz7gIhAJeBw9HG5pRbElB54SCp4zR0mHwBIgWgQ42eCErS3FpE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":848431},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"89b3b6259100a6d043133f9ff9af3f33087ebe90","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.15_1762958545006_0.4622909118185681","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"@utcp/mcp","version":"1.0.16","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.16","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"4e0beb6a570c93c6312b49134dd3356281b8b70e","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.16.tgz","fileCount":8,"integrity":"sha512-dlyIfkb1LsSX/zwECPMNnj17JzKpYhhd4xUnSARy8Ob1rG6z3UWaDcLZrIRSNL0vAaP5lKUtJh1AXT1IWsqVoQ==","signatures":[{"sig":"MEYCIQDgKnar/SlkCp3MzeGZglx5zuaAHg/qs/mIS2RcSI2fbQIhAJ6j6B6msPfz58KM720IscVWr+HHtQbs1pIcoa8oHFi7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":844827},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"89b3b6259100a6d043133f9ff9af3f33087ebe90","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.16_1762960858117_0.6489945490103144","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"@utcp/mcp","version":"1.0.17","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.0.17","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"345b00b671f09d6f2cf723559a200a83bd05a179","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.0.17.tgz","fileCount":8,"integrity":"sha512-lQ3nlq56SM/uFu3vcACV/h8Gy4hdYziptr1h9DKB/AkRnNWtAVSq5TX78d0KkfAUkECpLLpwaXjOXmFfpNZqzw==","signatures":[{"sig":"MEUCIBR2Ec6VQjtHMGPJQiWGKtEzf+aG79XgcHe4G5O1VQ87AiEA6UdJa9+dKIPYnC9nCgaa7BpD2PFEM8gwtqp4+oQh+5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":854747},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"1f2c108d05595a335dcf1c2ba6321a58aaba4875","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.0.15","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.17_1764422712546_0.4734047499825449","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@utcp/mcp","version":"1.1.1","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.1","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"3a967a31a04d970fd73669780d0c06521e16ec16","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.1.tgz","fileCount":8,"integrity":"sha512-9EQ+bQH1sg4lIF0YUNGRIgKcUh35s3Eg2G9gmpIIvHKJq9/W514s12Cr/3aG60W8Tc9aW1S3rX/qqe7jCv1TOA==","signatures":[{"sig":"MEQCIA8gEEcNwq5RT6kfwn9G9duRUryU/3ThdYKMNppmcA/kAiB5wBZU+c8t3gXlejBh4lIOlpaXwKQ1i6rdMdUjZe3Wyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":857416},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"134a3eb8a8fbe86af1e3a64f08ca39b28ca1ba07","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.0","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.1_1765356809829_0.6133118248072804","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@utcp/mcp","version":"1.1.2","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.2","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"a163d84e36be627424f0d296f7893c104fb55530","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.2.tgz","fileCount":8,"integrity":"sha512-JFeLn3LEqR6TOYU1j0M/b5PLhs/+qjD0zGM2C0gYyVVIDZ0+8FCUZViHIqFnP56YZkp4OdDKFJMjJSohRdfpyQ==","signatures":[{"sig":"MEUCIQDuOll6JScCkKyPIme4qyPO+qbpN0MuLxhxUnqs3mSPvQIgGkAooKzFh2Peunu35ivZG/EVLsWpL659bVHi9DKEF6I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":859935},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"012d3fd0127ca84e018f930f75ba3197d6eaf12f","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.7","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.22.2","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.0","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.2_1777825214649_0.7309842079237425","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@utcp/mcp","version":"1.1.3","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.3","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"10030da1416e70fe008e819c265a19a639d435af","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.3.tgz","fileCount":8,"integrity":"sha512-+3E2n5GJrzJejIWgWarQifL8DJOtFcTr0gWd+4Y3kiih7VrrZdW/437UzgKanwTCUIEwT/w8HI8yL8c0t/yomg==","signatures":[{"sig":"MEUCIQCQZAWzfgtrIhNOjYAKq5PLujHY3cnMsZWlxAV7YdaMXwIgfYDkIxu66PGmXbc/h2XTC7jv1jvxkadOKT1GaEKeXu0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":875767},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ffa0d8e2ad2dcc9cf9b65bfbf5d5134e1b1c3047","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.7","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.22.2","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.3_1781738584627_0.6707757125300773","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@utcp/mcp","version":"1.1.4","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.4","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"acdc26869a89d1dc2a778cf99c2d3bbabdac0735","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.4.tgz","fileCount":8,"integrity":"sha512-cbBcrLSY2eDhnQyi0U4qdJ2gJGhlQmot22EetuKerXTfriV3MerHTPh/fXCyrukq3MP7fPy+FBFMcwWrV6NNaQ==","signatures":[{"sig":"MEQCIFOaNkBvTBCv7cahnQJbaHf1sb5E8WExtex4tpjMl88BAiB1z9AVd0SCOeqk4yOXb1dDakuTQHiMPp7m8tFTbspjnw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":857416},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8076ebf9d033a43fc4126c65741175b0bfc92c86","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.4_1787152891711_0.3871636952229667","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@utcp/mcp","version":"1.1.5","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.5","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"bde30de88c3bbcec6bedc3700ad98725e343b815","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.5.tgz","fileCount":8,"integrity":"sha512-mhCl+DapBD5Q0gvWPhd7E9HQX5kG4kkRvIuBXvoZtLuj/pzV69dHF7OyUiKl7Ldhp80tZo12bgh+2s0dKwDE7Q==","signatures":[{"sig":"MEUCIQCmdvGQQ3ohfgff/33pIkbCkB8t8rxyZ7A2uDGoPcSjUwIgPKRJpwQDGh3QOFu7YDn6WMiASlnCAehnbdvG7ZIHReM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":923677},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d35994ebdfa48d9b8b8f52ecaf06a58d4be7f81c","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.5_1787677899949_0.8882736190582965","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@utcp/mcp","version":"1.1.6","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.6","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"7fec4f31a980dcc5250ff2d2646247f522209acb","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.6.tgz","fileCount":8,"integrity":"sha512-MQ6Wq05cmRsVC2V9t8QRlqg+N4MHEijv6M9m8DjYuoIVDOdrTZTuMqWCx8ew5JRA37ZBlzfLbzWqUii6/AaZ5Q==","signatures":[{"sig":"MEYCIQCSqr7+7bZUNP/PhG2OflqM2/6GWHewv5MZ0iQrKRcxrQIhAKjFeqE+OscDmAsPCkC7Mj2+qykQYqb4NC09L1CzY5X1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":942953},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"44e0f7504ac5353a208b4691fc8bf2239b50b04e","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.6_1787690423979_0.1527108712090539","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@utcp/mcp","version":"1.1.7","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.7","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"eb0fa5e44725959eebae816f6d890d66ddd669b9","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.7.tgz","fileCount":8,"integrity":"sha512-JpfeH0jiXqLS06SPUixOlHlBBPZmO+ugUugi+hxhmDTdkSWmrvLeAusv6uFpkMINopOpX++DqQfZiWTOxRQsGw==","signatures":[{"sig":"MEUCICSW620u0ogw7OL6hDyClTZmm0NWR6mAyO2r3H81YWeyAiEA3uXCZD9Ux5xLCEyN0yF+eZmzY8tuMmkExhr6IU7Lpxo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFu+ISL32gOzOZ+9Kd2nZtg0fs1bjXip5jDfIy0V1DsvAiEA1H1hRwCfuDgb6Cqg3bxXD0mnkq31rB7pjxjqQcH8Pc4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":988917},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"02b7556d33f68704f37c4e4a88680e7f2e802a01","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.7_1788630014867_0.14962778514233288","host":"s3://npm-registry-packages-npm-production"}},"1.1.8":{"name":"@utcp/mcp","version":"1.1.8","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","_id":"@utcp/mcp@1.1.8","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"b403517798b09a93c97ee699b7fef10d237e7174","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.1.8.tgz","fileCount":8,"integrity":"sha512-M9KaP/GBWhsZLir5j35VoCd+1GIRDWfjRMI4Ly7FcYWYFORAgShRrazPdfWgGFNFbLMb8WXAIhvjaPiEFR9kNA==","signatures":[{"sig":"MEUCIQCQYNZKkuodUBVX7jqfz6ZHSKko8EfcjvqMpBf0YLYGQgIgOUsO4H2zVhCGF4W1ZH26ciPwRuh1CTM5r3mq3dygiOI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDfRHckCPPut0kRkrFtHuthK06/NIVnSxkzpt6vRwiMEQIgedU6VUMDW9e0Sr3x3/j4QDgEFbf7YuKLaAQlnZH3BD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1003963},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b862291632ed2cd9ab090702a74bd50a046b28be","scripts":{"build":"tsup"},"_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.1.1","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"tmp":"tmp/mcp_1.1.8_1789483839434_0.20905449410152022","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"_id":"@utcp/mcp@1.2.0","bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"dist":{"shasum":"ca8bfca76c3c8143e4881e6f85c378fff7138fb9","tarball":"https://registry.npmjs.org/@utcp/mcp/-/mcp-1.2.0.tgz","fileCount":8,"integrity":"sha512-Adt6MS8pW9Q5LyXw6VI8JeOqBqCazQCnV2ueb2OqBVOfeHzFSQj0RBZ/AaXkUgcd5eh4gy4P/gehW6dAoRNrng==","signatures":[{"sig":"MEUCIQCZqkR8892S287MiSNG2SuhZSu4FXFzlrnpPsRO0BiTaAIgA/6zn2x+Nt1ZJBcFSpAsf53l9gOmhzqS4yxllSfLTYY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDdwnxzGJQ94NeFuTkqedYol6Bao6Rkv2uy4xgz1WHEugIgahuyl7+wACfdSOJvLqQxGZOowZLVAmQYZ7ycjgGMHRs="}],"unpackedSize":1005589},"main":"dist/index.cjs","name":"@utcp/mcp","type":"module","types":"dist/index.d.ts","author":{"name":"UTCP Contributors"},"module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"aa60b789c96181548d5f62fd110e2423ad70324c","license":"MPL-2.0","scripts":{"build":"tsup"},"version":"1.2.0","_npmUser":{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"},"homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"_npmVersion":"10.9.2","description":"Model Context Protocol integration for UTCP","directories":{},"maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"_nodeVersion":"22.17.1","dependencies":{"axios":"^1.11.0","@utcp/sdk":"^1.2.0","@modelcontextprotocol/sdk":"^1.17.4","@apidevtools/json-schema-ref-parser":"^15.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"latest","@types/bun":"latest","typescript":"^5.9.2","@types/json-schema":"^7.0.15","zod-to-json-schema":"^3.24.6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_1.2.0_1789502007776_0.9822049010962528"}}},"time":{"created":"2025-10-18T21:59:09.142Z","modified":"2026-09-15T19:53:28.248Z","1.0.0":"2025-10-18T21:59:09.419Z","1.0.1":"2025-10-18T23:19:45.654Z","1.0.2":"2025-10-19T11:34:49.812Z","1.0.3":"2025-10-19T11:45:17.051Z","1.0.4":"2025-10-19T12:30:14.430Z","1.0.6":"2025-10-22T08:20:37.426Z","1.0.11":"2025-10-23T16:27:57.256Z","1.0.12":"2025-10-24T16:20:55.604Z","1.0.13":"2025-11-11T15:23:18.824Z","1.0.14":"2025-11-12T14:21:22.272Z","1.0.15":"2025-11-12T14:42:25.237Z","1.0.16":"2025-11-12T15:20:58.340Z","1.0.17":"2025-11-29T13:25:12.775Z","1.1.1":"2025-12-10T08:53:30.009Z","1.1.2":"2026-05-03T16:20:14.844Z","1.1.3":"2026-06-17T23:23:04.825Z","1.1.4":"2026-08-19T15:21:31.931Z","1.1.5":"2026-08-25T17:11:40.083Z","1.1.6":"2026-08-25T20:40:24.157Z","1.1.7":"2026-09-05T17:40:14.965Z","1.1.8":"2026-09-15T14:50:39.563Z","1.2.0":"2026-09-15T19:53:28.087Z"},"bugs":{"url":"https://github.com/universal-tool-calling-protocol/typescript-utcp/issues"},"author":{"name":"UTCP Contributors"},"license":"MPL-2.0","homepage":"https://github.com/universal-tool-calling-protocol/typescript-utcp#readme","keywords":["utcp","universal-tool-calling-protocol","tools","api","typescript","tool calling","mcp","agent","ai","llm","modelcontextprotocol"],"repository":{"url":"git+https://github.com/universal-tool-calling-protocol/typescript-utcp.git","type":"git","directory":"packages/mcp"},"description":"Model Context Protocol integration for UTCP","maintainers":[{"name":"razvan.radulescu","email":"razviradulescu@gmail.com"}],"readme":"# @utcp/mcp: Model Context Protocol (MCP) Communication Protocol Plugin for UTCP\r\n\r\nThe `@utcp/mcp` package enables the `UtcpClient` to interact with tools defined and served via the Model Context Protocol (MCP). This plugin provides interoperability with existing MCP servers, supporting both `stdio` (local process) and `http` (streamable HTTP) transports, with enhanced session management and resilience.\r\n\r\n## Features\r\n\r\n*   **Automatic Plugin Registration**: Registers automatically when imported—no manual setup required.\r\n*   **FastMCP 2.0+ Compatibility**: Automatically resolves JSON Schema `$defs` references, ensuring compatibility with modern MCP servers built on FastMCP 2.0+.\r\n*   **MCP `CallTemplate`**: Defines the configuration for connecting to one or more MCP servers (`McpCallTemplate`), including:\r\n    *   Transport type (`stdio` or `http`)\r\n    *   Optional OAuth2 authentication for HTTP-based servers\r\n    *   `register_resources_as_tools`: Flag to expose MCP server resources as callable tools\r\n    *   Environment variables support for stdio servers\r\n*   **`McpCommunicationProtocol`**: Implements the `CommunicationProtocol` interface for MCP interactions:\r\n    *   **Persistent Session Management**: Establishes and reuses client sessions with MCP servers (via subprocess for stdio, or HTTP client for remote), drastically improving performance and reducing overhead for repeated tool calls.\r\n    *   **Automatic Session Recovery**: Intelligently detects and recovers from transient connection issues (e.g., network errors, broken pipes, crashed subprocesses) by automatically re-establishing sessions and retrying operations.\r\n    *   **Tool Discovery**: Connects to configured MCP servers and retrieves their list of tools using the MCP SDK's `listTools()` command, mapping them to UTCP `Tool` definitions.\r\n    *   **Tool Execution**: Invokes tools on MCP servers using the MCP SDK's `callTool()`, translating arguments and processing raw MCP results into a unified format.\r\n    *   **Transport Support**: Seamlessly handles both `stdio` (spawning a local process) and `http` (connecting to a remote streamable HTTP MCP server) via the `@modelcontextprotocol/sdk` client.\r\n    *   **Authentication Support**: Supports `OAuth2Auth` for HTTP-based MCP servers, including token caching and automatic refresh.\r\n    *   **Result Processing**: Intelligently adapts raw MCP tool results (`structuredContent` when the server sends it, otherwise `text` or `json` content; the legacy non-standard `structured_output` field is still accepted) into a more usable format for the UTCP client.\r\n\r\n## Installation\r\n\r\n```bash\r\nbun add @utcp/mcp @utcp/sdk\r\n\r\n# Or using npm\r\nnpm install @utcp/mcp @utcp/sdk\r\n```\r\n\r\nNote: `@utcp/sdk` is a peer dependency. The MCP SDK dependencies (`@modelcontextprotocol/sdk` and `axios`) are included automatically.\r\n\r\n## Usage\r\n\r\nThe MCP plugin registers automatically when you import it—no manual registration needed. Simply import from `@utcp/mcp` to enable MCP support.\r\n\r\n```typescript\r\n// From your application's entry point\r\n\r\nimport { UtcpClient } from '@utcp/sdk';\r\nimport { McpCallTemplateSerializer } from '@utcp/mcp';\r\nimport * as path from 'path';\r\n\r\nasync function main() {\r\n  // Path to your mock MCP server script (e.g., from tests/mock_mcp_server.ts)\r\n  const mockMcpStdioServerPath = path.resolve(__dirname, '../../packages/mcp/tests/mock_mcp_server.ts');\r\n  const mockMcpHttpServerPath = path.resolve(__dirname, '../../packages/mcp/tests/mock_http_mcp_server.ts');\r\n\r\n  // Define a CallTemplate to connect to MCP servers\r\n  const serializer = new McpCallTemplateSerializer();\r\n  const mcpCallTemplate = serializer.validateDict({\r\n    name: 'my_mcp_servers', // A single manual can manage multiple MCP servers\r\n    call_template_type: 'mcp',\r\n    config: {\r\n      mcpServers: {\r\n        'local-stdio-server': { // Name for your stdio server\r\n          transport: 'stdio',\r\n          command: 'bun', // Command to run the server script\r\n          args: ['run', mockMcpStdioServerPath], // Arguments to the command\r\n          cwd: path.dirname(mockMcpStdioServerPath), // Optional: working directory for the subprocess\r\n          env: { // Optional: environment variables for the subprocess\r\n            MY_ENV_VAR: 'value',\r\n            API_KEY: '${MY_API_KEY}' // Can use variable substitution\r\n          }\r\n        },\r\n        'remote-http-server': { // Name for your HTTP server\r\n          transport: 'http',\r\n          url: 'http://localhost:9999/mcp', // URL of your MCP HTTP server\r\n          headers: { // Optional: custom HTTP headers\r\n            'X-Custom-Header': 'value'\r\n          },\r\n          timeout: 30, // Optional: HTTP request timeout in seconds (default: 30)\r\n          sse_read_timeout: 300, // Optional: SSE read timeout in seconds (default: 300)\r\n          terminate_on_close: true // Optional: terminate connection on close (default: true)\r\n        },\r\n        // Example with OAuth2 (uncomment and configure if needed)\r\n        // 'secure-http-server': {\r\n        //   transport: 'http',\r\n        //   url: 'https://secure.mcp.example.com/mcp',\r\n        // },\r\n      },\r\n    },\r\n    // Top-level auth applies to HTTP transports if specified.\r\n    // auth: { auth_type: 'oauth2', token_url: '...', client_id: '${SECURE_MCP_CLIENT_ID}', client_secret: '${SECURE_MCP_CLIENT_SECRET}' },\r\n    \r\n    // Optional: Register MCP resources as callable tools (default: false)\r\n    register_resources_as_tools: false\r\n  });\r\n\r\n  const client = await UtcpClient.create(process.cwd(), {\r\n    manual_call_templates: [mcpCallTemplate], // Register the MCP manual at client startup\r\n    variables: {\r\n      my__mcp__servers_MY_API_KEY: 'your-api-key-value', // Namespaced variable\r\n      // my__mcp__servers_SECURE_MCP_CLIENT_ID: 'your-client-id',\r\n      // my__mcp__servers_SECURE_MCP_CLIENT_SECRET: 'your-client-secret'\r\n    }\r\n  });\r\n\r\n  console.log('MCP Plugin active. Discovering tools...');\r\n\r\n  // Example: Search for tools on the MCP server\r\n  const stdioTools = await client.searchTools('stdio'); // Will find tools prefixed with 'local-stdio-server'\r\n  console.log('Found MCP (stdio) tools:', stdioTools.map(t => t.name));\r\n\r\n  const httpTools = await client.searchTools('http'); // Will find tools prefixed with 'remote-http-server'\r\n  console.log('Found MCP (http) tools:', httpTools.map(t => t.name));\r\n\r\n  // Example: Call a 'echo' tool on the stdio server (expecting structured JSON)\r\n  try {\r\n    const echoResult = await client.callTool('my_mcp_servers.local-stdio-server.echo', { message: 'Hello from stdio!' });\r\n    console.log('MCP stdio echo tool result:', echoResult);\r\n  } catch (error) {\r\n    console.error('Error calling MCP stdio echo tool:', error);\r\n  }\r\n\r\n  // Example: Call an 'add' tool on the http server (expecting a primitive number)\r\n  try {\r\n    const addResult = await client.callTool('my_mcp_servers.remote-http-server.add', { a: 10, b: 20 });\r\n    console.log('MCP http add tool result:', addResult);\r\n  } catch (error) {\r\n    console.error('Error calling MCP http add tool:', error);\r\n  }\r\n\r\n  await client.close(); // Important: Cleans up all active MCP client sessions and subprocesses\r\n}\r\n\r\nmain().catch(console.error);\r\n```\r\n\r\n## Advanced Configuration\r\n\r\n### Environment Variables for Stdio Servers\r\n\r\nYou can pass environment variables to stdio-based MCP servers using the `env` field. These support UTCP variable substitution:\r\n\r\n```typescript\r\n{\r\n  transport: 'stdio',\r\n  command: 'node',\r\n  args: ['server.js'],\r\n  env: {\r\n    API_KEY: '${MY_API_KEY}',  // Will resolve from namespaced variable\r\n    LOG_LEVEL: 'debug',\r\n    NODE_ENV: 'production'\r\n  }\r\n}\r\n\r\n// When creating the client, use namespaced variables:\r\nconst client = await UtcpClient.create(process.cwd(), {\r\n  manual_call_templates: [mcpTemplate],\r\n  variables: {\r\n    my__manual__name_MY_API_KEY: 'your-api-key'  // Note: manual_name -> my__manual__name_\r\n  }\r\n});\r\n```\r\n\r\n### Child Process stderr\r\n\r\nStdio MCP servers often write banners, telemetry notices and auth chatter to stderr, multiplied by every server you federate. `@utcp/mcp` therefore discards the child's stderr by default. To see it while debugging a server that fails to start, opt back in for the host process:\r\n\r\n```bash\r\nUTCP_MCP_CHILD_STDERR=inherit node your-app.js\r\n```\r\n\r\nAny other value, or leaving the variable unset, keeps stderr suppressed. When a stdio server fails to connect, the error log reminds you of this switch.\r\n\r\n### HTTP Server Configuration\r\n\r\nHTTP-based MCP servers support additional configuration options:\r\n\r\n```typescript\r\n{\r\n  transport: 'http',\r\n  url: 'https://mcp-server.example.com/mcp',\r\n  headers: {\r\n    'X-Custom-Header': 'value',\r\n    'User-Agent': 'MyApp/1.0'\r\n  },\r\n  timeout: 60,              // Request timeout in seconds\r\n  sse_read_timeout: 600,    // SSE read timeout in seconds\r\n  terminate_on_close: true  // Terminate connection when client closes\r\n}\r\n```\r\n\r\n### OAuth2 Authentication\r\n\r\nFor HTTP servers requiring authentication, use the top-level `auth` field:\r\n\r\n```typescript\r\nconst serializer = new McpCallTemplateSerializer();\r\nconst secureTemplate = serializer.validateDict({\r\n  name: 'secure_mcp_servers',\r\n  call_template_type: 'mcp',\r\n  config: { /* ... */ },\r\n  auth: {\r\n    auth_type: 'oauth2',\r\n    token_url: 'https://auth.example.com/oauth/token',\r\n    client_id: '${MCP_CLIENT_ID}',\r\n    client_secret: '${MCP_CLIENT_SECRET}',\r\n    scope: 'mcp.tools.read mcp.tools.execute'\r\n  }\r\n});\r\n\r\n// Configure client with namespaced variables\r\nconst client = await UtcpClient.create(process.cwd(), {\r\n  manual_call_templates: [secureTemplate],\r\n  variables: {\r\n    secure__mcp__servers_MCP_CLIENT_ID: 'your-client-id',\r\n    secure__mcp__servers_MCP_CLIENT_SECRET: 'your-client-secret'\r\n  }\r\n});\r\n```\r\n\r\nThe plugin automatically handles token caching and refresh.\r\n\r\n### Resource Registration\r\n\r\nMCP servers can expose resources (files, data sources, etc.) alongside tools. To register these resources as callable tools, set `register_resources_as_tools` to `true`:\r\n\r\n```typescript\r\n{\r\n  name: 'my_mcp_servers',\r\n  call_template_type: 'mcp',\r\n  config: { /* ... */ },\r\n  register_resources_as_tools: true  // Exposes server resources as tools\r\n}\r\n```\r\n\r\n## FastMCP Compatibility\r\n\r\nStarting with version 1.0.17, this plugin automatically handles JSON Schema `$defs` references used by FastMCP 2.0+ servers. This resolves the issue where tool discovery would fail with:\r\n\r\n```\r\nMissingRefError: can't resolve reference #/$defs/...\r\n```\r\n\r\n**How it works:**\r\n- When tools are discovered from MCP servers, their input and output schemas are automatically dereferenced\r\n- `$defs` references are resolved and inlined into the schema\r\n- This process is transparent and requires no configuration changes\r\n- If dereferencing fails for any reason, the original schema is used as a fallback\r\n\r\nThis ensures seamless integration with:\r\n- `basic-memory` and other FastMCP-based servers\r\n- Any MCP server using modern JSON Schema draft-2020-12 features\r\n- Legacy MCP servers (which continue to work as before)\r\n\r\n## Tool Naming Convention\r\n\r\nTools discovered from MCP servers follow the naming pattern:\r\n\r\n```\r\n{manual_name}.{server_name}.{tool_name}\r\n```\r\n\r\nFor example:\r\n- Manual name: `my_mcp_servers`\r\n- Server name: `local-stdio-server`\r\n- Tool name: `echo`\r\n- **Full tool name**: `my_mcp_servers.local-stdio-server.echo`\r\n\r\n## Session Management\r\n\r\nThe MCP plugin maintains persistent sessions with each configured server:\r\n\r\n- **Session Reuse**: Connections are established once and reused for multiple tool calls, significantly improving performance.\r\n- **Automatic Recovery**: If a session fails (network error, subprocess crash, etc.), the plugin automatically:\r\n  1. Detects the failure\r\n  2. Cleans up the broken session\r\n  3. Establishes a new session\r\n  4. Retries the operation once\r\n\r\nThis resilience mechanism handles common transient issues without requiring manual intervention.\r\n\r\n## Error Handling\r\n\r\nThe plugin provides comprehensive error handling:\r\n\r\n- Connection failures are logged and retried once\r\n- Invalid tool names produce descriptive error messages\r\n- OAuth2 token fetch failures include detailed error context\r\n- MCP server errors are properly propagated to the caller\r\n\r\n## API Reference\r\n\r\n### McpCallTemplate\r\n\r\n```typescript\r\ninterface McpCallTemplate {\r\n  name?: string;\r\n  call_template_type: 'mcp';\r\n  config: McpConfig;\r\n  auth?: OAuth2Auth;\r\n  register_resources_as_tools?: boolean;\r\n}\r\n```\r\n\r\n### McpStdioServer\r\n\r\n```typescript\r\ninterface McpStdioServer {\r\n  transport: 'stdio';\r\n  command: string;\r\n  args?: string[];\r\n  cwd?: string;\r\n  env?: Record<string, string>;\r\n}\r\n```\r\n\r\n### McpHttpServer\r\n\r\n```typescript\r\ninterface McpHttpServer {\r\n  transport: 'http';\r\n  url: string;\r\n  headers?: Record<string, string>;\r\n  timeout?: number;              // Default: 30 seconds\r\n  sse_read_timeout?: number;     // Default: 300 seconds\r\n  terminate_on_close?: boolean;  // Default: true\r\n}\r\n```\r\n\r\n## Best Practices\r\n\r\n1. **Close clients properly**: Always call `await client.close()` to clean up MCP sessions and subprocesses.\r\n2. **Use variable substitution**: Store sensitive credentials in environment variables and reference them with `${VAR_NAME}`.\r\n3. **Configure timeouts**: Adjust `timeout` and `sse_read_timeout` based on your server's response characteristics.\r\n4. **Server naming**: Use descriptive server names as they become part of the tool naming hierarchy.\r\n5. **Error handling**: Wrap tool calls in try-catch blocks for robust error handling.\r\n\r\n## License\r\n\r\nThis package is part of the UTCP project. See the main repository for license information.","readmeFilename":"README.md"}