@warmio/mcp 11.0.10 → 11.0.11

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/README.md CHANGED
@@ -16,9 +16,9 @@ The server exposes financial-context read tools plus the automation operation ca
16
16
 
17
17
  ## Hosted HTTP
18
18
 
19
- Claude Code, Cursor, and VS Code can use the hosted endpoint instead of the local process. The URL is `https://app.warm.io/mcp`. Send the existing Warm API key in the `Authorization` header as `Bearer` plus the key. Do not put the key in the URL.
19
+ Header-capable MCP clients can call `https://app.warm.io/mcp` with the existing Warm API key. Send it in the `Authorization` header as `Bearer` plus the key. Do not put the key in the URL.
20
20
 
21
- The hosted server lists only `get_financial_context` and `get_transactions`. The local installer and its five tools stay the same. Claude Desktop, claude.ai, and ChatGPT are not supported on this endpoint. A missing, invalid, or revoked key returns HTTP 401 with `WWW-Authenticate: Bearer realm="Warm MCP"`.
21
+ The hosted server lists only `get_financial_context` and `get_transactions`. The local installer and its five tools stay the same. The examples below use API keys and do not show OAuth behavior. OAuth acceptance in any specific MCP client has not been verified. An unknown or revoked `warm_` API key returns HTTP 401 with `WWW-Authenticate: Bearer realm="Warm MCP"`.
22
22
 
23
23
  Claude Code:
24
24
 
@@ -75,6 +75,25 @@ VS Code (`.vscode/mcp.json`):
75
75
  }
