mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 09:25:06 +03:00
chore(studio): upgrade @supabase/mcp-server-supabase to v0.6.2 (#42210)
* chore(mcp): upgrade @supabase/mcp-server-supabase to v0.6.2 * fix: mocks for Node.js / Web Standard HTTP APIs
This commit is contained in:
1 parent
7cfd30370e
commit
d21098ada4
3 files changed
+75
-59
No files matched your search
@@ -47,7 +47,7 @@
|
||||
"@heroicons/react": "^2.1.3",
|
||||
"@hookform/resolvers": "^3.1.1",
|
||||
"@mjackson/multipart-parser": "^0.10.1",
|
||||
"@modelcontextprotocol/sdk": "^1.24.0",
|
||||
"@modelcontextprotocol/sdk": "^1.25.2",
|
||||
"@monaco-editor/react": "^4.6.0",
|
||||
"@next/bundle-analyzer": "^16.0.3",
|
||||
"@number-flow/react": "^0.3.2",
|
||||
@@ -59,8 +59,8 @@
|
||||
"@stripe/react-stripe-js": "^3.7.0",
|
||||
"@stripe/stripe-js": "^7.5.0",
|
||||
"@supabase/auth-js": "catalog:",
|
||||
"@supabase/mcp-server-supabase": "^0.6.1",
|
||||
"@supabase/mcp-utils": "^0.3.1",
|
||||
"@supabase/mcp-server-supabase": "^0.6.2",
|
||||
"@supabase/mcp-utils": "^0.3.2",
|
||||
"@supabase/pg-meta": "workspace:*",
|
||||
"@supabase/realtime-js": "catalog:",
|
||||
"@supabase/shared-types": "0.1.83",
|
||||
|
||||
@@ -1,12 +1,35 @@
|
||||
import { describe, it, expect, beforeEach } from 'vitest'
|
||||
import { describe, it, expect, beforeEach, vi } from 'vitest'
|
||||
import { createMocks } from 'node-mocks-http'
|
||||
import { mswServer } from 'tests/lib/msw'
|
||||
import handler from '../../../../pages/api/mcp/index'
|
||||
|
||||
// Mock the MCP SDK and Supabase MCP server to avoid Hono/node-mocks-http compatibility issues.
|
||||
//
|
||||
// Starting with MCP SDK v1.25.x (required by @supabase/mcp-server-supabase@0.6.2), the SDK
|
||||
// uses @hono/node-server for converting between Node.js HTTP and Web Standard APIs. This is
|
||||
// incompatible with the node-mocks-http library used in these tests.
|
||||
//
|
||||
// Since these tests focus on query parameter validation in the API handler rather than
|
||||
// testing the MCP transport implementation, we mock both packages to avoid hitting the
|
||||
// incompatible Hono code paths.
|
||||
vi.mock('@modelcontextprotocol/sdk/server/streamableHttp.js', () => ({
|
||||
StreamableHTTPServerTransport: vi.fn().mockImplementation(() => ({
|
||||
handleRequest: vi.fn().mockResolvedValue(undefined),
|
||||
})),
|
||||
}))
|
||||
|
||||
vi.mock('@supabase/mcp-server-supabase', () => ({
|
||||
createSupabaseMcpServer: vi.fn().mockReturnValue({
|
||||
connect: vi.fn().mockResolvedValue(undefined),
|
||||
}),
|
||||
}))
|
||||
|
||||
describe('/api/mcp', () => {
|
||||
beforeEach(() => {
|
||||
// Disable MSW for these tests
|
||||
mswServer.close()
|
||||
// Clear mock state between tests
|
||||
vi.clearAllMocks()
|
||||
})
|
||||
|
||||
describe('Method handling', async () => {
|
||||
|
||||
Generated
+48
-55
@@ -560,7 +560,7 @@ importers:
|
||||
version: 0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
nuqs:
|
||||
specifier: ^1.19.1
|
||||
version: 1.19.1(next@15.5.10(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))
|
||||
version: 1.19.1(next@15.5.10(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))
|
||||
openai:
|
||||
specifier: ^4.75.1
|
||||
version: 4.104.0(encoding@0.1.13)(ws@8.18.3)(zod@3.25.76)
|
||||
@@ -836,8 +836,8 @@ importers:
|
||||
specifier: ^0.10.1
|
||||
version: 0.10.1
|
||||
'@modelcontextprotocol/sdk':
|
||||
specifier: ^1.24.0
|
||||
version: 1.24.0(supports-color@8.1.1)(zod@3.25.76)
|
||||
specifier: ^1.25.2
|
||||
version: 1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@monaco-editor/react':
|
||||
specifier: ^4.6.0
|
||||
version: 4.6.0(monaco-editor@0.52.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||
@@ -872,11 +872,11 @@ importers:
|
||||
specifier: 'catalog:'
|
||||
version: 2.93.1
|
||||
'@supabase/mcp-server-supabase':
|
||||
specifier: ^0.6.1
|
||||
version: 0.6.1(supports-color@8.1.1)(zod@3.25.76)
|
||||
specifier: ^0.6.2
|
||||
version: 0.6.2(@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76))(zod@3.25.76)
|
||||
'@supabase/mcp-utils':
|
||||
specifier: ^0.3.1
|
||||
version: 0.3.1(supports-color@8.1.1)(zod@3.25.76)
|
||||
specifier: ^0.3.2
|
||||
version: 0.3.2(@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76))(zod@3.25.76)
|
||||
'@supabase/pg-meta':
|
||||
specifier: workspace:*
|
||||
version: link:../../packages/pg-meta
|
||||
@@ -4178,6 +4178,12 @@ packages:
|
||||
peerDependencies:
|
||||
react: '>= 16'
|
||||
|
||||
'@hono/node-server@1.19.9':
|
||||
resolution: {integrity: sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==}
|
||||
engines: {node: '>=18.14.1'}
|
||||
peerDependencies:
|
||||
hono: ^4
|
||||
|
||||
'@hookform/resolvers@3.3.1':
|
||||
resolution: {integrity: sha512-K7KCKRKjymxIB90nHDQ7b9nli474ru99ZbqxiqDAWYsYhOsU3/4qLxW91y+1n04ic13ajjZ66L3aXbNef8PELQ==}
|
||||
peerDependencies:
|
||||
@@ -4914,18 +4920,8 @@ packages:
|
||||
'@mjackson/node-fetch-server@0.2.0':
|
||||
resolution: {integrity: sha512-EMlH1e30yzmTpGLQjlFmaDAjyOeZhng1/XCd7DExR8PNAnG/G1tyruZxEoUe11ClnwGhGrtsdnyyUx1frSzjng==}
|
||||
|
||||
'@modelcontextprotocol/sdk@1.23.1':
|
||||
resolution: {integrity: sha512-JvO6eVMbSKdk+iZcwECz/tra9DRAKlv1mAOsQ1DAWU3qG28tDIffpkEAUkqMMwlOq77GhnMpezEjiQJGIR+hHw==}
|
||||
engines: {node: '>=18'}
|
||||
peerDependencies:
|
||||
'@cfworker/json-schema': ^4.1.1
|
||||
zod: ^3.25 || ^4.0
|
||||
peerDependenciesMeta:
|
||||
'@cfworker/json-schema':
|
||||
optional: true
|
||||
|
||||
'@modelcontextprotocol/sdk@1.24.0':
|
||||
resolution: {integrity: sha512-D8h5KXY2vHFW8zTuxn2vuZGN0HGrQ5No6LkHwlEA9trVgNdPL3TF1dSqKA7Dny6BbBYKSW/rOBDXdC8KJAjUCg==}
|
||||
'@modelcontextprotocol/sdk@1.25.3':
|
||||
resolution: {integrity: sha512-vsAMBMERybvYgKbg/l4L1rhS7VXV1c0CtyJg72vwxONVX0l4ZfKVAnZEWTQixJGTzKnELjQ59e4NbdFDALRiAQ==}
|
||||
engines: {node: '>=18'}
|
||||
peerDependencies:
|
||||
'@cfworker/json-schema': ^4.1.1
|
||||
@@ -8926,15 +8922,17 @@ packages:
|
||||
resolution: {integrity: sha512-Ott2IcIXHGupaC0nX9WNEiJAX4OdlGRu9upkkURaQHbaLdz9JuCcHxlwTERgtgjMpikbIWHfMM1M9QTQFYABiA==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
|
||||
'@supabase/mcp-server-supabase@0.6.1':
|
||||
resolution: {integrity: sha512-NYxYg2t+CPoL4l/j+oGS0J9cu7ZWpWG+j3w4RHQht0jCSsRw2nD37UFPIRzG65eKYhuutK22uP12IDo/bpeohw==}
|
||||
'@supabase/mcp-server-supabase@0.6.2':
|
||||
resolution: {integrity: sha512-XcdWfXDckMZb4mexNBkGadTIU+7vnOdX+gffc/7wDdmkEb7TAndbSuoE5hHh/bj5wBlD2GXpFjieyWYF5Nz+3w==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@modelcontextprotocol/sdk': ^1.25.2
|
||||
zod: ^3.25.0 || ^4.0.0
|
||||
|
||||
'@supabase/mcp-utils@0.3.1':
|
||||
resolution: {integrity: sha512-t9jVa9yvI+yGKLTsTgW1gQUX2tj77mcgy+OiRe/ysS+tvFckxZZTZUJrAMvVeIe6IMJ5FVXk5FWA4gIU9EyYyg==}
|
||||
'@supabase/mcp-utils@0.3.2':
|
||||
resolution: {integrity: sha512-hGenK6oEFHkWhAyKGD1gNeIsHRRCl/N/kHmwubZm+UWCj4O1iuS6XgX1Ub2+mH25qqpUHIMaVm9BEV2p1RbhNQ==}
|
||||
peerDependencies:
|
||||
'@modelcontextprotocol/sdk': ^1.25.2
|
||||
zod: ^3.25.0 || ^4.0.0
|
||||
|
||||
'@supabase/postgres-meta@0.64.6':
|
||||
@@ -13445,6 +13443,10 @@ packages:
|
||||
resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
hono@4.11.4:
|
||||
resolution: {integrity: sha512-U7tt8JsyrxSRKspfhtLET79pU8K+tInj5QZXs1jSugO1Vq5dFj3kmZsRldo29mTBfcjDRVRXrEZ6LS63Cog9ZA==}
|
||||
engines: {node: '>=16.9.0'}
|
||||
|
||||
hookable@5.5.3:
|
||||
resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
|
||||
|
||||
@@ -14259,6 +14261,9 @@ packages:
|
||||
json-schema-traverse@1.0.0:
|
||||
resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
|
||||
|
||||
json-schema-typed@8.0.2:
|
||||
resolution: {integrity: sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==}
|
||||
|
||||
json-schema@0.4.0:
|
||||
resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==}
|
||||
|
||||
@@ -22555,6 +22560,10 @@ snapshots:
|
||||
dependencies:
|
||||
react: 18.3.1
|
||||
|
||||
'@hono/node-server@1.19.9(hono@4.11.4)':
|
||||
dependencies:
|
||||
hono: 4.11.4
|
||||
|
||||
'@hookform/resolvers@3.3.1(react-hook-form@7.47.0(react@18.3.1))':
|
||||
dependencies:
|
||||
react-hook-form: 7.47.0(react@18.3.1)
|
||||
@@ -23330,26 +23339,9 @@ snapshots:
|
||||
|
||||
'@mjackson/node-fetch-server@0.2.0': {}
|
||||
|
||||
'@modelcontextprotocol/sdk@1.23.1(supports-color@8.1.1)(zod@3.25.76)':
|
||||
dependencies:
|
||||
ajv: 8.17.1
|
||||
ajv-formats: 3.0.1(ajv@8.17.1)
|
||||
content-type: 1.0.5
|
||||
cors: 2.8.5
|
||||
cross-spawn: 7.0.6
|
||||
eventsource: 3.0.7
|
||||
eventsource-parser: 3.0.6
|
||||
express: 5.1.0(supports-color@8.1.1)
|
||||
express-rate-limit: 7.5.0(express@5.1.0(supports-color@8.1.1))
|
||||
pkce-challenge: 5.0.0
|
||||
raw-body: 3.0.2
|
||||
zod: 3.25.76
|
||||
zod-to-json-schema: 3.25.0(zod@3.25.76)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@modelcontextprotocol/sdk@1.24.0(supports-color@8.1.1)(zod@3.25.76)':
|
||||
'@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76)':
|
||||
dependencies:
|
||||
'@hono/node-server': 1.19.9(hono@4.11.4)
|
||||
ajv: 8.17.1
|
||||
ajv-formats: 3.0.1(ajv@8.17.1)
|
||||
content-type: 1.0.5
|
||||
@@ -23360,11 +23352,13 @@ snapshots:
|
||||
express: 5.1.0(supports-color@8.1.1)
|
||||
express-rate-limit: 7.5.0(express@5.1.0(supports-color@8.1.1))
|
||||
jose: 6.1.3
|
||||
json-schema-typed: 8.0.2
|
||||
pkce-challenge: 5.0.0
|
||||
raw-body: 3.0.2
|
||||
zod: 3.25.76
|
||||
zod-to-json-schema: 3.25.0(zod@3.25.76)
|
||||
transitivePeerDependencies:
|
||||
- hono
|
||||
- supports-color
|
||||
|
||||
'@monaco-editor/loader@1.4.0(monaco-editor@0.52.2)':
|
||||
@@ -28006,27 +28000,21 @@ snapshots:
|
||||
dependencies:
|
||||
tslib: 2.8.1
|
||||
|
||||
'@supabase/mcp-server-supabase@0.6.1(supports-color@8.1.1)(zod@3.25.76)':
|
||||
'@supabase/mcp-server-supabase@0.6.2(@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76))(zod@3.25.76)':
|
||||
dependencies:
|
||||
'@mjackson/multipart-parser': 0.10.1
|
||||
'@modelcontextprotocol/sdk': 1.23.1(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@supabase/mcp-utils': 0.3.1(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@modelcontextprotocol/sdk': 1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@supabase/mcp-utils': 0.3.2(@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76))(zod@3.25.76)
|
||||
common-tags: 1.8.2
|
||||
gqlmin: 0.3.1
|
||||
graphql: 16.11.0
|
||||
openapi-fetch: 0.13.8
|
||||
zod: 3.25.76
|
||||
transitivePeerDependencies:
|
||||
- '@cfworker/json-schema'
|
||||
- supports-color
|
||||
|
||||
'@supabase/mcp-utils@0.3.1(supports-color@8.1.1)(zod@3.25.76)':
|
||||
'@supabase/mcp-utils@0.3.2(@modelcontextprotocol/sdk@1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76))(zod@3.25.76)':
|
||||
dependencies:
|
||||
'@modelcontextprotocol/sdk': 1.23.1(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@modelcontextprotocol/sdk': 1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76)
|
||||
zod: 3.25.76
|
||||
transitivePeerDependencies:
|
||||
- '@cfworker/json-schema'
|
||||
- supports-color
|
||||
|
||||
'@supabase/postgres-meta@0.64.6(encoding@0.1.13)(supports-color@8.1.1)':
|
||||
dependencies:
|
||||
@@ -33745,6 +33733,8 @@ snapshots:
|
||||
dependencies:
|
||||
parse-passwd: 1.0.0
|
||||
|
||||
hono@4.11.4: {}
|
||||
|
||||
hookable@5.5.3: {}
|
||||
|
||||
hosted-git-info@2.8.9: {}
|
||||
@@ -34535,6 +34525,8 @@ snapshots:
|
||||
|
||||
json-schema-traverse@1.0.0: {}
|
||||
|
||||
json-schema-typed@8.0.2: {}
|
||||
|
||||
json-schema@0.4.0: {}
|
||||
|
||||
json-stable-stringify-without-jsonify@1.0.1: {}
|
||||
@@ -36774,7 +36766,7 @@ snapshots:
|
||||
|
||||
number-flow@0.3.7: {}
|
||||
|
||||
nuqs@1.19.1(next@15.5.10(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)):
|
||||
nuqs@1.19.1(next@15.5.10(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)):
|
||||
dependencies:
|
||||
mitt: 3.0.1
|
||||
next: 15.5.10(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
|
||||
@@ -39414,7 +39406,7 @@ snapshots:
|
||||
'@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4(supports-color@8.1.1))(supports-color@8.1.1)
|
||||
'@babel/preset-typescript': 7.27.1(@babel/core@7.28.4(supports-color@8.1.1))(supports-color@8.1.1)
|
||||
'@dotenvx/dotenvx': 1.51.0
|
||||
'@modelcontextprotocol/sdk': 1.24.0(supports-color@8.1.1)(zod@3.25.76)
|
||||
'@modelcontextprotocol/sdk': 1.25.3(hono@4.11.4)(supports-color@8.1.1)(zod@3.25.76)
|
||||
browserslist: 4.26.2
|
||||
commander: 14.0.1
|
||||
cosmiconfig: 9.0.0(typescript@5.9.2)
|
||||
@@ -39442,6 +39434,7 @@ snapshots:
|
||||
- '@cfworker/json-schema'
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
- hono
|
||||
- supports-color
|
||||
- typescript
|
||||
|
||||
|
||||
Reference in new issue
Block a user