@sardis/mcp-server 0.2.7 → 1.1.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.
Files changed (66) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/CLAUDE_DESKTOP_CONFIG.md +10 -19
  3. package/README.md +179 -221
  4. package/dist/api.d.ts +1 -1
  5. package/dist/api.d.ts.map +1 -1
  6. package/dist/api.js +4 -2
  7. package/dist/api.js.map +1 -1
  8. package/dist/cli.js +185 -20
  9. package/dist/cli.js.map +1 -1
  10. package/dist/config.d.ts +2 -0
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +3 -0
  13. package/dist/config.js.map +1 -1
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +4 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/tools/events.d.ts +7 -0
  19. package/dist/tools/events.d.ts.map +1 -0
  20. package/dist/tools/events.js +413 -0
  21. package/dist/tools/events.js.map +1 -0
  22. package/dist/tools/fiat.d.ts +2 -2
  23. package/dist/tools/fiat.d.ts.map +1 -1
  24. package/dist/tools/fiat.js +649 -266
  25. package/dist/tools/fiat.js.map +1 -1
  26. package/dist/tools/guardrails.d.ts +7 -0
  27. package/dist/tools/guardrails.d.ts.map +1 -0
  28. package/dist/tools/guardrails.js +379 -0
  29. package/dist/tools/guardrails.js.map +1 -0
  30. package/dist/tools/index.d.ts +29 -8
  31. package/dist/tools/index.d.ts.map +1 -1
  32. package/dist/tools/index.js +108 -5
  33. package/dist/tools/index.js.map +1 -1
  34. package/dist/tools/jobs.d.ts +17 -0
  35. package/dist/tools/jobs.d.ts.map +1 -0
  36. package/dist/tools/jobs.js +583 -0
  37. package/dist/tools/jobs.js.map +1 -0
  38. package/dist/tools/payments.d.ts +2 -0
  39. package/dist/tools/payments.d.ts.map +1 -1
  40. package/dist/tools/payments.js +2 -0
  41. package/dist/tools/payments.js.map +1 -1
  42. package/dist/tools/policy.d.ts.map +1 -1
  43. package/dist/tools/policy.js +32 -4
  44. package/dist/tools/policy.js.map +1 -1
  45. package/dist/tools/sandbox.js +1 -1
  46. package/dist/tools/trust.d.ts +7 -0
  47. package/dist/tools/trust.d.ts.map +1 -0
  48. package/dist/tools/trust.js +188 -0
  49. package/dist/tools/trust.js.map +1 -0
  50. package/dist/tools/types.d.ts +51 -0
  51. package/dist/tools/types.d.ts.map +1 -1
  52. package/dist/tools/types.js +20 -0
  53. package/dist/tools/types.js.map +1 -1
  54. package/dist/tools/wallet-management.d.ts.map +1 -1
  55. package/dist/tools/wallet-management.js +55 -45
  56. package/dist/tools/wallet-management.js.map +1 -1
  57. package/dist/tools/x402.d.ts +12 -0
  58. package/dist/tools/x402.d.ts.map +1 -0
  59. package/dist/tools/x402.js +299 -0
  60. package/dist/tools/x402.js.map +1 -0
  61. package/dist/version.d.ts +2 -0
  62. package/dist/version.d.ts.map +1 -0
  63. package/dist/version.js +2 -0
  64. package/dist/version.js.map +1 -0
  65. package/mcp.json +139 -53
  66. package/package.json +30 -14
@@ -8,7 +8,11 @@ import { getConfig } from '../config.js';
8
8
  import { apiRequest } from '../api.js';
9
9
  // Schemas
