@mcp-ts/sdk 1.3.6 → 1.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +398 -404
  3. package/dist/adapters/agui-adapter.d.mts +1 -1
  4. package/dist/adapters/agui-adapter.d.ts +1 -1
  5. package/dist/adapters/agui-adapter.js +2 -2
  6. package/dist/adapters/agui-adapter.js.map +1 -1
  7. package/dist/adapters/agui-adapter.mjs +2 -2
  8. package/dist/adapters/agui-adapter.mjs.map +1 -1
  9. package/dist/adapters/agui-middleware.d.mts +1 -1
  10. package/dist/adapters/agui-middleware.d.ts +1 -1
  11. package/dist/adapters/agui-middleware.js.map +1 -1
  12. package/dist/adapters/agui-middleware.mjs.map +1 -1
  13. package/dist/adapters/ai-adapter.d.mts +1 -1
  14. package/dist/adapters/ai-adapter.d.ts +1 -1
  15. package/dist/adapters/ai-adapter.js +1 -1
  16. package/dist/adapters/ai-adapter.js.map +1 -1
  17. package/dist/adapters/ai-adapter.mjs +1 -1
  18. package/dist/adapters/ai-adapter.mjs.map +1 -1
  19. package/dist/adapters/langchain-adapter.d.mts +1 -1
  20. package/dist/adapters/langchain-adapter.d.ts +1 -1
  21. package/dist/adapters/langchain-adapter.js +1 -1
  22. package/dist/adapters/langchain-adapter.js.map +1 -1
  23. package/dist/adapters/langchain-adapter.mjs +1 -1
  24. package/dist/adapters/langchain-adapter.mjs.map +1 -1
  25. package/dist/adapters/mastra-adapter.d.mts +1 -1
  26. package/dist/adapters/mastra-adapter.d.ts +1 -1
  27. package/dist/adapters/mastra-adapter.js +1 -1
  28. package/dist/adapters/mastra-adapter.js.map +1 -1
  29. package/dist/adapters/mastra-adapter.mjs +1 -1
  30. package/dist/adapters/mastra-adapter.mjs.map +1 -1
  31. package/dist/bin/mcp-ts.js +0 -0
  32. package/dist/bin/mcp-ts.js.map +1 -1
  33. package/dist/bin/mcp-ts.mjs +0 -0
  34. package/dist/bin/mcp-ts.mjs.map +1 -1
  35. package/dist/client/index.js.map +1 -1
  36. package/dist/client/index.mjs.map +1 -1
  37. package/dist/client/react.d.mts +2 -2
  38. package/dist/client/react.d.ts +2 -2
  39. package/dist/client/react.js +25 -2
  40. package/dist/client/react.js.map +1 -1
  41. package/dist/client/react.mjs +26 -3
  42. package/dist/client/react.mjs.map +1 -1
  43. package/dist/client/vue.js.map +1 -1
  44. package/dist/client/vue.mjs.map +1 -1
  45. package/dist/index.d.mts +1 -1
  46. package/dist/index.d.ts +1 -1
  47. package/dist/index.js +134 -71
  48. package/dist/index.js.map +1 -1
  49. package/dist/index.mjs +134 -71
  50. package/dist/index.mjs.map +1 -1
  51. package/dist/{multi-session-client-BYLarghq.d.ts → multi-session-client-CHE8QpVE.d.ts} +75 -5
  52. package/dist/{multi-session-client-CzhMkE0k.d.mts → multi-session-client-CQsRbxYI.d.mts} +75 -5
  53. package/dist/server/index.d.mts +1 -1
  54. package/dist/server/index.d.ts +1 -1
  55. package/dist/server/index.js +134 -71
  56. package/dist/server/index.js.map +1 -1
  57. package/dist/server/index.mjs +134 -71
  58. package/dist/server/index.mjs.map +1 -1
  59. package/dist/shared/index.js +10 -2
  60. package/dist/shared/index.js.map +1 -1
  61. package/dist/shared/index.mjs +10 -2
  62. package/dist/shared/index.mjs.map +1 -1
  63. package/package.json +185 -185
  64. package/src/adapters/agui-adapter.ts +222 -222
  65. package/src/adapters/agui-middleware.ts +382 -382
  66. package/src/adapters/ai-adapter.ts +115 -115
  67. package/src/adapters/langchain-adapter.ts +127 -127
  68. package/src/adapters/mastra-adapter.ts +126 -126
  69. package/src/bin/mcp-ts.ts +102 -102
  70. package/src/client/core/app-host.ts +417 -417
  71. package/src/client/core/sse-client.ts +371 -371
  72. package/src/client/core/types.ts +31 -31
  73. package/src/client/index.ts +27 -27
  74. package/src/client/react/index.ts +16 -16
  75. package/src/client/react/use-app-host.ts +73 -73
  76. package/src/client/react/use-mcp-apps.tsx +247 -214
  77. package/src/client/react/use-mcp.ts +641 -641
  78. package/src/client/vue/index.ts +10 -10
  79. package/src/client/vue/use-mcp.ts +617 -617
  80. package/src/index.ts +11 -11
  81. package/src/server/handlers/nextjs-handler.ts +204 -204
  82. package/src/server/handlers/sse-handler.ts +631 -631
  83. package/src/server/index.ts +57 -57
  84. package/src/server/mcp/multi-session-client.ts +228 -132
  85. package/src/server/mcp/oauth-client.ts +1188 -1188
  86. package/src/server/mcp/storage-oauth-provider.ts +272 -272
  87. package/src/server/storage/file-backend.ts +157 -170
  88. package/src/server/storage/index.ts +176 -175
  89. package/src/server/storage/memory-backend.ts +123 -136
  90. package/src/server/storage/redis-backend.ts +276 -289
  91. package/src/server/storage/redis.ts +160 -160
  92. package/src/server/storage/sqlite-backend.ts +182 -186
  93. package/src/server/storage/supabase-backend.ts +228 -227
  94. package/src/server/storage/types.ts +116 -116
  95. package/src/shared/constants.ts +29 -29
  96. package/src/shared/errors.ts +133 -133
  97. package/src/shared/event-routing.ts +28 -28
  98. package/src/shared/events.ts +180 -180
  99. package/src/shared/index.ts +75 -75
  100. package/src/shared/tool-utils.ts +61 -61
  101. package/src/shared/types.ts +282 -282
  102. package/src/shared/utils.ts +38 -16
  103. package/supabase/migrations/20260330195700_install_mcp_sessions.sql +84 -84
