@warmio/mcp 11.0.14 → 11.2.0

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
@@ -12,6 +12,17 @@ Each client starts the server with the canonical latest launcher spec from `@war
12
12
  npx -y @warmio/mcp@latest mcp
13
13
  ```
14
14
 
15
+ ## Sign in with a browser
16
+
17
+ You can sign in with your Warm account instead of an API key:
18
+
19
+ ```sh
20
+ npx -y @warmio/mcp@latest login
21
+ claude mcp add warm -- npx -y @warmio/mcp@latest mcp
22
+ ```
23
+
24
+ `login` opens Warm in your browser, asks you to approve access, and stores the sign-in in your Warm config folder with owner-only permissions. Unless `WARM_API_KEY` is set in the environment, `mcp` then uses that sign-in ahead of any saved API key and connects your AI app to the hosted Warm MCP server with that sign-in and refreshes it as needed. It offers the same tools as the hosted server. Run `npx -y @warmio/mcp@latest logout` to revoke and delete it.
25
+
15
26
  The server exposes financial-context read tools plus the automation operation catalog. The installer stores the local credential with owner-only file permissions. Importing `@warmio/mcp` exposes the library API without starting the CLI.
16
27
 
17
28
  For writes, call `describe_operation` with the exact input first. When `approval.status` is `approved`, invoke the change right away with its approval id and the same input. When it is `pending`, show the user `approval_url` and wait for approval in Warm. Users can enable automatic write approval only from their signed-in Warm Settings session; automation tools cannot change that preference. Every approval keeps its expiry and can be used once.
@@ -20,7 +31,9 @@ For writes, call `describe_operation` with the exact input first. When `approval
20
31
 
21
32
  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.
22
33
 
23
- Hosted API keys, free hosted MCP access, and read-only OAuth grants list `get_financial_context` and `get_transactions`. Paid OAuth grants with read and write access list seven tools: `get_financial_context`, `get_transactions`, `find_transactions`, `get_findings`, `describe_operation`, `invoke_operation`, and `get_operation_status`. The local installer and its five tools stay the same. API key users can also read findings through catalog operation `findings.list` at `GET /api/pwa/findings`. 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"`.
34
+ Hosted API keys, free hosted MCP access, and read-only OAuth grants list `get_financial_context` and `get_transactions`. Paid OAuth grants with read and write access list eight tools: `get_financial_context`, `get_transactions`, `find_transactions`, `get_findings`, `get_card_benefits`, `describe_operation`, `invoke_operation`, and `get_operation_status`. The local installer and its five tools stay the same. API key users can read findings through catalog operation `findings.list` at `GET /api/pwa/findings` and card benefits through `card_benefits.list` at `GET /api/pwa/card-benefits`. 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"`.
35
+
36
+ Card names seeded from OpenCard DB, CC BY 4.0, adapted. Benefit text is written by Warm from issuer pages.
24
37
 
25
38
  Claude Code:
26
39
 
@@ -92,7 +105,7 @@ OAuth tokens are valid only for the hosted MCP endpoint. They do not authenticat
92
105
 
93
106
  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.
94
107
 
95
- 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.
108
+ Access tokens expire after 30 minutes. The grant expires 90 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.
96
109
 
97
110
  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.
98
111
 
package/dist/cli.js CHANGED
@@ -1,11 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
- import { assertWarmMcpLauncherContract, maybeRequireWarmMcpRegistryIntegrity, WARM_MCP_MANIFEST, WARM_MCP_INSTALLER_COMMAND, WARM_MCP_SERVER_COMMAND, } from '@warmio/contracts/mcp';
3
+ import { assertWarmMcpLauncherContract, maybeRequireWarmMcpRegistryIntegrity, WARM_MCP_CREDENTIALS, WARM_MCP_MANIFEST, WARM_MCP_INSTALLER_COMMAND, WARM_MCP_SERVER_COMMAND, } from '@warmio/contracts/mcp';
4
+ import { runHostedBridge } from './hosted-bridge.js';
4
5
  import { install } from './install.js';
5
6
  import { loadDotEnv } from './load-env.js';
7
+ import { login, logout, readWarmOAuthTokens } from './oauth-login.js';
6
8
  import { createWarmServer } from './server.js';