76
76
  ```
77
77
 
78
+ ### Hosted OAuth
79
+
80
+ The current working tree contains a hosted OAuth implementation. Required feature checks remain incomplete, and final reviews and release are pending. No client directory listing is claimed, and OAuth acceptance in any specific MCP client has not been verified.
81
+
82
+ After release, the flow will use Warm's existing Supabase-backed sign-in and consent page. The user signs in to Warm and approves access for the MCP client. The client uses OAuth 2.1 Authorization Code with Proof Key for Code Exchange (PKCE) and the S256 method as a public client.
83
+
84
+ Each client identifies itself with a Client ID Metadata Document (CIMD) at an HTTPS URL. Warm accepts `token_endpoint_auth_method=none`. Dynamic Client Registration (DCR), confidential clients, client secrets, and `private_key_jwt` are not supported.
85
+
86
+ OAuth tokens are valid only for the hosted MCP endpoint. They do not authenticate REST or PWA APIs, Warm Chat, direct financial data API routes, or automation tools. Each grant includes both read scopes:
87
+
88
+ - `financial_context:read` allows `get_financial_context`.
89
+ - `transactions:read` allows `get_transactions`.
90
+
91
+ The OAuth limit is 500 financial read requests per user during any rolling period of one hour. It is shared across that user's OAuth clients and grants. The existing API key limit stays separate and unchanged.
92
+
93
+ Access tokens expire after 30 minutes. The grant expires 30 days after code exchange, and refresh does not extend that expiry. Users can disconnect the client in Settings > Export & API > Connected apps. Disconnecting the client revokes its grant.
94
+
95
+ Each refresh token allows one committed rotation. Reusing a consumed token or overlapping refresh requests can revoke the grant. If a refresh response is lost after the server commits its replacement, retrying the old token can revoke the grant and require the user to connect again. There is no retry grace period.
96
+
78
97
  ## OpenCode 2
79
98
 
80
99
  The installer configures OpenCode 2 using `mcp.servers.warm`. It uses an existing
@@ -1,6 +1,8 @@
1
+ import { type HostedMcpWritePermission, type PublicMcpToolPermission } from '@warmio/contracts/mcp';
1
2
  export declare const HOSTED_MCP_MAX_REQUEST_BYTES = 65536;
2
3
  type HostedDispatch = (request: Request) => Promise<Response>;
3
4
  export interface HostedReadOnlyMcpDependencies {
5
+ allowedPermissions?: readonly (PublicMcpToolPermission | HostedMcpWritePermission)[];
4
6
  concurrencyKey: string;
5
7
  dispatchApi: HostedDispatch;
6
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hosted-http.d.ts","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAWnD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE9D,MAAM,WAAW,6BAA6B;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,cAAc,CAAC;CAC7B;AAkMD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,6BAA6B,GAC1C,OAAO,CAAC,QAAQ,CAAC,CA2CnB"}
1
+ {"version":3,"file":"hosted-http.d.ts","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"AAGA,OAAO,EAWL,KAAK,wBAAwB,EAE7B,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAkB/B,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAWnD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE9D,MAAM,WAAW,6BAA6B;IAC5C,kBAAkB,CAAC,EAAE,SAAS,CAAC,uBAAuB,GAAG,wBAAwB,CAAC,EAAE,CAAC;IACrF,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,cAAc,CAAC;CAC7B;AAsOD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,6BAA6B,GAC1C,OAAO,CAAC,QAAQ,CAAC,CA4EnB"}
@@ -1,7 +1,7 @@
1
1
  import { CfWorkerJsonSchemaValidator } from '@modelcontextprotocol/sdk/validation/cfworker';
2
2
  import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
3
3
  import { apiEndpointManifest } from '@warmio/contracts/api';
4
- import { transactionPeriodsMcpOutputSchema, WARM_MCP_PACKAGE_VERSION, } from '@warmio/contracts/mcp';
4
+ import { HOSTED_MCP_WRITE_PERMISSION, describeHostedOperationMcpOutputSchema, findTransactionsMcpOutputSchema, getOperationStatusMcpOutputSchema, invokeHostedOperationMcpOutputSchema, transactionPeriodsMcpOutputSchema, WARM_MCP_PACKAGE_VERSION, } from '@warmio/contracts/mcp';
5
5
  import { financialContextSchema, latestTransactionsSchema, transactionMonthSchema, } from '@warmio/contracts/schemas';
6
6
  import { z } from 'zod';
7
7
  import { createPublicWarmServer, HostedApiResultError, HostedMcpLimitError, } from './public-server.js';
@@ -19,6 +19,7 @@ function authorizeHostedTool(permission) {
19
19
  switch (permission) {
20
20
  case 'financial_context:read':
21
21
  case 'transactions:read':
22
+ case HOSTED_MCP_WRITE_PERMISSION:
22
23
  return true;
23
24
  default:
24
25
  return false;
@@ -54,6 +55,18 @@ function transactionsRequest(origin, headers, input) {
54
55
  url.searchParams.set('latest', '1');
55
56
  return new Request(url, { headers, method: 'GET' });
56
57
  }
58
+ function hostedWriteRequest(origin, headers, path, input) {
59
+ const requestHeaders = new Headers(headers);
60
+ requestHeaders.set('content-type', 'application/json');
61
+ return new Request(new URL(path, origin), {
62
+ body: JSON.stringify(input),
63
+ headers: requestHeaders,
64
+ method: 'POST',
65
+ });
66
+ }
67
+ function parseHostedOutput(schema, text) {
68
+ return schema.parse(JSON.parse(text));
69
+ }
57
70
  async function readResponseText(response) {
58
71
  const reader = response.body?.getReader();
59
72
  if (!reader)
@@ -206,8 +219,10 @@ async function readDispatch(dependencies, request, parse) {
206
219
  export async function handleHostedReadOnlyMcpRequest(request, dependencies) {
207
220
  const headers = forwardedHeaders(request);
208
221
  const origin = new URL(request.url).origin;
209
- const server = createPublicWarmServer({
210
- authorize: authorizeHostedTool,
222
+ const serverOptions = {
223
+ authorize: (permission) => authorizeHostedTool(permission) &&
224
+ (dependencies.allowedPermissions === undefined ||
225
+ dependencies.allowedPermissions.includes(permission)),
211
226
  jsonSchemaValidator: new CfWorkerJsonSchemaValidator(),
212
227
  readClient: {
213
228
  getFinancialContext: () => readDispatch(dependencies, financialContextRequest(origin, headers), parseFinancialContext),
@@ -219,8 +234,18 @@ export async function handleHostedReadOnlyMcpRequest(request, dependencies) {
219
234
  return readDispatch(dependencies, transactionsRequest(origin, headers, input), parseTransactions);
220
235
  },
221
236
  },
237
+ hostedWriteClient: {
238
+ findTransactions: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/find-transactions', input), (text) => parseHostedOutput(findTransactionsMcpOutputSchema, text)),
239
+ describeOperation: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/describe-operation', input), (text) => parseHostedOutput(describeHostedOperationMcpOutputSchema, text)),
240
+ invokeOperation: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/invoke-operation', input), (text) => parseHostedOutput(invokeHostedOperationMcpOutputSchema, text)),
241
+ getOperationStatus: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/operation-status', input), (text) => parseHostedOutput(getOperationStatusMcpOutputSchema, text)),
242
+ },
222
243
  serverInfo: { name: 'warm', version: WARM_MCP_PACKAGE_VERSION },
223
- });
244
+ };
245
+ if (dependencies.allowedPermissions !== undefined) {
246
+ serverOptions.allowedPermissions = dependencies.allowedPermissions;
247
+ }
248
+ const server = createPublicWarmServer(serverOptions);
224
249
  const transport = new WebStandardStreamableHTTPServerTransport({
225
250
  enableJsonResponse: true,
226
251
  maxRequestBodySize: HOSTED_MCP_MAX_REQUEST_BYTES,
@@ -1 +1 @@
1
- {"version":3,"file":"hosted-http.js","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hosted-http.js","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { DescribeHostedOperationMcpInput, DescribeHostedOperationMcpOutput, FindTransactionsMcpInput, FindTransactionsMcpOutput, GetOperationStatusMcpInput, GetOperationStatusMcpOutput, InvokeHostedOperationMcpInput, InvokeHostedOperationMcpOutput } from '@warmio/contracts/mcp';
2
+ export interface HostedWriteMcpClient {
3
+ describeOperation(input: DescribeHostedOperationMcpInput): Promise<DescribeHostedOperationMcpOutput>;
4
+ findTransactions(input: FindTransactionsMcpInput): Promise<FindTransactionsMcpOutput>;
5
+ getOperationStatus(input: GetOperationStatusMcpInput): Promise<GetOperationStatusMcpOutput>;
6
+ invokeOperation(input: InvokeHostedOperationMcpInput): Promise<InvokeHostedOperationMcpOutput>;
7
+ }
8
+ //# sourceMappingURL=hosted-write-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-write-client.d.ts","sourceRoot":"","sources":["../src/hosted-write-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,CACf,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC7C,gBAAgB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtF,kBAAkB,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC5F,eAAe,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAChG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hosted-write-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-write-client.js","sourceRoot":"","sources":["../src/hosted-write-client.ts"],"names":[],"mappings":""}
@@ -1,9 +1,13 @@
1
1
  import { McpServer, type McpServerOptions } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { Implementation } from '@modelcontextprotocol/sdk/types.js';
3
- import { type PublicMcpToolPermission } from '@warmio/contracts/mcp';
3
+ import { type HostedMcpWritePermission, type PublicMcpToolPermission } from '@warmio/contracts/mcp';
4
4
  import type { ReadOnlyWarmApiClient } from './warm-api-client.js';
5
+ import type { HostedWriteMcpClient } from './hosted-write-client.js';
6
+ type HostedMcpPermission = PublicMcpToolPermission | HostedMcpWritePermission;
5
7
  export interface PublicWarmServerOptions {
6
- authorize: (permission: PublicMcpToolPermission) => boolean | Promise<boolean>;
8
+ allowedPermissions?: readonly HostedMcpPermission[];
9
+ authorize: (permission: HostedMcpPermission) => boolean | Promise<boolean>;
10
+ hostedWriteClient: HostedWriteMcpClient;
7
11
  jsonSchemaValidator?: McpServerOptions['jsonSchemaValidator'];
8
12
  readClient: Pick<ReadOnlyWarmApiClient, 'getFinancialContext' | 'getTransactions'>;
9
13
  serverInfo: Implementation;
@@ -17,4 +21,5 @@ export declare class HostedMcpLimitError extends Error {
17
21
  constructor(message: string);
18
22
  }
19
23
  export declare function createPublicWarmServer(options: PublicWarmServerOptions): McpServer;
24
+ export {};
20
25
  //# sourceMappingURL=public-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-server.d.ts","sourceRoot":"","sources":["../src/public-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAOL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,CAAC,UAAU,EAAE,uBAAuB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/E,mBAAmB,CAAC,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC9D,UAAU,EAAE,IAAI,CAAC,qBAAqB,EAAE,qBAAqB,GAAG,iBAAiB,CAAC,CAAC;IACnF,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,YAAY,MAAM,EAAE,MAAM,EAAE,aAAa,GAAE,MAAM,GAAG,IAAW,EAK9D;CACF;AAyBD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AA0DD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,uBAAuB,GAAG,SAAS,CAmBlF"}
1
+ {"version":3,"file":"public-server.d.ts","sourceRoot":"","sources":["../src/public-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAiBL,KAAK,wBAAwB,EAK7B,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE,KAAK,mBAAmB,GAAG,uBAAuB,GAAG,wBAAwB,CAAC;AAE9E,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,SAAS,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3E,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,mBAAmB,CAAC,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC9D,UAAU,EAAE,IAAI,CAAC,qBAAqB,EAAE,qBAAqB,GAAG,iBAAiB,CAAC,CAAC;IACnF,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,YAAY,MAAM,EAAE,MAAM,EAAE,aAAa,GAAE,MAAM,GAAG,IAAW,EAK9D;CACF;AAoBD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AA6GD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,uBAAuB,GAAG,SAAS,CAgClF"}
@@ -1,5 +1,5 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import { normalizeGetTransactionsMcpInput, projectPublicMcpFinancialContext, projectPublicMcpTransactions, publicMcpToolDefinitions, publicMcpToolDescriptors, publicMcpToolPermissionContract, } from '@warmio/contracts/mcp';
2
+ import { HOSTED_MCP_WRITE_PERMISSION, describeHostedOperationMcpOutputSchema, findTransactionsMcpOutputSchema, getOperationStatusMcpOutputSchema, hostedWriteMcpToolDefinitions, hostedWriteMcpToolDescriptors, invokeHostedOperationMcpOutputSchema, normalizeGetTransactionsMcpInput, projectPublicMcpFinancialContext, projectPublicMcpTransactions, publicMcpToolDefinitions, publicMcpToolDescriptors, publicMcpToolPermissionContract, } from '@warmio/contracts/mcp';
3
3
  import { registerTools, structuredResult, WarmApiError, } from './server.js';
4
4
  export class HostedApiResultError extends Error {
5
5
  status;
@@ -14,12 +14,8 @@ export class HostedApiResultError extends Error {
14
14
  function publicErrorStatus(error) {
15
15
  if (error instanceof WarmApiError)
16
16
  return error.status;
17
- if (typeof error === 'object' && error !== null && 'status' in error) {
18
- const status = error.status;
19
- if (typeof status === 'number' && Number.isInteger(status) && status >= 400 && status <= 599) {
20
- return status;
21
- }
22
- }
17
+ if (error instanceof HostedApiResultError)
18
+ return error.status;
23
19
  return 500;
24
20
  }
25
21
  function publicErrorMessage(status) {
@@ -58,6 +54,9 @@ function publicToolFailure(error) {
58
54
  return structuredResult({ error: message, status }, true);
59
55
  }
60
56
  function publicCanonicalToolDescriptor(name) {
57
+ const hostedTool = hostedWriteMcpToolDescriptors.find((candidate) => candidate.name === name);
58
+ if (hostedTool)
59
+ return hostedTool;
61
60
  const tool = publicMcpToolDescriptors.find((candidate) => candidate.name === name);
62
61
  if (!tool)
63
62
  throw new Error(`Missing public MCP contract for ${name}.`);
@@ -81,6 +80,36 @@ function publicReadToolDefinitions(client) {
81
80
  },
82
81
  ];
83
82
  }
83
+ function hostedWriteDescriptor(name) {
84
+ const definition = hostedWriteMcpToolDefinitions.find((candidate) => candidate.name === name);
85
+ if (!definition)
86
+ throw new Error(`Missing hosted write MCP contract for ${name}.`);
87
+ return definition;
88
+ }
89
+ function hostedWriteToolHandlers(client) {
90
+ return [
91
+ {
92
+ ...hostedWriteDescriptor('find_transactions'),
93
+ hostedWrite: true,
94
+ handler: async (args) => await client.findTransactions(args),
95
+ },
96
+ {
97
+ ...hostedWriteDescriptor('describe_operation'),
98
+ hostedWrite: true,
99
+ handler: async (args) => await client.describeOperation(args),
100
+ },
101
+ {
102
+ ...hostedWriteDescriptor('invoke_operation'),
103
+ hostedWrite: true,
104
+ handler: async (args) => await client.invokeOperation(args),
105
+ },
106
+ {
107
+ ...hostedWriteDescriptor('get_operation_status'),
108
+ hostedWrite: true,
109
+ handler: async (args) => await client.getOperationStatus(args),
110
+ },
111
+ ];
112
+ }
84
113
  function publicPermissionForTool(name) {
85
114
  if (name === 'get_financial_context') {
86
115
  return publicMcpToolPermissionContract.byTool.get_financial_context;
@@ -88,11 +117,20 @@ function publicPermissionForTool(name) {
88
117
  if (name === 'get_transactions') {
89
118
  return publicMcpToolPermissionContract.byTool.get_transactions;
90
119
  }
120
+ if (name === 'find_transactions' ||
121
+ name === 'describe_operation' ||
122
+ name === 'invoke_operation' ||
123
+ name === 'get_operation_status') {
124
+ return HOSTED_MCP_WRITE_PERMISSION;
125
+ }
91
126
  throw new Error('Unsupported public MCP tool.');
92
127
  }
93
128
  export function createPublicWarmServer(options) {
94
129
  const server = new McpServer(options.serverInfo, options.jsonSchemaValidator ? { jsonSchemaValidator: options.jsonSchemaValidator } : undefined);
95
- registerTools(server, publicReadToolDefinitions(options.readClient), {
130
+ const writeTools = (options.allowedPermissions ?? []).includes(HOSTED_MCP_WRITE_PERMISSION)
131
+ ? hostedWriteToolHandlers(options.hostedWriteClient)
132
+ : [];
133
+ registerTools(server, [...publicReadToolDefinitions(options.readClient), ...writeTools], {
96
134
  authorizationDenied: () => structuredResult({ error: 'Forbidden', status: 403 }, true),
97
135
  authorize: (name) => options.authorize(publicPermissionForTool(name)),
98
136
  contractForTool: (name) => publicCanonicalToolDescriptor(name),
@@ -102,8 +140,22 @@ export function createPublicWarmServer(options) {
102
140
  return projectPublicMcpFinancialContext(result);
103
141
  if (name === 'get_transactions')
104
142
  return projectPublicMcpTransactions(result);
143
+ if (name === 'find_transactions')
144
+ return findTransactionsMcpOutputSchema.parse(result);
145
+ if (name === 'describe_operation')
146
+ return describeHostedOperationMcpOutputSchema.parse(result);
147
+ if (name === 'invoke_operation')
148
+ return invokeHostedOperationMcpOutputSchema.parse(result);
149
+ if (name === 'get_operation_status')
150
+ return getOperationStatusMcpOutputSchema.parse(result);
105
151
  throw new Error('Unsupported public MCP tool.');
106
152
  },
153
+ toolResultIsError: (name, result) => {
154
+ if (name !== 'invoke_operation')
155
+ return false;
156
+ const parsed = invokeHostedOperationMcpOutputSchema.safeParse(result);
157
+ return parsed.success && parsed.data.execution_status === 'failed';
158
+ },
107
159
  toolFailure: publicToolFailure,
108
160
  unknownToolMessage: () => 'Unknown tool',
109
161
  });
@@ -1 +1 @@
1
- {"version":3,"file":"public-server.js","sourceRoot":"","sources":["../src/public-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-server.js","sourceRoot":"","sources":["../src/public-server.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import { type Implementation, type ToolAnnotations } from '@modelcontextprotocol/sdk/types.js';
3
3
  import { z, type ZodRawShape } from 'zod';
4
- import { getTransactionsMcpInputSchema, privateMcpToolDefinitions, type PublicMcpToolDescriptor, type PrivateMcpToolDescriptor } from '@warmio/contracts/mcp';
5
- import { type ReadOnlyWarmApiClientOptions, type WarmApiClientOptions } from './warm-api-client.js';
4
+ import { describeHostedOperationMcpInputSchema, describeHostedOperationMcpOutputSchema, findTransactionsMcpInputSchema, findTransactionsMcpOutputSchema, getOperationStatusMcpInputSchema, getOperationStatusMcpOutputSchema, getTransactionsMcpInputSchema, invokeHostedOperationMcpInputSchema, invokeHostedOperationMcpOutputSchema, privateMcpToolDefinitions, publicMcpFinancialContextSchema, publicMcpLatestTransactionsSchema, publicMcpTransactionMonthSchema, type HostedWriteMcpToolDescriptor, type PublicMcpToolDescriptor, type PrivateMcpToolDescriptor } from '@warmio/contracts/mcp';
5
+ import { type ReadOnlyWarmApiClient, type ReadOnlyWarmApiClientOptions, type WarmApiClient, type WarmApiClientOptions } from './warm-api-client.js';
6
+ import type { GetTransactionsOutput } from './warm-api-client.js';
6
7
  export { createReadOnlyWarmApiClient, createWarmApiClient, getConfiguredApiKey, WarmApiError, } from './warm-api-client.js';
7
8
  export type { ReadOnlyWarmApiClientOptions, WarmApiClientOptions } from './warm-api-client.js';
8
9
  export interface WarmServerOptions extends WarmApiClientOptions {
@@ -19,24 +20,47 @@ type WarmToolDefinitionBase = {
19
20
  annotations?: ToolAnnotations;
20
21
  description: string;
21
22
  inputShape: ZodRawShape;
23
+ title?: string;
22
24
  };
23
- type DynamicMcpToolArguments = Record<string, unknown>;
25
+ type NonHostedWarmToolDefinitionBase = WarmToolDefinitionBase & {
26
+ hostedWrite?: false;
27
+ };
28
+ declare const dynamicMcpToolArgumentsSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
29
+ type DynamicMcpToolArguments = z.infer<typeof dynamicMcpToolArgumentsSchema>;
24
30
  export type GetTransactionsMcpInput = z.infer<typeof getTransactionsMcpInputSchema>;
25
- export type WarmToolDefinition = (WarmToolDefinitionBase & {
31
+ type WarmToolResult = Awaited<ReturnType<ReadOnlyWarmApiClient['getFinancialContext']>> | GetTransactionsOutput | Awaited<ReturnType<WarmApiClient['searchOperations']>> | Awaited<ReturnType<WarmApiClient['describeOperation']>> | Awaited<ReturnType<WarmApiClient['invokeOperation']>> | z.infer<typeof publicMcpFinancialContextSchema> | z.infer<typeof publicMcpLatestTransactionsSchema> | z.infer<typeof publicMcpTransactionMonthSchema> | z.infer<typeof findTransactionsMcpOutputSchema> | z.infer<typeof describeHostedOperationMcpOutputSchema> | z.infer<typeof invokeHostedOperationMcpOutputSchema> | z.infer<typeof getOperationStatusMcpOutputSchema>;
32
+ export type WarmToolDefinition = (NonHostedWarmToolDefinitionBase & {
26
33
  name: 'get_transactions';
27
- handler: (args: GetTransactionsMcpInput) => Promise<object>;
34
+ handler: (args: GetTransactionsMcpInput) => Promise<WarmToolResult>;
35
+ }) | (WarmToolDefinitionBase & {
36
+ name: 'find_transactions';
37
+ hostedWrite: true;
38
+ handler: (args: z.infer<typeof findTransactionsMcpInputSchema>) => Promise<WarmToolResult>;
39
+ }) | (WarmToolDefinitionBase & {
40
+ name: 'describe_operation';
41
+ hostedWrite: true;
42
+ handler: (args: z.infer<typeof describeHostedOperationMcpInputSchema>) => Promise<WarmToolResult>;
43
+ }) | (WarmToolDefinitionBase & {
44
+ name: 'invoke_operation';
45
+ hostedWrite: true;
46
+ handler: (args: z.infer<typeof invokeHostedOperationMcpInputSchema>) => Promise<WarmToolResult>;
28
47
  }) | (WarmToolDefinitionBase & {
48
+ name: 'get_operation_status';
49
+ hostedWrite: true;
50
+ handler: (args: z.infer<typeof getOperationStatusMcpInputSchema>) => Promise<WarmToolResult>;
51
+ }) | (NonHostedWarmToolDefinitionBase & {
29
52
  name: Exclude<(typeof privateMcpToolDefinitions)[number]['name'], 'get_transactions'>;
30
- handler: (args: DynamicMcpToolArguments) => Promise<object>;
53
+ handler: (args: DynamicMcpToolArguments) => Promise<WarmToolResult>;
31
54
  });
32
- type McpContractDescriptor = PrivateMcpToolDescriptor | PublicMcpToolDescriptor;
55
+ type McpContractDescriptor = PrivateMcpToolDescriptor | PublicMcpToolDescriptor | HostedWriteMcpToolDescriptor;
33
56
  type ToolRegistrationOptions = {
34
57
  authorize?: (name: WarmToolDefinition['name']) => boolean | Promise<boolean>;
35
58
  authorizationDenied?: () => ReturnType<typeof structuredResult>;
36
59
  contractForTool?: (name: WarmToolDefinition['name']) => McpContractDescriptor;
37
60
  invalidArgumentsMessage?: (name: WarmToolDefinition['name']) => string;
38
- projectResult?: (name: WarmToolDefinition['name'], result: object) => object;
39
- toolFailure?: (error: unknown) => ReturnType<typeof structuredResult>;
61
+ projectResult?: (name: WarmToolDefinition['name'], result: WarmToolResult) => WarmToolResult;
62
+ toolResultIsError?: (name: WarmToolDefinition['name'], result: WarmToolResult) => boolean;
63
+ toolFailure?: (error: Error) => ReturnType<typeof structuredResult>;
40
64
  unknownToolMessage?: (name: string) => string;
41
65
  };
42
66
  export declare function structuredResult(value: object, isError?: boolean): {
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
3
3
  import { CallToolRequestSchema, ErrorCode, ListToolsRequestSchema, McpError, } from '@modelcontextprotocol/sdk/types.js';
4
4
  import { z } from 'zod';
5
- import { getTransactionsMcpInputSchema, normalizeGetTransactionsMcpInput, privateMcpToolDefinitions, privateMcpToolDescriptors, WARM_MCP_PACKAGE_VERSION, } from '@warmio/contracts/mcp';
5
+ import { describeHostedOperationMcpInputSchema, findTransactionsMcpInputSchema, getOperationStatusMcpInputSchema, getTransactionsMcpInputSchema, invokeHostedOperationMcpInputSchema, normalizeGetTransactionsMcpInput, privateMcpToolDefinitions, privateMcpToolDescriptors, WARM_MCP_PACKAGE_VERSION, } from '@warmio/contracts/mcp';
6
6
  import { automationInputSchema } from '@warmio/contracts/schemas';
7
7
  import { createReadOnlyWarmApiClient, createWarmApiClient, WarmApiError, } from './warm-api-client.js';
8
8
  export { createReadOnlyWarmApiClient, createWarmApiClient, getConfiguredApiKey, WarmApiError, } from './warm-api-client.js';
@@ -10,6 +10,7 @@ export const WARM_SERVER_INFO = {
10
10
  name: 'warm',
11
11
  version: WARM_MCP_PACKAGE_VERSION,
12
12
  };
13
+ const dynamicMcpToolArgumentsSchema = z.record(z.string(), z.unknown());
13
14
  // oxlint-disable-next-line anti-slop/no-object-parameters -- MCP structured content requires a JSON object result.
14
15
  export function structuredResult(value, isError = false) {
15
16
  return {
@@ -36,6 +37,42 @@ function canonicalToolDescriptor(name) {
36
37
  throw new Error(`Missing MCP contract for ${name}.`);
37
38
  return tool;
38
39
  }
40
+ async function parseHostedToolArguments(schema, args, name, options) {
41
+ const parsed = await schema.safeParseAsync(args ?? {});
42
+ if (!parsed.success) {
43
+ throw new McpError(ErrorCode.InvalidParams, options.invalidArgumentsMessage?.(name) ??
44
+ `Invalid arguments for tool ${name}: ${parsed.error.message}`);
45
+ }
46
+ return parsed.data;
47
+ }
48
+ async function invokeHostedWriteTool(tool, args, options, invoke) {
49
+ if (tool.name === 'find_transactions') {
50
+ const parsed = await parseHostedToolArguments(findTransactionsMcpInputSchema, args, tool.name, options);
51
+ return await invoke(tool.name, () => tool.handler(parsed));
52
+ }
53
+ if (tool.name === 'describe_operation') {
54
+ const parsed = await parseHostedToolArguments(describeHostedOperationMcpInputSchema, args, tool.name, options);
55
+ return await invoke(tool.name, () => tool.handler(parsed));
56
+ }
57
+ if (tool.name === 'invoke_operation') {
58
+ const parsed = await parseHostedToolArguments(invokeHostedOperationMcpInputSchema, args, tool.name, options);
59
+ return await invoke(tool.name, () => tool.handler(parsed));
60
+ }
61
+ const parsed = await parseHostedToolArguments(getOperationStatusMcpInputSchema, args, tool.name, options);
62
+ return await invoke(tool.name, () => tool.handler(parsed));
63
+ }
64
+ async function authorizeToolCall(tool, options) {
65
+ if (!options.authorize)
66
+ return null;
67
+ try {
68
+ if (await options.authorize(tool.name))
69
+ return null;
70
+ return options.authorizationDenied?.() ?? structuredResult({ error: 'Forbidden' }, true);
71
+ }
72
+ catch (error) {
73
+ return (options.toolFailure ?? toolFailure)(error instanceof Error ? error : new Error('Request failed'));
74
+ }
75
+ }
39
76
  function mcpOutputSchema(outputSchema) {
40
77
  return 'type' in outputSchema && outputSchema.type === 'object'
41
78
  ? outputSchema
@@ -81,13 +118,14 @@ export function registerTools(server, tools, options = {}) {
81
118
  if (!isMcpToolInputSchema(inputSchema)) {
82
119
  throw new Error(`Invalid MCP input schema for ${tool.name}.`);
83
120
  }
84
- return {
121
+ const listedTool = {
85
122
  annotations: tool.annotations,
86
123
  description: tool.description,
87
124
  inputSchema,
88
125
  outputSchema: mcpOutputSchema(contract.output_schema),
89
126
  name: tool.name,
90
127
  };
128
+ return 'title' in contract ? { ...listedTool, title: contract.title } : listedTool;
91
129
  }),
92
130
  }));
93
131
  server.server.setRequestHandler(CallToolRequestSchema, async (request) => {
@@ -99,22 +137,17 @@ export function registerTools(server, tools, options = {}) {
99
137
  const result = await handler();
100
138
  const output = options.projectResult?.(name, result) ?? result;
101
139
  const invokeStatus = z.object({ status: z.number() }).safeParse(output);
102
- return structuredResult(output, name === 'invoke_operation' && invokeStatus.success && invokeStatus.data.status >= 400);
140
+ const isError = options.toolResultIsError?.(name, output) ??
141
+ (name === 'invoke_operation' && invokeStatus.success && invokeStatus.data.status >= 400);
142
+ return structuredResult(output, isError);
103
143
  }
104
144
  catch (error) {
105
- return (options.toolFailure ?? toolFailure)(error);
145
+ return (options.toolFailure ?? toolFailure)(error instanceof Error ? error : new Error('Request failed'));
106
146
  }
107
147
  };
108
- if (options.authorize) {
109
- try {
110
- if (!(await options.authorize(tool.name))) {
111
- return options.authorizationDenied?.() ?? structuredResult({ error: 'Forbidden' }, true);
112
- }
113
- }
114
- catch (error) {
115
- return (options.toolFailure ?? toolFailure)(error);
116
- }
117
- }
148
+ const denied = await authorizeToolCall(tool, options);
149
+ if (denied !== null)
150
+ return denied;
118
151
  if (tool.name === 'get_transactions') {
119
152
  const parsed = await getTransactionsMcpInputSchema.safeParseAsync(request.params.arguments ?? {});
120
153
  if (!parsed.success)
@@ -122,6 +155,9 @@ export function registerTools(server, tools, options = {}) {
122
155
  `Invalid arguments for tool ${tool.name}: ${parsed.error.message}`);
123
156
  return await invoke(tool.name, () => tool.handler(parsed.data));
124
157
  }
158
+ if (tool.hostedWrite === true) {
159
+ return await invokeHostedWriteTool(tool, request.params.arguments, options, invoke);
160
+ }
125
161
  const parsed = await z
126
162
  .object(tool.inputShape)
127
163
  .strict()
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,2HAA2H;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,sBAAsB,EACtB,QAAQ,GAIT,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAoB,MAAM,KAAK,CAAC;AAC1C,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,EAChC,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,GAGzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EAKnB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAU9B,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,wBAAwB;CAClC,CAAC;AA+BF,mHAAmH;AACnH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,OAAO,GAAG,KAAK;IAC7D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,yGAAyG;AACzG,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QAClC,OAAO,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACnG,CAAC;AAGD,SAAS,UAAU,CACjB,IAAU;IAEV,MAAM,UAAU,GAAG,yBAAyB,CAAC,IAAI,CAC/C,CAAC,SAAS,EAAkE,EAAE,CAC5E,SAAS,CAAC,IAAI,KAAK,IAAI,CAC1B,CAAC;IACF,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;IACtE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACpF,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,YAAoD;IAC3E,OAAO,MAAM,IAAI,YAAY,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ;QAC7D,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAkE;IAElE,OAAO,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AACpD,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA6B;IACxD,OAAO;QACL;YACE,GAAG,UAAU,CAAC,uBAAuB,CAAC;YACtC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,mBAAmB,EAAE;SACxD;QACD;YACE,GAAG,UAAU,CAAC,kBAAkB,CAAC;YACjC,OAAO,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE,CAC/C,MAAM,MAAM,CAAC,eAAe,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAC;SACvE;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAqB;IACtD,OAAO;QACL;YACE,GAAG,UAAU,CAAC,mBAAmB,CAAC;YAClC,OAAO,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE,CAC/C,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC5E;QACD;YACE,GAAG,UAAU,CAAC,oBAAoB,CAAC;YACnC,OAAO,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE,CAC/C,MAAM,MAAM,CAAC,iBAAiB,CAC5B,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EACtC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CACtD;SACJ;QACD;YACE,GAAG,UAAU,CAAC,kBAAkB,CAAC;YACjC,OAAO,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE,CAC/C,MAAM,MAAM,CAAC,eAAe,CAC1B,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EACtC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EACrD,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CACxD;SACJ;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,MAAiB,EACjB,KAA2B,EAC3B,OAAO,GAA4B,EAAE;IAErC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7D,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5F,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YAChE,CAAC;YACD,OAAO;gBACL,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,YAAY,EAAE,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC;gBACrD,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;QACJ,CAAC,CAAC;KACH,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACvE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,OAAO,CAAC,MAAM,CAAC,IAAI,YAAY,CAC7F,CAAC;QAEJ,MAAM,MAAM,GAAG,KAAK,EAAE,IAAgC,EAAE,OAA8B,EAAE,EAAE;YACxF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC;gBAC/D,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACxE,OAAO,gBAAgB,CACrB,MAAM,EACN,IAAI,KAAK,kBAAkB,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,GAAG,CACvF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBAC1C,OAAO,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3F,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC,cAAc,CAC/D,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAC/B,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,OAAO;gBACjB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,OAAO,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC1C,8BAA8B,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CACrE,CAAC;YACJ,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC;aACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;aACvB,MAAM,EAAE;aACR,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,OAAO,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,8BAA8B,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CACrE,CAAC;QACJ,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,gBAAgB,CAAC,OAAO,GAAsB,EAAE;IAC9D,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,UAAU,IAAI,gBAAgB,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAClD,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,wBAAwB,CAAC,OAAkC;IACzE,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,UAAU,IAAI,gBAAgB,CAAC,CAAC;IAC7D,aAAa,CAAC,MAAM,EAAE,mBAAmB,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvF,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warmio/mcp",
3
- "version": "11.0.10",
3
+ "version": "11.0.11",
4
4
  "description": "Warm local stdio MCP server",
5
5
  "type": "module",
6
6
  "engines": {
@@ -60,7 +60,7 @@
60
60
  "dependencies": {
61
61
  "@cfworker/json-schema": "4.1.1",
62
62
  "@modelcontextprotocol/sdk": "^1.32.1",
63
- "@warmio/contracts": "3.0.6",
63
+ "@warmio/contracts": "3.0.7",
64
64
  "dotenv": "^17.2.3",
65
65
  "jsonc-parser": "^3.3.1",
66
66
  "zod": "^3.25.76"