package/package.json CHANGED
@@ -1,185 +1,185 @@
1
- {
2
- "name": "@mcp-ts/sdk",
3
- "version": "1.3.6",
4
- "publishConfig": {
5
- "access": "public"
6
- },
7
- "description": "A Lightweight MCP (Model Context Protocol) client library for JavaScript applications, supporting multiple storage backends (Memory, File, Redis, Supabase) and real-time SSE support.",
8
- "main": "./dist/index.js",
9
- "module": "./dist/index.mjs",
10
- "types": "./dist/index.d.ts",
11
- "bin": {
12
- "mcp-ts": "./dist/bin/mcp-ts.js"
13
- },
14
- "exports": {
15
- ".": {
16
- "types": "./dist/index.d.ts",
17
- "import": "./dist/index.mjs",
18
- "require": "./dist/index.js"
19
- },
20
- "./server": {
21
- "types": "./dist/server/index.d.ts",
22
- "import": "./dist/server/index.mjs",
23
- "require": "./dist/server/index.js"
24
- },
25
- "./client": {
26
- "types": "./dist/client/index.d.ts",
27
- "import": "./dist/client/index.mjs",
28
- "require": "./dist/client/index.js"
29
- },
30
- "./client/react": {
31
- "types": "./dist/client/react.d.ts",
32
- "import": "./dist/client/react.mjs",
33
- "require": "./dist/client/react.js"
34
- },
35
- "./client/vue": {
36
- "types": "./dist/client/vue.d.ts",
37
- "import": "./dist/client/vue.mjs",
38
- "require": "./dist/client/vue.js"
39
- },
40
- "./shared": {
41
- "types": "./dist/shared/index.d.ts",
42
- "import": "./dist/shared/index.mjs",
43
- "require": "./dist/shared/index.js"
44
- },
45
- "./adapters/ai": {
46
- "types": "./dist/adapters/ai-adapter.d.ts",
47
- "import": "./dist/adapters/ai-adapter.mjs",
48
- "require": "./dist/adapters/ai-adapter.js"
49
- },
50
- "./adapters/langchain": {
51
- "types": "./dist/adapters/langchain-adapter.d.ts",
52
- "import": "./dist/adapters/langchain-adapter.mjs",
53
- "require": "./dist/adapters/langchain-adapter.js"
54
- },
55
- "./adapters/mastra": {
56
- "types": "./dist/adapters/mastra-adapter.d.ts",
57
- "import": "./dist/adapters/mastra-adapter.mjs",
58
- "require": "./dist/adapters/mastra-adapter.js"
59
- },
60
- "./adapters/agui-adapter": {
61
- "types": "./dist/adapters/agui-adapter.d.ts",
62
- "import": "./dist/adapters/agui-adapter.mjs",
63
- "require": "./dist/adapters/agui-adapter.js"
64
- },
65
- "./adapters/agui-middleware": {
66
- "types": "./dist/adapters/agui-middleware.d.ts",
67
- "import": "./dist/adapters/agui-middleware.mjs",
68
- "require": "./dist/adapters/agui-middleware.js"
69
- }
70
- },
71
- "files": [
72
- "dist",
73
- "src",
74
- "supabase",
75
- "README.md",
76
- "LICENSE"
77
- ],
78
- "scripts": {
79
- "build": "tsup",
80
- "dev": "tsup --watch",
81
- "type-check": "tsc --noEmit",
82
- "clean": "rimraf dist",
83
- "prepublishOnly": "npm run clean && npm run build",
84
- "test": "npx playwright test",
85
- "test:ui": "npx playwright test --ui",
86
- "test:debug": "npx playwright test --debug",
87
- "supabase:push": "supabase db push",
88
- "supabase:reset": "supabase db reset",
89
- "supabase:status": "supabase status"
90
- },
91
- "keywords": [
92
- "mcp",
93
- "model-context-protocol",
94
- "oauth",
95
- "redis",
96
- "sse",
97
- "server-sent-events",
98
- "serverless",
99
- "react",
100
- "hook",
101
- "anthropic",
102
- "claude"
103
- ],
104
- "author": "MCP Assistant Contributors",
105
- "license": "MIT",
106
- "repository": {
107
- "type": "git",
108
- "url": "git+https://github.com/zonlabs/mcp-ts.git"
109
- },
110
- "bugs": {
111
- "url": "https://github.com/zonlabs/mcp-ts/issues"
112
- },
113
- "homepage": "https://github.com/zonlabs/mcp-ts#readme",
114
- "peerDependencies": {
115
- "@ag-ui/client": ">=0.0.40",
116
- "@langchain/core": "^0.3.0",
117
- "ai": "^6.0.0",
118
- "better-sqlite3": "^12.0.0",
119
- "ioredis": "^5.0.0",
120
- "react": ">=18.0.0",
121
- "rxjs": ">=7.0.0",
122
- "zod": "^3.23.0",
123
- "@supabase/supabase-js": "^2.0.0"
124
- },
125
- "peerDependenciesMeta": {
126
- "react": {
127
- "optional": true
128
- },
129
- "ioredis": {
130
- "optional": true
131
- },
132
- "@langchain/core": {
133
- "optional": true
134
- },
135
- "zod": {
136
- "optional": true
137
- },
138
- "ai": {
139
- "optional": true
140
- },
141
- "@ag-ui/client": {
142
- "optional": true
143
- },
144
- "rxjs": {
145
- "optional": true
146
- },
147
- "better-sqlite3": {
148
- "optional": true
149
- },
150
- "@supabase/supabase-js": {
151
- "optional": true
152
- }
153
- },
154
- "dependencies": {
155
- "@modelcontextprotocol/ext-apps": "^1.0.1",
156
- "@modelcontextprotocol/sdk": "^1.25.3",
157
- "json-schema": "^0.4.0",
158
- "json-schema-to-zod": "^2.7.0",
159
- "nanoid": "^5.1.6"
160
- },
161
- "devDependencies": {
162
- "@ag-ui/client": "^0.0.42",
163
- "@langchain/core": "^0.3.33",
164
- "@playwright/test": "^1.58.0",
165
- "@types/better-sqlite3": "^7.6.13",
166
- "@types/json-schema": "^7.0.15",
167
- "@types/node": "^25.0.10",
168
- "@types/react": "^18.3.18",
169
- "ai": "^6.0.49",
170
- "better-sqlite3": "^12.6.2",
171
- "ioredis": "^5.9.2",
172
- "ioredis-mock": "^8.13.1",
173
- "playwright": "^1.58.0",
174
- "react": "^18.3.1",
175
- "rimraf": "^6.1.2",
176
- "tsup": "^8.5.1",
177
- "typescript": "^5.9.3",
178
- "vue": "^3.5.27",
179
- "zod": "^3.24.1",
180
- "@supabase/supabase-js": "^2.48.0"
181
- },
182
- "engines": {
183
- "node": ">=18.0.0"
184
- }
185
- }
1
+ {
2
+ "name": "@mcp-ts/sdk",
3
+ "version": "1.3.9",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "description": "A Lightweight MCP (Model Context Protocol) client library for JavaScript applications, supporting multiple storage backends (Memory, File, Redis, Supabase) and designed for both server and client environments.",
8
+ "main": "./dist/index.js",
9
+ "module": "./dist/index.mjs",
10
+ "types": "./dist/index.d.ts",
11
+ "bin": {
12
+ "mcp-ts": "./dist/bin/mcp-ts.js"
13
+ },
14
+ "exports": {
15
+ ".": {
16
+ "types": "./dist/index.d.ts",
17
+ "import": "./dist/index.mjs",
18
+ "require": "./dist/index.js"
19
+ },
20
+ "./server": {
21
+ "types": "./dist/server/index.d.ts",
22
+ "import": "./dist/server/index.mjs",
23
+ "require": "./dist/server/index.js"
24
+ },
25
+ "./client": {
26
+ "types": "./dist/client/index.d.ts",
27
+ "import": "./dist/client/index.mjs",
28
+ "require": "./dist/client/index.js"
29
+ },
30
+ "./client/react": {
31
+ "types": "./dist/client/react.d.ts",
32
+ "import": "./dist/client/react.mjs",
33
+ "require": "./dist/client/react.js"
34
+ },
35
+ "./client/vue": {
36
+ "types": "./dist/client/vue.d.ts",
37
+ "import": "./dist/client/vue.mjs",
38
+ "require": "./dist/client/vue.js"
39
+ },
40
+ "./shared": {
41
+ "types": "./dist/shared/index.d.ts",
42
+ "import": "./dist/shared/index.mjs",
43
+ "require": "./dist/shared/index.js"
44
+ },
45
+ "./adapters/ai": {
46
+ "types": "./dist/adapters/ai-adapter.d.ts",
47
+ "import": "./dist/adapters/ai-adapter.mjs",
48
+ "require": "./dist/adapters/ai-adapter.js"
49
+ },
50
+ "./adapters/langchain": {
51
+ "types": "./dist/adapters/langchain-adapter.d.ts",
52
+ "import": "./dist/adapters/langchain-adapter.mjs",
53
+ "require": "./dist/adapters/langchain-adapter.js"
54
+ },
55
+ "./adapters/mastra": {
56
+ "types": "./dist/adapters/mastra-adapter.d.ts",
57
+ "import": "./dist/adapters/mastra-adapter.mjs",
58
+ "require": "./dist/adapters/mastra-adapter.js"
59
+ },
60
+ "./adapters/agui-adapter": {
61
+ "types": "./dist/adapters/agui-adapter.d.ts",
62
+ "import": "./dist/adapters/agui-adapter.mjs",
63
+ "require": "./dist/adapters/agui-adapter.js"
64
+ },
65
+ "./adapters/agui-middleware": {
66
+ "types": "./dist/adapters/agui-middleware.d.ts",
67
+ "import": "./dist/adapters/agui-middleware.mjs",
68
+ "require": "./dist/adapters/agui-middleware.js"
69
+ }
70
+ },
71
+ "files": [
72
+ "dist",
73
+ "src",
74
+ "supabase",
75
+ "README.md",
76
+ "LICENSE"
77
+ ],
78
+ "scripts": {
79
+ "build": "tsup",
80
+ "dev": "tsup --watch",
81
+ "type-check": "tsc --noEmit",
82
+ "clean": "rimraf dist",
83
+ "prepublishOnly": "npm run clean && npm run build",
84
+ "test": "npx playwright test",
85
+ "test:ui": "npx playwright test --ui",
86
+ "test:debug": "npx playwright test --debug",
87
+ "supabase:push": "supabase db push",
88
+ "supabase:reset": "supabase db reset",
89
+ "supabase:status": "supabase status"
90
+ },
91
+ "keywords": [
92
+ "mcp",
93
+ "model-context-protocol",
94
+ "oauth",
95
+ "redis",
96
+ "sse",
97
+ "server-sent-events",
98
+ "serverless",
99
+ "react",
100
+ "hook",
101
+ "anthropic",
102
+ "claude"
103
+ ],
104
+ "author": "MCP Assistant Contributors",
105
+ "license": "MIT",
106
+ "repository": {
107
+ "type": "git",
108
+ "url": "git+https://github.com/zonlabs/mcp-ts.git"
109
+ },
110
+ "bugs": {
111
+ "url": "https://github.com/zonlabs/mcp-ts/issues"
112
+ },
113
+ "homepage": "https://github.com/zonlabs/mcp-ts#readme",
114
+ "peerDependencies": {
115
+ "@ag-ui/client": ">=0.0.40",
116
+ "@langchain/core": "^0.3.0",
117
+ "ai": "^6.0.0",
118
+ "better-sqlite3": "^12.0.0",
119
+ "ioredis": "^5.0.0",
120
+ "react": ">=18.0.0",
121
+ "rxjs": ">=7.0.0",
122
+ "zod": "^3.23.0",
123
+ "@supabase/supabase-js": "^2.0.0"
124
+ },
125
+ "peerDependenciesMeta": {
126
+ "react": {
127
+ "optional": true
128
+ },
129
+ "ioredis": {
130
+ "optional": true
131
+ },
132
+ "@langchain/core": {
133
+ "optional": true
134
+ },
135
+ "zod": {
136
+ "optional": true
137
+ },
138
+ "ai": {
139
+ "optional": true
140
+ },
141
+ "@ag-ui/client": {
142
+ "optional": true
143
+ },
144
+ "rxjs": {
145
+ "optional": true
146
+ },
147
+ "better-sqlite3": {
148
+ "optional": true
149
+ },
150
+ "@supabase/supabase-js": {
151
+ "optional": true
152
+ }
153
+ },
154
+ "dependencies": {
155
+ "@modelcontextprotocol/ext-apps": "^1.0.1",
156
+ "@modelcontextprotocol/sdk": "^1.25.3",
157
+ "json-schema": "^0.4.0",
158
+ "json-schema-to-zod": "^2.7.0",
159
+ "nanoid": "^5.1.6"
160
+ },
161
+ "devDependencies": {
162
+ "@ag-ui/client": "^0.0.42",
163
+ "@langchain/core": "^0.3.33",
164
+ "@playwright/test": "^1.58.0",
165
+ "@types/better-sqlite3": "^7.6.13",
166
+ "@types/json-schema": "^7.0.15",
167
+ "@types/node": "^25.0.10",
168
+ "@types/react": "^18.3.18",
169
+ "ai": "^6.0.49",
170
+ "better-sqlite3": "^12.6.2",
171
+ "ioredis": "^5.9.2",
172
+ "ioredis-mock": "^8.13.1",
173
+ "playwright": "^1.58.0",
174
+ "react": "^18.3.1",
175
+ "rimraf": "^6.1.2",
176
+ "tsup": "^8.5.1",
177
+ "typescript": "^5.9.3",
178
+ "vue": "^3.5.27",
179
+ "zod": "^3.24.1",
180
+ "@supabase/supabase-js": "^2.48.0"
181
+ },
182
+ "engines": {
183
+ "node": ">=18.0.0"
184
+ }
185
+ }