v2 - clean deprecated methods and exports (#1419)
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com>
This commit is contained in:
parent
11e326692b
commit
dcf708d892
1 changed files with 258 additions and 565 deletions
|
|
@ -161,10 +161,12 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
config ??= { sessionIdGenerator: () => randomUUID() };
|
||||
const mcpServer = new McpServer({ name: 'test-server', version: '1.0.0' }, { capabilities: { logging: {} } });
|
||||
|
||||
mcpServer.tool(
|
||||
mcpServer.registerTool(
|
||||
'greet',
|
||||
'A simple greeting tool',
|
||||
{ name: z.string().describe('Name to greet') },
|
||||
{
|
||||
description: 'A simple greeting tool',
|
||||
inputSchema: { name: z.string().describe('Name to greet') }
|
||||
},
|
||||
async ({ name }): Promise<CallToolResult> => {
|
||||
return { content: [{ type: 'text', text: `Hello, ${name}!` }] };
|
||||
}
|
||||
|
|
@ -206,10 +208,12 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
}> {
|
||||
const mcpServer = new McpServer({ name: 'test-server', version: '1.0.0' }, { capabilities: { logging: {} } });
|
||||
|
||||
mcpServer.tool(
|
||||
mcpServer.registerTool(
|
||||
'profile',
|
||||
'A user profile data tool',
|
||||
{ active: z.boolean().describe('Profile status') },
|
||||
{
|
||||
description: 'A user profile data tool',
|
||||
inputSchema: { active: z.boolean().describe('Profile status') }
|
||||
},
|
||||
async ({ active }, { authInfo }): Promise<CallToolResult> => {
|
||||
return { content: [{ type: 'text', text: `${active ? 'Active' : 'Inactive'} profile from token: ${authInfo?.token}!` }] };
|
||||
}
|
||||
|
|
@ -394,10 +398,12 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
it('should pass request info to tool callback', async () => {
|
||||
sessionId = await initializeServer();
|
||||
|
||||
mcpServer.tool(
|
||||
mcpServer.registerTool(
|
||||
'test-request-info',
|
||||
'A simple test tool with request info',
|
||||
{ name: z.string().describe('Name to greet') },
|
||||
{
|
||||
description: 'A simple test tool with request info',
|
||||
inputSchema: { name: z.string().describe('Name to greet') }
|
||||
},
|
||||
async ({ name }, { requestInfo }): Promise<CallToolResult> => {
|
||||
// Convert Headers object to plain object for JSON serialization
|
||||
// Headers is a Web API class that doesn't serialize with JSON.stringify
|
||||
|
|
@ -1845,7 +1851,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
});
|
||||
|
||||
// Register a tool that closes its own SSE stream via extra callback
|
||||
mcpServer.tool('close-stream-tool', 'Closes its own stream', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('close-stream-tool', { description: 'Closes its own stream' }, async extra => {
|
||||
// Close the SSE stream for this request
|
||||
extra.closeSSEStream?.();
|
||||
streamCloseCalled = true;
|
||||
|
|
@ -1913,7 +1919,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
let receivedCloseSSEStream: (() => void) | undefined;
|
||||
|
||||
// Register a tool that captures the extra.closeSSEStream callback
|
||||
mcpServer.tool('test-callback-tool', 'Test tool', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('test-callback-tool', { description: 'Test tool' }, async extra => {
|
||||
receivedCloseSSEStream = extra.closeSSEStream;
|
||||
return { content: [{ type: 'text', text: 'Done' }] };
|
||||
});
|
||||
|
|
@ -1972,7 +1978,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
let receivedCloseStandaloneSSEStream: (() => void) | undefined;
|
||||
|
||||
// Register a tool that captures the extra.closeSSEStream callback
|
||||
mcpServer.tool('test-old-version-tool', 'Test tool', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('test-old-version-tool', { description: 'Test tool' }, async extra => {
|
||||
receivedCloseSSEStream = extra.closeSSEStream;
|
||||
receivedCloseStandaloneSSEStream = extra.closeStandaloneSSEStream;
|
||||
return { content: [{ type: 'text', text: 'Done' }] };
|
||||
|
|
@ -2031,7 +2037,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
let receivedCloseSSEStream: (() => void) | undefined;
|
||||
|
||||
// Register a tool that captures the extra.closeSSEStream callback
|
||||
mcpServer.tool('test-no-callback-tool', 'Test tool', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('test-no-callback-tool', { description: 'Test tool' }, async extra => {
|
||||
receivedCloseSSEStream = extra.closeSSEStream;
|
||||
return { content: [{ type: 'text', text: 'Done' }] };
|
||||
});
|
||||
|
|
@ -2088,7 +2094,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
let receivedCloseStandaloneSSEStream: (() => void) | undefined;
|
||||
|
||||
// Register a tool that captures the extra.closeStandaloneSSEStream callback
|
||||
mcpServer.tool('test-standalone-callback-tool', 'Test tool', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('test-standalone-callback-tool', { description: 'Test tool' }, async extra => {
|
||||
receivedCloseStandaloneSSEStream = extra.closeStandaloneSSEStream;
|
||||
return { content: [{ type: 'text', text: 'Done' }] };
|
||||
});
|
||||
|
|
@ -2143,7 +2149,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
mcpServer = result.mcpServer;
|
||||
|
||||
// Register a tool that closes the standalone SSE stream via extra callback
|
||||
mcpServer.tool('close-standalone-stream-tool', 'Closes standalone stream', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('close-standalone-stream-tool', { description: 'Closes standalone stream' }, async extra => {
|
||||
extra.closeStandaloneSSEStream?.();
|
||||
return { content: [{ type: 'text', text: 'Stream closed' }] };
|
||||
});
|
||||
|
|
@ -2224,7 +2230,7 @@ describe.each(zodTestMatrix)('$zodVersionLabel', (entry: ZodMatrixEntry) => {
|
|||
mcpServer = result.mcpServer;
|
||||
|
||||
// Register a tool that closes the standalone SSE stream
|
||||
mcpServer.tool('close-standalone-for-reconnect', 'Closes standalone stream', {}, async (_args, extra) => {
|
||||
mcpServer.registerTool('close-standalone-for-reconnect', { description: 'Closes standalone stream' }, async extra => {
|
||||
extra.closeStandaloneSSEStream?.();
|
||||
return { content: [{ type: 'text', text: 'Stream closed' }] };
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue