@mcp-ts/sdk 2.5.0 → 2.5.1
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.
- package/dist/adapters/agui-adapter.d.mts +3 -3
- package/dist/adapters/agui-adapter.d.ts +3 -3
- package/dist/adapters/agui-middleware.d.mts +3 -3
- package/dist/adapters/agui-middleware.d.ts +3 -3
- package/dist/adapters/ai-adapter.d.mts +3 -3
- package/dist/adapters/ai-adapter.d.ts +3 -3
- package/dist/adapters/langchain-adapter.d.mts +3 -3
- package/dist/adapters/langchain-adapter.d.ts +3 -3
- package/dist/adapters/mastra-adapter.d.mts +2 -2
- package/dist/adapters/mastra-adapter.d.ts +2 -2
- package/dist/client/index.d.mts +2 -2
- package/dist/client/index.d.ts +2 -2
- package/dist/client/index.js +3 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +3 -0
- package/dist/client/index.mjs.map +1 -1
- package/dist/client/react.d.mts +4 -4
- package/dist/client/react.d.ts +4 -4
- package/dist/client/react.js +22 -37
- package/dist/client/react.js.map +1 -1
- package/dist/client/react.mjs +22 -37
- package/dist/client/react.mjs.map +1 -1
- package/dist/client/vue.d.mts +4 -4
- package/dist/client/vue.d.ts +4 -4
- package/dist/client/vue.js +3 -0
- package/dist/client/vue.js.map +1 -1
- package/dist/client/vue.mjs +3 -0
- package/dist/client/vue.mjs.map +1 -1
- package/dist/{index-sVcqrhf7.d.ts → index-BEdyuz1M.d.ts} +2 -1
- package/dist/{index-CTURVnom.d.mts → index-C99wE2Zf.d.mts} +2 -1
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +66 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +66 -0
- package/dist/index.mjs.map +1 -1
- package/dist/{multi-session-client-DMZGVABI.d.mts → multi-session-client-CclWRxTD.d.mts} +1 -1
- package/dist/{multi-session-client-CSPSHHla.d.ts → multi-session-client-DzvZD6Tt.d.ts} +1 -1
- package/dist/server/index.d.mts +9 -4
- package/dist/server/index.d.ts +9 -4
- package/dist/server/index.js +63 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +63 -0
- package/dist/server/index.mjs.map +1 -1
- package/dist/shared/index.d.mts +4 -4
- package/dist/shared/index.d.ts +4 -4
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/index.mjs.map +1 -1
- package/dist/{tool-router-CVLBaCwH.d.mts → tool-router-C9ECn3FX.d.mts} +1 -1
- package/dist/{tool-router-CS9l0w4a.d.ts → tool-router-CUSSk6lT.d.ts} +1 -1
- package/dist/{types-DK_NGWd4.d.mts → types-CbFbPkfQ.d.mts} +3 -2
- package/dist/{types-DK_NGWd4.d.ts → types-CbFbPkfQ.d.ts} +3 -2
- package/package.json +2 -2
- package/src/client/core/sse-client.ts +4 -0
- package/src/client/react/oauth-popup.tsx +17 -24
- package/src/client/react/use-mcp.ts +6 -15
- package/src/server/handlers/sse-handler.ts +86 -0
- package/src/shared/types.ts +4 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { m as Event, M as McpConnectionEvent, t as McpObservabilityEvent, s as McpConnectionState, A as ToolClientProvider, T as ToolClient } from './types-
|
|
1
|
+
import { m as Event, M as McpConnectionEvent, t as McpObservabilityEvent, s as McpConnectionState, A as ToolClientProvider, T as ToolClient } from './types-CbFbPkfQ.mjs';
|
|
2
2
|
import { ListToolsResult, CallToolResult, ListPromptsResult, GetPromptResult, ListResourcesResult, ReadResourceResult } from '@modelcontextprotocol/sdk/types.js';
|
|
3
3
|
import { OAuthClientProvider } from '@modelcontextprotocol/sdk/client/auth.js';
|
|
4
4
|
import { OAuthClientMetadata, OAuthClientInformationMixed, OAuthClientInformationFull, OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { m as Event, M as McpConnectionEvent, t as McpObservabilityEvent, s as McpConnectionState, A as ToolClientProvider, T as ToolClient } from './types-
|
|
1
|
+
import { m as Event, M as McpConnectionEvent, t as McpObservabilityEvent, s as McpConnectionState, A as ToolClientProvider, T as ToolClient } from './types-CbFbPkfQ.js';
|
|
2
2
|
import { ListToolsResult, CallToolResult, ListPromptsResult, GetPromptResult, ListResourcesResult, ReadResourceResult } from '@modelcontextprotocol/sdk/types.js';
|
|
3
3
|
import { OAuthClientProvider } from '@modelcontextprotocol/sdk/client/auth.js';
|
|
4
4
|
import { OAuthClientMetadata, OAuthClientInformationMixed, OAuthClientInformationFull, OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
|
package/dist/server/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { c as SessionMutationListener, e as SessionStore } from '../multi-session-client-
|
|
2
|
-
export { M as MCPClient, a as MultiSessionClient, S as Session, b as SessionMutationEvent, d as SessionMutationType, f as StorageOAuthClientProvider } from '../multi-session-client-
|
|
1
|
+
import { c as SessionMutationListener, e as SessionStore } from '../multi-session-client-CclWRxTD.mjs';
|
|
2
|
+
export { M as MCPClient, a as MultiSessionClient, S as Session, b as SessionMutationEvent, d as SessionMutationType, f as StorageOAuthClientProvider } from '../multi-session-client-CclWRxTD.mjs';
|
|
3
3
|
export { U as UnauthorizedError, s as sanitizeServerLabel } from '../utils-DELRKQPU.mjs';
|
|
4
|
-
import { M as McpConnectionEvent, t as McpObservabilityEvent, x as McpRpcResponse, w as McpRpcRequest } from '../types-
|
|
5
|
-
export { a as CallToolRequest, b as CallToolResponse, f as ConnectRequest, g as ConnectResponse, k as Disposable, E as Emitter, m as Event, q as ListToolsResponse, s as McpConnectionState, T as ToolClient, A as ToolClientProvider, B as ToolInfo } from '../types-
|
|
4
|
+
import { M as McpConnectionEvent, t as McpObservabilityEvent, x as McpRpcResponse, w as McpRpcRequest } from '../types-CbFbPkfQ.mjs';
|
|
5
|
+
export { a as CallToolRequest, b as CallToolResponse, f as ConnectRequest, g as ConnectResponse, k as Disposable, E as Emitter, m as Event, q as ListToolsResponse, s as McpConnectionState, T as ToolClient, A as ToolClientProvider, B as ToolInfo } from '../types-CbFbPkfQ.mjs';
|
|
6
6
|
export { OAuthClientInformation, OAuthClientInformationFull, OAuthClientMetadata, OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
|
|
7
7
|
export { CallToolResult, ListToolsResult, Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
8
8
|
import '@modelcontextprotocol/sdk/client/auth.js';
|
|
@@ -79,6 +79,11 @@ declare class SSEConnectionManager {
|
|
|
79
79
|
* Connect to an MCP server
|
|
80
80
|
*/
|
|
81
81
|
private connect;
|
|
82
|
+
/**
|
|
83
|
+
* Reconnect to an MCP server — tears down the active client transport/connection
|
|
84
|
+
* and creates a fresh connection while reusing the existing session credentials in a single RPC call.
|
|
85
|
+
*/
|
|
86
|
+
private reconnect;
|
|
82
87
|
/**
|
|
83
88
|
* Disconnect from an MCP server
|
|
84
89
|
*/
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { c as SessionMutationListener, e as SessionStore } from '../multi-session-client-
|
|
2
|
-
export { M as MCPClient, a as MultiSessionClient, S as Session, b as SessionMutationEvent, d as SessionMutationType, f as StorageOAuthClientProvider } from '../multi-session-client-
|
|
1
|
+
import { c as SessionMutationListener, e as SessionStore } from '../multi-session-client-DzvZD6Tt.js';
|
|
2
|
+
export { M as MCPClient, a as MultiSessionClient, S as Session, b as SessionMutationEvent, d as SessionMutationType, f as StorageOAuthClientProvider } from '../multi-session-client-DzvZD6Tt.js';
|
|
3
3
|
export { U as UnauthorizedError, s as sanitizeServerLabel } from '../utils-DELRKQPU.js';
|
|
4
|
-
import { M as McpConnectionEvent, t as McpObservabilityEvent, x as McpRpcResponse, w as McpRpcRequest } from '../types-
|
|
5
|
-
export { a as CallToolRequest, b as CallToolResponse, f as ConnectRequest, g as ConnectResponse, k as Disposable, E as Emitter, m as Event, q as ListToolsResponse, s as McpConnectionState, T as ToolClient, A as ToolClientProvider, B as ToolInfo } from '../types-
|
|
4
|
+
import { M as McpConnectionEvent, t as McpObservabilityEvent, x as McpRpcResponse, w as McpRpcRequest } from '../types-CbFbPkfQ.js';
|
|
5
|
+
export { a as CallToolRequest, b as CallToolResponse, f as ConnectRequest, g as ConnectResponse, k as Disposable, E as Emitter, m as Event, q as ListToolsResponse, s as McpConnectionState, T as ToolClient, A as ToolClientProvider, B as ToolInfo } from '../types-CbFbPkfQ.js';
|
|
6
6
|
export { OAuthClientInformation, OAuthClientInformationFull, OAuthClientMetadata, OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
|
|
7
7
|
export { CallToolResult, ListToolsResult, Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
8
8
|
import '@modelcontextprotocol/sdk/client/auth.js';
|
|
@@ -79,6 +79,11 @@ declare class SSEConnectionManager {
|
|
|
79
79
|
* Connect to an MCP server
|
|
80
80
|
*/
|
|
81
81
|
private connect;
|
|
82
|
+
/**
|
|
83
|
+
* Reconnect to an MCP server — tears down the active client transport/connection
|
|
84
|
+
* and creates a fresh connection while reusing the existing session credentials in a single RPC call.
|
|
85
|
+
*/
|
|
86
|
+
private reconnect;
|
|
82
87
|
/**
|
|
83
88
|
* Disconnect from an MCP server
|
|
84
89
|
*/
|
package/dist/server/index.js
CHANGED
|
@@ -3465,6 +3465,9 @@ var SSEConnectionManager = class {
|
|
|
3465
3465
|
case "connect":
|
|
3466
3466
|
result = await this.connect(request.params);
|
|
3467
3467
|
break;
|
|
3468
|
+
case "reconnect":
|
|
3469
|
+
result = await this.reconnect(request.params);
|
|
3470
|
+
break;
|
|
3468
3471
|
case "disconnect":
|
|
3469
3472
|
result = await this.disconnect(request.params);
|
|
3470
3473
|
break;
|
|
@@ -3607,6 +3610,66 @@ var SSEConnectionManager = class {
|
|
|
3607
3610
|
throw error;
|
|
3608
3611
|
}
|
|
3609
3612
|
}
|
|
3613
|
+
/**
|
|
3614
|
+
* Reconnect to an MCP server — tears down the active client transport/connection
|
|
3615
|
+
* and creates a fresh connection while reusing the existing session credentials in a single RPC call.
|
|
3616
|
+
*/
|
|
3617
|
+
async reconnect(params) {
|
|
3618
|
+
const { serverId: rawServerId, serverName, serverUrl, callbackUrl, transportType } = params;
|
|
3619
|
+
const headers = normalizeHeaders(params.headers);
|
|
3620
|
+
const serverId = rawServerId && rawServerId.length <= 12 ? rawServerId : generateServerId();
|
|
3621
|
+
const existingSessions = await sessions.list(this.userId);
|
|
3622
|
+
const duplicate = existingSessions.find(
|
|
3623
|
+
(s) => s.serverId === serverId || s.serverUrl === serverUrl
|
|
3624
|
+
);
|
|
3625
|
+
const sessionId = duplicate ? duplicate.sessionId : await sessions.generateSessionId();
|
|
3626
|
+
if (duplicate) {
|
|
3627
|
+
const existingClient = this.clients.get(duplicate.sessionId);
|
|
3628
|
+
if (existingClient) {
|
|
3629
|
+
await existingClient.disconnect();
|
|
3630
|
+
this.clients.delete(duplicate.sessionId);
|
|
3631
|
+
}
|
|
3632
|
+
}
|
|
3633
|
+
try {
|
|
3634
|
+
const clientMetadata = await this.getResolvedClientMetadata();
|
|
3635
|
+
const client = new MCPClient({
|
|
3636
|
+
userId: this.userId,
|
|
3637
|
+
sessionId,
|
|
3638
|
+
serverId,
|
|
3639
|
+
serverName,
|
|
3640
|
+
serverUrl,
|
|
3641
|
+
callbackUrl,
|
|
3642
|
+
transportType,
|
|
3643
|
+
headers,
|
|
3644
|
+
...clientMetadata
|
|
3645
|
+
});
|
|
3646
|
+
this.clients.set(sessionId, client);
|
|
3647
|
+
client.onConnectionEvent((event) => {
|
|
3648
|
+
this.emitConnectionEvent(event);
|
|
3649
|
+
});
|
|
3650
|
+
client.onObservabilityEvent((event) => {
|
|
3651
|
+
this.sendEvent(event);
|
|
3652
|
+
});
|
|
3653
|
+
await client.connect();
|
|
3654
|
+
await this.listPolicyFilteredTools(sessionId);
|
|
3655
|
+
return { sessionId, success: true };
|
|
3656
|
+
} catch (error) {
|
|
3657
|
+
if (error instanceof UnauthorizedError) {
|
|
3658
|
+
this.clients.delete(sessionId);
|
|
3659
|
+
return { sessionId, success: true };
|
|
3660
|
+
}
|
|
3661
|
+
this.emitConnectionEvent({
|
|
3662
|
+
type: "error",
|
|
3663
|
+
sessionId,
|
|
3664
|
+
serverId,
|
|
3665
|
+
error: error instanceof Error ? error.message : "Connection failed",
|
|
3666
|
+
errorType: "connection",
|
|
3667
|
+
timestamp: Date.now()
|
|
3668
|
+
});
|
|
3669
|
+
this.clients.delete(sessionId);
|
|
3670
|
+
throw error;
|
|
3671
|
+
}
|
|
3672
|
+
}
|
|
3610
3673
|
/**
|
|
3611
3674
|
* Disconnect from an MCP server
|
|
3612
3675
|
*/
|