7
9
  function usage() {
8
- console.log(`Usage: ${WARM_MCP_INSTALLER_COMMAND} [--force] | ${WARM_MCP_SERVER_COMMAND}`);
10
+ console.log(`Usage: ${WARM_MCP_INSTALLER_COMMAND} [--force] | ${WARM_MCP_SERVER_COMMAND} | login | logout`);
9
11
  }
10
12
  async function main(args) {
11
13
  loadDotEnv();
@@ -13,10 +15,21 @@ async function main(args) {
13
15
  if (command === 'mcp') {
14
16
  assertWarmMcpLauncherContract(WARM_MCP_MANIFEST);
15
17
  maybeRequireWarmMcpRegistryIntegrity(WARM_MCP_MANIFEST.packageIntegrity.registryIntegrity);
18
+ const environmentApiKey = process.env[WARM_MCP_CREDENTIALS.apiKeyEnv]?.trim();
19
+ if (!environmentApiKey && readWarmOAuthTokens() !== undefined) {
20
+ await runHostedBridge();
21
+ return;
22
+ }
16
23
  const server = createWarmServer();
17
24
  await server.connect(new StdioServerTransport());
18
25
  return;
19
26
  }
27
+ if (command === 'login' || command === 'logout') {
28
+ if (args.length > 1)
29
+ throw new Error(`Unknown argument: ${args[1]}`);
30
+ await (command === 'login' ? login() : logout());
31
+ return;
32
+ }
20
33
  if (command === 'install') {
21
34
  const invalidArgument = args.slice(1).find((argument) => argument !== '--force');
22
35
  if (invalidArgument)
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,6BAA6B,EAC7B,oCAAoC,EACpC,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,SAAS,KAAK;IACZ,OAAO,CAAC,GAAG,CAAC,UAAU,0BAA0B,gBAAgB,uBAAuB,EAAE,CAAC,CAAC;AAC7F,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,IAAc;IAChC,UAAU,EAAE,CAAC;IACb,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC7F,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,6BAA6B,CAAC,iBAAiB,CAAC,CAAC;QACjD,oCAAoC,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC3F,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAClC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;QACjF,IAAI,eAAe;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,eAAe,EAAE,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IACD,KAAK,EAAE,CAAC;IACR,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC/C,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { WarmCliOAuthProvider } from './oauth-login.js';
2
+ type HostedBridgeOptions = {
3
+ fetchImplementation?: typeof fetch;
4
+ provider?: WarmCliOAuthProvider;
5
+ };
6
+ export declare function runHostedBridge(options?: HostedBridgeOptions): Promise<void>;
7
+ export {};
8
+ //# sourceMappingURL=hosted-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-bridge.d.ts","sourceRoot":"","sources":["../src/hosted-bridge.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,oBAAoB,EAErB,MAAM,kBAAkB,CAAC;AAQ1B,KAAK,mBAAmB,GAAG;IACzB,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;IACnC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAAC;AA0FF,wBAAsB,eAAe,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmDtF"}
@@ -0,0 +1,139 @@
1
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
2
+ import { ErrorCode, isJSONRPCNotification, isJSONRPCRequest, JSONRPCMessageSchema, } from '@modelcontextprotocol/sdk/types.js';
3
+ import { z } from 'zod';
4
+ import { refreshWarmOAuthTokens, WARM_HOSTED_MCP_URL, WarmCliOAuthProvider, WarmLoginRequiredError, } from './oauth-login.js';
5
+ const HOSTED_REQUEST_TIMEOUT_MS = 60_000;
6
+ const hostedErrorBodySchema = z.object({ error: z.string().min(1) }).passthrough();
7
+ const cancelledParamsSchema = z
8
+ .object({ requestId: z.union([z.string(), z.number()]) })
9
+ .passthrough();
10
+ async function postToHosted(fetchImplementation, message, accessToken, signal) {
11
+ const headers = {
12
+ Accept: 'application/json, text/event-stream',
13
+ 'Content-Type': 'application/json',
14
+ };
15
+ if (accessToken !== undefined)
16
+ headers['Authorization'] = `Bearer ${accessToken}`;
17
+ return fetchImplementation(WARM_HOSTED_MCP_URL, {
18
+ method: 'POST',
19
+ headers,
20
+ body: JSON.stringify(message),
21
+ signal,
22
+ });
23
+ }
24
+ async function forwardWithRefresh(fetchImplementation, provider, message, signal) {
25
+ const firstToken = provider.tokens()?.access_token;
26
+ const first = await postToHosted(fetchImplementation, message, firstToken, signal);
27
+ if (first.status !== 401)
28
+ return first;
29
+ await refreshWarmOAuthTokens(provider, firstToken, fetchImplementation);
30
+ const second = await postToHosted(fetchImplementation, message, provider.tokens()?.access_token, signal);
31
+ if (second.status === 401)
32
+ throw new WarmLoginRequiredError();
33
+ return second;
34
+ }
35
+ function hostedErrorMessage(response, text) {
36
+ let detail = `Warm returned HTTP ${response.status}.`;
37
+ try {
38
+ const parsed = hostedErrorBodySchema.safeParse(JSON.parse(text));
39
+ if (parsed.success)
40
+ detail = parsed.data.error;
41
+ }
42
+ catch {
43
+ detail = `Warm returned HTTP ${response.status}.`;
44
+ }
45
+ const retryAfter = response.headers.get('retry-after');
46
+ if ((response.status === 429 || response.status === 503) && retryAfter !== null) {
47
+ return `${detail} Try again in ${retryAfter} seconds.`;
48
+ }
49
+ if (response.status === 403)
50
+ return `${detail} ${new WarmLoginRequiredError().message}`;
51
+ return detail;
52
+ }
53
+ function decodeHostedBody(response, text) {
54
+ const contentType = response.headers.get('content-type') ?? '';
55
+ if (contentType.includes('text/event-stream')) {
56
+ return text
57
+ .split(/\r?\n/u)
58
+ .filter((line) => line.startsWith('data:'))
59
+ .map((line) => JSON.parse(line.slice('data:'.length)));
60
+ }
61
+ const decoded = JSON.parse(text);
62
+ return Array.isArray(decoded) ? decoded : [decoded];
63
+ }
64
+ async function readHostedMessages(response) {
65
+ if (response.status === 202)
66
+ return [];
67
+ const text = await response.text();
68
+ const contentType = response.headers.get('content-type') ?? '';
69
+ const isMessageBody = contentType.includes('application/json') || contentType.includes('text/event-stream');
70
+ if (!response.ok && !isMessageBody)
71
+ throw new Error(hostedErrorMessage(response, text));
72
+ if (text.trim() === '')
73
+ return [];
74
+ let items;
75
+ try {
76
+ items = decodeHostedBody(response, text);
77
+ }
78
+ catch {
79
+ throw new Error(hostedErrorMessage(response, text));
80
+ }
81
+ return items.map((item) => {
82
+ const parsed = JSONRPCMessageSchema.safeParse(item);
83
+ if (!parsed.success)
84
+ throw new Error(hostedErrorMessage(response, text));
85
+ return parsed.data;
86
+ });
87
+ }
88
+ export async function runHostedBridge(options = {}) {
89
+ const fetchImplementation = options.fetchImplementation ?? fetch;
90
+ const provider = options.provider ?? new WarmCliOAuthProvider();
91
+ const transport = new StdioServerTransport();
92
+ const inFlight = new Map();
93
+ const cancelledIds = new Set();
94
+ const send = (reply) => transport.send(reply).catch(() => undefined);
95
+ transport.onmessage = (message) => {
96
+ if (isJSONRPCNotification(message) && message.method === 'notifications/cancelled') {
97
+ const cancelled = cancelledParamsSchema.safeParse(message.params);
98
+ const controller = cancelled.success ? inFlight.get(cancelled.data.requestId) : undefined;
99
+ if (cancelled.success && controller !== undefined) {
100
+ cancelledIds.add(cancelled.data.requestId);
101
+ controller.abort();
102
+ }
103
+ return;
104
+ }
105
+ const controller = new AbortController();
106
+ const timer = setTimeout(() => controller.abort(), HOSTED_REQUEST_TIMEOUT_MS);
107
+ const requestId = isJSONRPCRequest(message) ? message.id : undefined;
108
+ if (requestId !== undefined)
109
+ inFlight.set(requestId, controller);
110
+ void (async () => {
111
+ try {
112
+ const response = await forwardWithRefresh(fetchImplementation, provider, message, controller.signal);
113
+ for (const reply of await readHostedMessages(response))
114
+ await send(reply);
115
+ }
116
+ catch (error) {
117
+ if (requestId === undefined || cancelledIds.has(requestId))
118
+ return;
119
+ await send({
120
+ jsonrpc: '2.0',
121
+ id: requestId,
122
+ error: {
123
+ code: ErrorCode.InternalError,
124
+ message: error instanceof Error ? error.message : String(error),
125
+ },
126
+ });
127
+ }
128
+ finally {
129
+ clearTimeout(timer);
130
+ if (requestId !== undefined) {
131
+ inFlight.delete(requestId);
132
+ cancelledIds.delete(requestId);
133
+ }
134
+ }
135
+ })();
136
+ };
137
+ await transport.start();
138
+ }
139
+ //# sourceMappingURL=hosted-bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-bridge.js","sourceRoot":"","sources":["../src/hosted-bridge.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export declare const HOSTED_MCP_MAX_REQUEST_BYTES = 65536;
3
3
  type HostedDispatch = (request: Request) => Promise<Response>;
4
4
  export interface HostedReadOnlyMcpDependencies {
5
5
  allowedPermissions?: readonly (PublicMcpToolPermission | HostedMcpWritePermission)[];
6
+ appUi?: boolean;
6
7
  concurrencyKey: string;
7
8
  dispatchApi: HostedDispatch;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hosted-http.d.ts","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"AAGA,OAAO,EAaL,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;AAwOD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,6BAA6B,GAC1C,OAAO,CAAC,QAAQ,CAAC,CAkFnB"}
1
+ {"version":3,"file":"hosted-http.d.ts","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"AAGA,OAAO,EAeL,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,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,cAAc,CAAC;CAC7B;AA0OD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,6BAA6B,GAC1C,OAAO,CAAC,QAAQ,CAAC,CA0FnB"}
@@ -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 { HOSTED_MCP_WRITE_PERMISSION, describeHostedOperationMcpOutputSchema, findingsResponseSchema, findTransactionsMcpOutputSchema, getOperationStatusMcpOutputSchema, invokeHostedOperationMcpOutputSchema, transactionPeriodsMcpOutputSchema, WARM_MCP_PACKAGE_VERSION, } from '@warmio/contracts/mcp';
4
+ import { HOSTED_MCP_WRITE_PERMISSION, cardBenefitsResponseSchema, describeHostedOperationMcpOutputSchema, findingsResponseSchema, 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';
@@ -228,7 +228,10 @@ export async function handleHostedReadOnlyMcpRequest(request, dependencies) {
228
228
  getFinancialContext: () => readDispatch(dependencies, financialContextRequest(origin, headers), parseFinancialContext),
229
229
  getTransactions: async (input) => {
230
230
  if ('periods' in input) {
231
- const periods = await Promise.all(input.periods.map((month) => readDispatch(dependencies, transactionsRequest(origin, headers, { month }), parseTransactionMonth)));
231
+ const periods = [];
232
+ for (const month of input.periods) {
233
+ periods.push(await readDispatch(dependencies, transactionsRequest(origin, headers, { month }), parseTransactionMonth));
234
+ }
232
235
  return transactionPeriodsMcpOutputSchema.parse({ periods });
233
236
  }
234
237
  return readDispatch(dependencies, transactionsRequest(origin, headers, input), parseTransactions);
@@ -237,12 +240,15 @@ export async function handleHostedReadOnlyMcpRequest(request, dependencies) {
237
240
  hostedWriteClient: {
238
241
  findTransactions: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/find-transactions', input), (text) => parseHostedOutput(findTransactionsMcpOutputSchema, text)),
239
242
  getFindings: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/findings', input), (text) => parseHostedOutput(findingsResponseSchema, text)),
243
+ getCardBenefits: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/card-benefits', input), (text) => parseHostedOutput(cardBenefitsResponseSchema, text)),
240
244
  describeOperation: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/describe-operation', input), (text) => parseHostedOutput(describeHostedOperationMcpOutputSchema, text)),
241
245
  invokeOperation: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/invoke-operation', input), (text) => parseHostedOutput(invokeHostedOperationMcpOutputSchema, text)),
242
246
  getOperationStatus: (input) => readDispatch(dependencies, hostedWriteRequest(origin, headers, '/api/mcp/hosted/operation-status', input), (text) => parseHostedOutput(getOperationStatusMcpOutputSchema, text)),
243
247
  },
244
248
  serverInfo: { name: 'warm', version: WARM_MCP_PACKAGE_VERSION },
245
249
  };
250
+ if (dependencies.appUi === true)
251
+ serverOptions.appUi = true;
246
252
  if (dependencies.allowedPermissions !== undefined) {
247
253
  serverOptions.allowedPermissions = dependencies.allowedPermissions;
248
254
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hosted-http.js","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AACzH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACL,2BAA2B,EAC3B,sCAAsC,EACtC,sBAAsB,EACtB,+BAA+B,EAE/B,iCAAiC,EACjC,oCAAoC,EACpC,iCAAiC,EACjC,wBAAwB,GAOzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GAEpB,MAAM,oBAAoB,CAAC;AAI5B,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AACnD,MAAM,6BAA6B,GAAG,UAAU,CAAC;AACjD,MAAM,wBAAwB,GAAG,6CAA6C,CAAC;AAC/E,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAChD,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5E,MAAM,WAAW,GAAG,CAAC;KAClB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;KACtE,WAAW,EAAE,CAAC;AAEjB,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAUpD,SAAS,mBAAmB,CAC1B,UAA8D;IAE9D,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,wBAAwB,CAAC;QAC9B,KAAK,mBAAmB,CAAC;QACzB,KAAK,2BAA2B;YAC9B,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,WAAsE;IACrF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,WAAW,CAAC,CAAC;IACvF,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,WAAW,EAAE,CAAC,CAAC;IAC7E,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB;IACxC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,aAAa,KAAK,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IACxE,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAc,EAAE,OAAgB;IAC/D,OAAO,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC,EAAE;QAClE,OAAO;QACP,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAc,EACd,OAAgB,EAChB,KAA2D;IAE3D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,iCAAiC,CAAC,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,OAAO,IAAI,KAAK;QAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;;QAC5D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACtD,CAAC;AAeD,SAAS,kBAAkB,CACzB,MAAc,EACd,OAAgB,EAChB,IAAqB,EACrB,KAAuB;IAEvB,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,cAAc,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACvD,OAAO,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE;QACxC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAC3B,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAc,EACd,IAAY;IAEZ,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAkB;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM;YACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QACjC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC;IAC7B,CAAC;IACD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAgB;IACvC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACjE,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,EAA0B;IACvD,MAAM,OAAO,GAAG;QACd,MAAM,EAAE;YACN,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC;iBAC1D;aACF;YACD,OAAO,EAAE,IAAI;SACd;QACD,OAAO,EAAE,KAAK;QACd,EAAE;KACH,CAAC;IACF,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;QAC3C,MAAM,EAAE,GAAG;QACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAChD,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,QAAkB,EAClB,EAA0B;IAE1B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC7B,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM;YACrB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAC/B,IAAI,KAAK,GAAG,6BAA6B,EAAE,CAAC;gBAC1C,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACR,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,QAAQ;QAAE,OAAO,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC;IAC7B,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,iCAAiC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC;IACzC,MAAM,KAAK,GAAG,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,KAAK,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC;IACrC,OAAO,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,QAAkB;IACnD,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QAC3B,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QACjC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,mCAAmC,CAAC,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,YAA2C,EAC3C,OAAgB,EAChB,KAA0B;IAE1B,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC;IACxC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,QAAQ,IAAI,wBAAwB,EAAE,CAAC;QACzC,MAAM,IAAI,mBAAmB,CAAC,iDAAiD,CAAC,CAAC;IACnF,CAAC;IACD,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,CAAC;YAAS,CAAC;QACT,MAAM,SAAS,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,SAAS,GAAG,CAAC;YAAE,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;;YACpD,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,OAAgB,EAChB,YAA2C;IAE3C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,aAAa,GAA4B;QAC7C,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE,CACxB,mBAAmB,CAAC,UAAU,CAAC;YAC/B,CAAC,YAAY,CAAC,kBAAkB,KAAK,SAAS;gBAC5C,YAAY,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACzD,mBAAmB,EAAE,IAAI,2BAA2B,EAAE;QACtD,UAAU,EAAE;YACV,mBAAmB,EAAE,GAAG,EAAE,CACxB,YAAY,CAAC,YAAY,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC;YAC7F,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC/B,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC1B,YAAY,CACV,YAAY,EACZ,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAC/C,qBAAqB,CACtB,CACF,CACF,CAAC;oBACF,OAAO,iCAAiC,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBACD,OAAO,YAAY,CACjB,YAAY,EACZ,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAC3C,iBAAiB,CAClB,CAAC;YACJ,CAAC;SACF;QACD,iBAAiB,EAAE;YACjB,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1B,YAAY,CACV,YAAY,EACZ,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,mCAAmC,EAAE,KAAK,CAAC,EAC/E,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,+BAA+B,EAAE,IAAI,CAAC,CACnE;YACH,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,YAAY,CACV,YAAY,EACZ,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC,EACtE,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAC1D;YACH,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC3B,YAAY,CACV,YAAY,EACZ,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,oCAAoC,EAAE,KAAK,CAAC,EAChF,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAC1E;YACH,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CACzB,YAAY,CACV,YAAY,EACZ,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,kCAAkC,EAAE,KAAK,CAAC,EAC9E,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,oCAAoC,EAAE,IAAI,CAAC,CACxE;YACH,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5B,YAAY,CACV,YAAY,EACZ,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,kCAAkC,EAAE,KAAK,CAAC,EAC9E,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,iCAAiC,EAAE,IAAI,CAAC,CACrE;SAC2B;QAChC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE;KAChE,CAAC;IACF,IAAI,YAAY,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAClD,aAAa,CAAC,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,CAAC;IACrE,CAAC;IACD,MAAM,MAAM,GAAG,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,IAAI,wCAAwC,CAAC;QAC7D,kBAAkB,EAAE,IAAI;QACxB,kBAAkB,EAAE,4BAA4B;KACjD,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,MAAM,4BAA4B,CAAC,MAAM,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3F,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"hosted-http.js","sourceRoot":"","sources":["../src/hosted-http.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
- import type { DescribeHostedOperationMcpInput, DescribeHostedOperationMcpOutput, FindTransactionsMcpInput, FindTransactionsMcpOutput, findingsResponseSchema, GetOperationStatusMcpInput, GetOperationStatusMcpOutput, getFindingsMcpInputSchema, InvokeHostedOperationMcpInput, InvokeHostedOperationMcpOutput } from '@warmio/contracts/mcp';
1
+ import type { DescribeHostedOperationMcpInput, DescribeHostedOperationMcpOutput, FindTransactionsMcpInput, FindTransactionsMcpOutput, cardBenefitsResponseSchema, findingsResponseSchema, getCardBenefitsMcpInputSchema, GetOperationStatusMcpInput, GetOperationStatusMcpOutput, getFindingsMcpInputSchema, InvokeHostedOperationMcpInput, InvokeHostedOperationMcpOutput } from '@warmio/contracts/mcp';
2
2
  import type { z } from 'zod';
3
3
  type GetFindingsMcpInput = z.infer<typeof getFindingsMcpInputSchema>;
4
4
  type GetFindingsMcpOutput = z.infer<typeof findingsResponseSchema>;
5
+ type GetCardBenefitsMcpInput = z.infer<typeof getCardBenefitsMcpInputSchema>;
6
+ type GetCardBenefitsMcpOutput = z.infer<typeof cardBenefitsResponseSchema>;
5
7
  export interface HostedWriteMcpClient {
6
8
  describeOperation(input: DescribeHostedOperationMcpInput): Promise<DescribeHostedOperationMcpOutput>;
7
9
  findTransactions(input: FindTransactionsMcpInput): Promise<FindTransactionsMcpOutput>;
8
10
  getFindings(input: GetFindingsMcpInput): Promise<GetFindingsMcpOutput>;
11
+ getCardBenefits(input: GetCardBenefitsMcpInput): Promise<GetCardBenefitsMcpOutput>;
9
12
  getOperationStatus(input: GetOperationStatusMcpInput): Promise<GetOperationStatusMcpOutput>;
10
13
  invokeOperation(input: InvokeHostedOperationMcpInput): Promise<InvokeHostedOperationMcpOutput>;
11
14
  }
@@ -1 +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,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACrE,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEnE,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,WAAW,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvE,kBAAkB,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC5F,eAAe,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAChG"}
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,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACrE,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACnE,KAAK,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC7E,KAAK,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE3E,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,WAAW,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvE,eAAe,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACnF,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,43 @@
1
+ import { type OAuthClientProvider } from '@modelcontextprotocol/sdk/client/auth.js';
2
+ import { type OAuthClientInformationMixed, type OAuthClientMetadata, type OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
3
+ export declare const WARM_HOSTED_MCP_URL = "https://app.warm.io/mcp";
4
+ export declare const WARM_CLI_CLIENT_ID = "https://app.warm.io/oauth-clients/warm-cli.json";
5
+ export declare function getWarmOAuthTokenPath(): string;
6
+ export declare function readWarmOAuthTokens(): OAuthTokens | undefined;
7
+ export declare class WarmLoginRequiredError extends Error {
8
+ constructor();
9
+ }
10
+ type WarmCliOAuthProviderOptions = {
11
+ redirectUrl?: string;
12
+ onAuthorizationUrl?: (url: URL) => void;
13
+ inMemory?: boolean;
14
+ };
15
+ export declare class WarmCliOAuthProvider implements OAuthClientProvider {
16
+ private readonly options;
17
+ readonly clientMetadataUrl = "https://app.warm.io/oauth-clients/warm-cli.json";
18
+ private verifier;
19
+ private memoryTokens;
20
+ private lastReadRefreshToken;
21
+ private readonly expectedState;
22
+ constructor(options?: WarmCliOAuthProviderOptions);
23
+ get redirectUrl(): string;
24
+ get clientMetadata(): OAuthClientMetadata;
25
+ state(): string;
26
+ clientInformation(): OAuthClientInformationMixed;
27
+ tokens(): OAuthTokens | undefined;
28
+ saveTokens(tokens: OAuthTokens): void;
29
+ redirectToAuthorization(authorizationUrl: URL): void;
30
+ saveCodeVerifier(codeVerifier: string): void;
31
+ codeVerifier(): string;
32
+ invalidateCredentials(scope: 'all' | 'client' | 'tokens' | 'verifier' | 'discovery'): void;
33
+ private invalidateTokens;
34
+ }
35
+ export declare function refreshWarmOAuthTokens(provider: WarmCliOAuthProvider, failedAccessToken: string | undefined, fetchImplementation: typeof fetch): Promise<void>;
36
+ export type LoginOptions = {
37
+ output?: (message: string) => void;
38
+ openUrl?: (url: string) => void;
39
+ };
40
+ export declare function login(options?: LoginOptions): Promise<void>;
41
+ export declare function logout(options?: LoginOptions): Promise<void>;
42
+ export {};
43
+ //# sourceMappingURL=oauth-login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-login.d.ts","sourceRoot":"","sources":["../src/oauth-login.ts"],"names":[],"mappings":"AAKA,OAAO,EAAQ,KAAK,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC1F,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,WAAW,EACjB,MAAM,0CAA0C,CAAC;AAKlD,eAAO,MAAM,mBAAmB,4BAAsB,CAAC;AACvD,eAAO,MAAM,kBAAkB,oDAA8C,CAAC;AAU9E,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,wBAAgB,mBAAmB,IAAI,WAAW,GAAG,SAAS,CAa7D;AAwED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,cAGC;CACF;AAED,KAAK,2BAA2B,GAAG;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,qBAAa,oBAAqB,YAAW,mBAAmB;IAOlD,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,QAAQ,CAAC,iBAAiB,qDAAsB;IAChD,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyC;IAEvE,YAA6B,OAAO,GAAE,2BAAgC,EAAI;IAE1E,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,cAAc,IAAI,mBAAmB,CAQxC;IAED,KAAK,IAAI,MAAM,CAEd;IAED,iBAAiB,IAAI,2BAA2B,CAE/C;IAED,MAAM,IAAI,WAAW,GAAG,SAAS,CAKhC;IAED,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAMpC;IAED,uBAAuB,CAAC,gBAAgB,EAAE,GAAG,GAAG,IAAI,CAGnD;IAED,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAE3C;IAED,YAAY,IAAI,MAAM,CAGrB;IAED,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,IAAI,CAGzF;IAED,OAAO,CAAC,gBAAgB;CAOzB;AAID,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,oBAAoB,EAC9B,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,mBAAmB,EAAE,OAAO,KAAK,GAChC,OAAO,CAAC,IAAI,CAAC,CAcf;AAyED,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF,wBAAsB,KAAK,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6CrE;AAED,wBAAsB,MAAM,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBtE"}