10
10
  const CreateWalletSchema = z.object({
11
- name: z.string().describe('Wallet name'),
11
+ name: z.string().optional().describe('Optional wallet name label'),
12
+ agent_id: z.string().optional().describe('Agent ID that will own the wallet'),
13
+ mpc_provider: z.enum(['turnkey', 'fireblocks', 'local']).optional(),
14
+ account_type: z.enum(['mpc_v1', 'erc4337_v2']).optional(),
15
+ currency: z.enum(['USDC', 'USDT', 'PYUSD', 'EURC']).optional(),
12
16
  chain: z.enum(['base', 'polygon', 'ethereum', 'arbitrum', 'optimism']).optional().describe('Blockchain network'),
13
17
  policy: z.object({
14
18
  max_per_tx: z.string().optional().describe('Maximum amount per transaction'),
@@ -17,33 +21,12 @@ const CreateWalletSchema = z.object({
17
21
  blocked_categories: z.array(z.string()).optional().describe('Blocked categories'),
18
22
  }).optional().describe('Spending policy'),
19
23
  });
20
- const UpdatePolicySchema = z.object({
21
- wallet_id: z.string().describe('Wallet ID to update'),
22
- policy: z.object({
23
- max_per_tx: z.string().optional(),
24
- max_daily: z.string().optional(),
25
- max_monthly: z.string().optional(),
26
- allowed_vendors: z.array(z.string()).optional(),
27
- blocked_vendors: z.array(z.string()).optional(),
28
- blocked_categories: z.array(z.string()).optional(),
29
- require_approval_above: z.string().optional(),
30
- }).describe('New policy settings'),
31
- });
32
24
  const ListWalletsSchema = z.object({
33
25
  agent_id: z.string().optional().describe('Filter by agent ID'),
34
26
  chain: z.string().optional().describe('Filter by blockchain'),
35
27
  status: z.enum(['active', 'inactive']).optional().describe('Filter by status'),
36
28
  limit: z.number().optional().describe('Maximum wallets to return'),
37
29
  });
38
- const UpdateLimitsSchema = z.object({
39
- wallet_id: z.string().describe('Wallet ID to update'),
40
- limit_per_tx: z.number().optional().describe('Maximum per transaction'),
41
- limit_total: z.number().optional().describe('Maximum total/daily limit'),
42
- });
43
- const ArchiveWalletSchema = z.object({
44
- wallet_id: z.string().describe('Wallet ID to archive'),
45
- reason: z.string().optional().describe('Reason for archiving'),
46
- });
47
30
  // SECURITY: Only read-only and wallet creation tools are exposed to AI agents.
48
31
  // Policy/limit modification and archival tools have been REMOVED to prevent
49
32
  // prompt-injected agents from escalating their own privileges.
@@ -51,11 +34,27 @@ const ArchiveWalletSchema = z.object({
51
34
  export const walletManagementToolDefinitions = [
52
35
  {
53
36
  name: 'sardis_create_wallet',
54
- description: 'Create a new MPC wallet for an agent with optional spending policy.',
37
+ description: 'Create a new wallet for an agent. Supports mpc_v1 and erc4337_v2 account types.',
55
38
  inputSchema: {
56
39
  type: 'object',
57
40
  properties: {
58
- name: { type: 'string', description: 'Wallet name' },
41
+ name: { type: 'string', description: 'Optional wallet label' },
42
+ agent_id: { type: 'string', description: 'Agent ID that will own this wallet' },
43
+ mpc_provider: {
44
+ type: 'string',
45
+ enum: ['turnkey', 'fireblocks', 'local'],
46
+ description: 'MPC provider (default: turnkey)',
47
+ },
48
+ account_type: {
49
+ type: 'string',
50
+ enum: ['mpc_v1', 'erc4337_v2'],
51
+ description: 'Wallet execution type (default: mpc_v1)',
52
+ },
53
+ currency: {
54
+ type: 'string',
55
+ enum: ['USDC', 'USDT', 'PYUSD', 'EURC'],
56
+ description: 'Display currency (default: USDC)',
57
+ },
59
58
  chain: {
60
59
  type: 'string',
61
60
  enum: ['base', 'polygon', 'ethereum', 'arbitrum', 'optimism'],
@@ -80,7 +79,7 @@ export const walletManagementToolDefinitions = [
80
79
  },
81
80
  },
82
81
  },
83
- required: ['name'],
82
+ required: [],
84
83
  },
85
84
  },
86
85
  {
@@ -98,23 +97,8 @@ export const walletManagementToolDefinitions = [
98
97
  },
99
98
  },
100
99
  ];
101
- // SECURITY: Blocked tool handler — returns an error directing users to the admin API.
102
- const blockedToolHandler = async (_args) => ({
103
- content: [{
104
- type: 'text',
105
- text: JSON.stringify({
106
- error: 'This operation has been disabled for AI agents for security reasons. '
107
- + 'Policy and limit changes must be made via the admin dashboard or admin API.',
108
- }),
109
- }],
110
- isError: true,
111
- });
112
100
  // Tool handlers
113
101
  export const walletManagementToolHandlers = {
114
- // SECURITY: Block mutation tools — agents must not modify their own policies/limits
115
- sardis_update_wallet_policy: blockedToolHandler,
116
- sardis_update_wallet_limits: blockedToolHandler,
117
- sardis_archive_wallet: blockedToolHandler,
118
102
  sardis_create_wallet: async (args) => {
119
103
  const parsed = CreateWalletSchema.safeParse(args);
120
104
  if (!parsed.success) {
@@ -133,9 +117,10 @@ export const walletManagementToolHandlers = {
133
117
  text: JSON.stringify({
134
118
  wallet_id: walletId,
135
119
  id: walletId,
136
- name: parsed.data.name,
120
+ name: parsed.data.name || 'Sardis Wallet',
137
121
  address,
138
122
  chain: parsed.data.chain || 'base',
123
+ account_type: parsed.data.account_type || 'mpc_v1',
139
124
  status: 'active',
140
125
  is_active: true,
141
126
  balance: '0.00',
@@ -147,7 +132,13 @@ export const walletManagementToolHandlers = {
147
132
  };
148
133
  }
149
134
  try {
150
- const result = await apiRequest('POST', '/api/v2/wallets', parsed.data);
135
+ const payload = {
136
+ agent_id: parsed.data.agent_id || getConfig().agentId || 'agent_default',
137
+ mpc_provider: parsed.data.mpc_provider || 'turnkey',
138
+ account_type: parsed.data.account_type || 'mpc_v1',
139
+ currency: parsed.data.currency || 'USDC',
140
+ };
141
+ const result = await apiRequest('POST', '/api/v2/wallets', payload);
151
142
  return {
152
143
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
153
144
  };
@@ -215,8 +206,27 @@ export const walletManagementToolHandlers = {
215
206
  };
216
207
  }
217
208
  },
218
- // sardis_update_wallet_limits: REMOVED blocked handler is defined above.
219
- // sardis_archive_wallet: REMOVED blocked handler is defined above.
220
- // See security comment above sardis_update_wallet_policy for rationale.
209
+ // SECURITY: mutation tools remain intentionally unavailable to agents.
210
+ // Use admin API/dashboard for policy, limits, and archival operations.
211
+ sardis_update_wallet_limits: async () => ({
212
+ content: [{
213
+ type: 'text',
214
+ text: JSON.stringify({
215
+ error: 'security: sardis_update_wallet_limits is blocked for agent callers',
216
+ reason_code: 'SARDIS.MCP.SECURITY.BLOCKED_OPERATION',
217
+ }),
218
+ }],
219
+ isError: true,
220
+ }),
221
+ sardis_archive_wallet: async () => ({
222
+ content: [{
223
+ type: 'text',
224
+ text: JSON.stringify({
225
+ error: 'security: sardis_archive_wallet is blocked for agent callers',
226
+ reason_code: 'SARDIS.MCP.SECURITY.BLOCKED_OPERATION',
227
+ }),
228
+ }],
229
+ isError: true,
230
+ }),
221
231
  };
222
232
  //# sourceMappingURL=wallet-management.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallet-management.js","sourceRoot":"","sources":["../../src/tools/wallet-management.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet-management.js","sourceRoot":"","sources":["../../src/tools/wallet-management.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Sardis MCP Server - x402 Payment Tools
3
+ *
4
+ * Tools for interacting with x402-protected APIs:
5
+ * - sardis_x402_pay: Pay an x402-protected endpoint
6
+ * - sardis_x402_preview_cost: Dry-run cost preview
7
+ * - sardis_x402_list_payments: Audit x402 payments
8
+ */
9
+ import type { ToolDefinition, ToolHandler } from './types.js';
10
+ export declare const x402ToolDefinitions: ToolDefinition[];
11
+ export declare const x402ToolHandlers: Record<string, ToolHandler>;
12
+ //# sourceMappingURL=x402.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../src/tools/x402.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAc,MAAM,YAAY,CAAC;AA8D1E,eAAO,MAAM,mBAAmB,EAAE,cAAc,EA8E/C,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAgOxD,CAAC"}
@@ -0,0 +1,299 @@
1
+ /**
2
+ * Sardis MCP Server - x402 Payment Tools
3
+ *
4
+ * Tools for interacting with x402-protected APIs:
5
+ * - sardis_x402_pay: Pay an x402-protected endpoint
6
+ * - sardis_x402_preview_cost: Dry-run cost preview
7
+ * - sardis_x402_list_payments: Audit x402 payments
8
+ */
9
+ import { z } from 'zod';
10
+ import { apiRequest } from '../api.js';
11
+ import { getConfig } from '../config.js';
12
+ // Zod schemas
13
+ const X402PaySchema = z.object({
14
+ url: z.string().url().describe('URL of the x402-protected endpoint'),
15
+ method: z.enum(['GET', 'POST', 'PUT', 'DELETE']).optional().default('GET'),
16
+ body: z.string().optional().describe('Request body (JSON string)'),
17
+ max_cost: z.string().optional().describe('Maximum amount willing to pay (e.g., "1.00")'),
18
+ dry_run: z.boolean().optional().default(false).describe('Preview cost without paying'),
19
+ preferred_network: z.string().optional().describe('Preferred blockchain network'),
20
+ });
21
+ const X402PreviewSchema = z.object({
22
+ url: z.string().url().describe('URL to check for x402 pricing'),
23
+ });
24
+ const X402ListPaymentsSchema = z.object({
25
+ limit: z.number().optional().default(20),
26
+ offset: z.number().optional().default(0),
27
+ status: z.string().optional().describe('Filter by status: verified, settled, failed'),
28
+ });
29
+ // Tool definitions
30
+ export const x402ToolDefinitions = [
31
+ {
32
+ name: 'sardis_x402_pay',
33
+ description: 'Pay an x402-protected endpoint. Makes an HTTP request, handles 402 Payment Required ' +
34
+ 'automatically by negotiating payment, checking spending policy, signing with MPC wallet, ' +
35
+ 'and retrying with payment. Returns the API response and payment receipt.',
36
+ inputSchema: {
37
+ type: 'object',
38
+ properties: {
39
+ url: {
40
+ type: 'string',
41
+ description: 'URL of the x402-protected endpoint',
42
+ },
43
+ method: {
44
+ type: 'string',
45
+ enum: ['GET', 'POST', 'PUT', 'DELETE'],
46
+ description: 'HTTP method (default: GET)',
47
+ },
48
+ body: {
49
+ type: 'string',
50
+ description: 'Request body as JSON string (for POST/PUT)',
51
+ },
52
+ max_cost: {
53
+ type: 'string',
54
+ description: 'Maximum amount willing to pay in human-readable units (e.g., "1.00" USDC)',
55
+ },
56
+ dry_run: {
57
+ type: 'boolean',
58
+ description: 'If true, preview the cost without making payment',
59
+ },
60
+ preferred_network: {
61
+ type: 'string',
62
+ description: 'Preferred blockchain network (e.g., "base", "polygon")',
63
+ },
64
+ },
65
+ required: ['url'],
66
+ },
67
+ },
68
+ {
69
+ name: 'sardis_x402_preview_cost',
70
+ description: 'Preview the cost of accessing an x402-protected endpoint without paying. ' +
71
+ 'Checks if the endpoint requires payment and whether the current spending policy would allow it.',
72
+ inputSchema: {
73
+ type: 'object',
74
+ properties: {
75
+ url: {
76
+ type: 'string',
77
+ description: 'URL to check for x402 pricing',
78
+ },
79
+ },
80
+ required: ['url'],
81
+ },
82
+ },
83
+ {
84
+ name: 'sardis_x402_list_payments',
85
+ description: 'List x402 payment records for audit and tracking.',
86
+ inputSchema: {
87
+ type: 'object',
88
+ properties: {
89
+ limit: {
90
+ type: 'number',
91
+ description: 'Maximum number of records to return (default: 20)',
92
+ },
93
+ offset: {
94
+ type: 'number',
95
+ description: 'Pagination offset',
96
+ },
97
+ status: {
98
+ type: 'string',
99
+ enum: ['verified', 'settled', 'failed'],
100
+ description: 'Filter by payment status',
101
+ },
102
+ },
103
+ required: [],
104
+ },
105
+ },
106
+ ];
107
+ // Tool handlers
108
+ export const x402ToolHandlers = {
109
+ sardis_x402_pay: async (args) => {
110
+ const parsed = X402PaySchema.safeParse(args);
111
+ if (!parsed.success) {
112
+ return {
113
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
114
+ isError: true,
115
+ };
116
+ }
117
+ const { url, method, body, max_cost, dry_run, preferred_network } = parsed.data;
118
+ const config = getConfig();
119
+ if (!config.apiKey || config.mode === 'simulated') {
120
+ // Simulated mode
121
+ const simId = `x402_sim_${Date.now().toString(36)}`;
122
+ return {
123
+ content: [
124
+ {
125
+ type: 'text',
126
+ text: JSON.stringify({
127
+ success: true,
128
+ response: { status_code: 200, body: '{"data": "simulated_x402_response"}' },
129
+ payment: {
130
+ payment_id: simId,
131
+ amount: '1000000',
132
+ currency: 'USDC',
133
+ network: preferred_network || config.chain,
134
+ tx_hash: '0x' + Math.random().toString(16).substring(2).padEnd(64, '0'),
135
+ dry_run: dry_run || false,
136
+ },
137
+ cost: '$1.00 USDC',
138
+ message: dry_run
139
+ ? `Dry run: accessing ${url} would cost ~$1.00 USDC`
140
+ : `Paid $1.00 USDC to access ${url}`,
141
+ }, null, 2),
142
+ },
143
+ ],
144
+ };
145
+ }
146
+ try {
147
+ const result = await apiRequest('POST', '/api/v2/x402/client-request', {
148
+ url,
149
+ method,
150
+ body: body || undefined,
151
+ max_cost: max_cost || undefined,
152
+ dry_run,
153
+ preferred_network: preferred_network || undefined,
154
+ wallet_id: config.walletId,
155
+ agent_id: config.agentId,
156
+ });
157
+ return {
158
+ content: [
159
+ {
160
+ type: 'text',
161
+ text: JSON.stringify({
162
+ success: true,
163
+ ...result,
164
+ message: result.payment?.dry_run
165
+ ? `Dry run: accessing ${url} would cost ${result.cost}`
166
+ : `Paid ${result.cost} to access ${url}`,
167
+ }, null, 2),
168
+ },
169
+ ],
170
+ };
171
+ }
172
+ catch (error) {
173
+ const msg = error instanceof Error ? error.message : 'x402 payment failed';
174
+ return {
175
+ content: [
176
+ {
177
+ type: 'text',
178
+ text: JSON.stringify({ success: false, error: msg, url }, null, 2),
179
+ },
180
+ ],
181
+ isError: true,
182
+ };
183
+ }
184
+ },
185
+ sardis_x402_preview_cost: async (args) => {
186
+ const parsed = X402PreviewSchema.safeParse(args);
187
+ if (!parsed.success) {
188
+ return {
189
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
190
+ isError: true,
191
+ };
192
+ }
193
+ const { url } = parsed.data;
194
+ const config = getConfig();
195
+ if (!config.apiKey || config.mode === 'simulated') {
196
+ return {
197
+ content: [
198
+ {
199
+ type: 'text',
200
+ text: JSON.stringify({
201
+ url,
202
+ amount: '1000000',
203
+ currency: 'USDC',
204
+ network: config.chain,
205
+ policy_check: true,
206
+ estimated_total_cost: '$1.00 USDC',
207
+ failure_reasons: [],
208
+ message: `Endpoint ${url} requires ~$1.00 USDC per request (simulated)`,
209
+ }, null, 2),
210
+ },
211
+ ],
212
+ };
213
+ }
214
+ try {
215
+ const preview = await apiRequest('POST', '/api/v2/x402/dry-run', {
216
+ url,
217
+ wallet_id: config.walletId,
218
+ agent_id: config.agentId,
219
+ });
220
+ return {
221
+ content: [
222
+ {
223
+ type: 'text',
224
+ text: JSON.stringify({
225
+ ...preview,
226
+ message: preview.policy_check
227
+ ? `Endpoint requires ${preview.estimated_total_cost} — policy allows`
228
+ : `Endpoint requires ${preview.estimated_total_cost} — BLOCKED: ${preview.failure_reasons.join(', ')}`,
229
+ }, null, 2),
230
+ },
231
+ ],
232
+ };
233
+ }
234
+ catch (error) {
235
+ return {
236
+ content: [
237
+ {
238
+ type: 'text',
239
+ text: `Failed to preview cost: ${error instanceof Error ? error.message : 'Unknown error'}`,
240
+ },
241
+ ],
242
+ isError: true,
243
+ };
244
+ }
245
+ },
246
+ sardis_x402_list_payments: async (args) => {
247
+ const parsed = X402ListPaymentsSchema.safeParse(args);
248
+ const { limit, offset, status } = parsed.success
249
+ ? parsed.data
250
+ : { limit: 20, offset: 0, status: undefined };
251
+ const config = getConfig();
252
+ if (!config.apiKey || config.mode === 'simulated') {
253
+ const simTime = new Date().toISOString();
254
+ return {
255
+ content: [
256
+ {
257
+ type: 'text',
258
+ text: JSON.stringify([
259
+ {
260
+ payment_id: `x402_sim_${Date.now().toString(36)}`,
261
+ status: 'settled',
262
+ amount: '1000000',
263
+ currency: 'USDC',
264
+ network: config.chain,
265
+ tx_hash: '0x' + '1'.repeat(64),
266
+ source: 'client',
267
+ created_at: simTime,
268
+ },
269
+ ], null, 2),
270
+ },
271
+ ],
272
+ };
273
+ }
274
+ try {
275
+ const params = new URLSearchParams({
276
+ limit: limit.toString(),
277
+ offset: offset.toString(),
278
+ });
279
+ if (status)
280
+ params.append('status', status);
281
+ const payments = await apiRequest('GET', `/api/v2/x402/settlements?${params}`);
282
+ return {
283
+ content: [{ type: 'text', text: JSON.stringify(payments, null, 2) }],
284
+ };
285
+ }
286
+ catch (error) {
287
+ return {
288
+ content: [
289
+ {
290
+ type: 'text',
291
+ text: `Failed to list x402 payments: ${error instanceof Error ? error.message : 'Unknown error'}`,
292
+ },
293
+ ],
294
+ isError: true,
295
+ };
296
+ }
297
+ },
298
+ };
299
+ //# sourceMappingURL=x402.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x402.js","sourceRoot":"","sources":["../../src/tools/x402.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const MCP_SERVER_VERSION = "0.2.7";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const MCP_SERVER_VERSION = '0.2.7';
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC"}