@smithery/sdk 1.2.1 → 1.2.3
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.
|
@@ -2,17 +2,17 @@ import type { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Arguments when we create a new instance of your server
|
|
4
4
|
*/
|
|
5
|
-
export interface CreateServerArg {
|
|
5
|
+
export interface CreateServerArg<T = Record<string, unknown>> {
|
|
6
6
|
sessionId: string;
|
|
7
|
-
config:
|
|
7
|
+
config: T;
|
|
8
8
|
}
|
|
9
|
-
export type CreateServerFn = (arg: CreateServerArg) => Server;
|
|
9
|
+
export type CreateServerFn<T = Record<string, unknown>> = (arg: CreateServerArg<T>) => Server;
|
|
10
10
|
/**
|
|
11
11
|
* Creates a stateful server for handling MCP requests.
|
|
12
12
|
* For every new session, we invoke createMcpServer to create a new instance of the server.
|
|
13
13
|
* @param createMcpServer Function to create an MCP server
|
|
14
14
|
* @returns Express app
|
|
15
15
|
*/
|
|
16
|
-
export declare function createStatefulServer(createMcpServer: CreateServerFn): {
|
|
16
|
+
export declare function createStatefulServer<T = Record<string, unknown>>(createMcpServer: CreateServerFn<T>): {
|
|
17
17
|
app: import("express-serve-static-core").Express;
|
|
18
18
|
};
|
package/dist/server/stateful.js
CHANGED
|
@@ -39,21 +39,36 @@ export function createStatefulServer(createMcpServer) {
|
|
|
39
39
|
delete transports[transport.sessionId];
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
|
+
let config;
|
|
43
|
+
try {
|
|
44
|
+
config = parseExpressRequestConfig(req);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
res.status(400).json({
|
|
48
|
+
jsonrpc: "2.0",
|
|
49
|
+
error: {
|
|
50
|
+
code: -32000,
|
|
51
|
+
message: "Bad Request: Invalid configuration",
|
|
52
|
+
},
|
|
53
|
+
id: null,
|
|
54
|
+
});
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
42
57
|
try {
|
|
43
|
-
const config = parseExpressRequestConfig(req);
|
|
44
58
|
const server = createMcpServer({
|
|
45
59
|
sessionId: newSessionId,
|
|
46
|
-
config,
|
|
60
|
+
config: config,
|
|
47
61
|
});
|
|
48
62
|
// Connect to the MCP server
|
|
49
63
|
await server.connect(transport);
|
|
50
64
|
}
|
|
51
65
|
catch (error) {
|
|
52
|
-
|
|
66
|
+
console.error("Error initializing server:", error);
|
|
67
|
+
res.status(500).json({
|
|
53
68
|
jsonrpc: "2.0",
|
|
54
69
|
error: {
|
|
55
|
-
code: -
|
|
56
|
-
message: "
|
|
70
|
+
code: -32603,
|
|
71
|
+
message: "Error initializing server.",
|
|
57
72
|
},
|
|
58
73
|
id: null,
|
|
59
74
|
});
|
|
@@ -2,16 +2,16 @@ import type { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Arguments when we create a new instance of your server
|
|
4
4
|
*/
|
|
5
|
-
export interface CreateServerArg {
|
|
6
|
-
config:
|
|
5
|
+
export interface CreateServerArg<T = Record<string, unknown>> {
|
|
6
|
+
config: T;
|
|
7
7
|
}
|
|
8
|
-
export type CreateServerFn = (arg: CreateServerArg) => Server;
|
|
8
|
+
export type CreateServerFn<T = Record<string, unknown>> = (arg: CreateServerArg<T>) => Server;
|
|
9
9
|
/**
|
|
10
10
|
* Creates a stateless server for handling MCP requests
|
|
11
11
|
* In stateless mode, each request creates a new server and transport instance
|
|
12
12
|
* @param createMcpServer Function to create an MCP server
|
|
13
13
|
* @returns Express app
|
|
14
14
|
*/
|
|
15
|
-
export declare function createStatelessServer(createMcpServer: CreateServerFn): {
|
|
15
|
+
export declare function createStatelessServer<T = Record<string, unknown>>(createMcpServer: CreateServerFn<T>): {
|
|
16
16
|
app: import("express-serve-static-core").Express;
|
|
17
17
|
};
|
package/dist/server/stateless.js
CHANGED
|
@@ -34,7 +34,7 @@ export function createStatelessServer(createMcpServer) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
// Create a new server instance with config
|
|
37
|
-
const server = createMcpServer({ config });
|
|
37
|
+
const server = createMcpServer({ config: config });
|
|
38
38
|
// Create a new transport instance
|
|
39
39
|
const transport = new StreamableHTTPServerTransport({
|
|
40
40
|
sessionIdGenerator: undefined,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smithery/sdk",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
4
4
|
"description": "SDK to develop with Smithery",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -16,8 +16,7 @@
|
|
|
16
16
|
"build": "tsc",
|
|
17
17
|
"build:all": "npm run build -ws --include-workspace-root",
|
|
18
18
|
"watch": "tsc --watch",
|
|
19
|
-
"check": "npx @biomejs/biome check --write --unsafe"
|
|
20
|
-
"link": "npm link -ws --include-workspace-root"
|
|
19
|
+
"check": "npx @biomejs/biome check --write --unsafe"
|
|
21
20
|
},
|
|
22
21
|
"license": "MIT",
|
|
23
22
|
"dependencies": {
|