@liveauth-labs/mcp-server 0.1.0 → 0.6.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/dist/index.js CHANGED
@@ -4,79 +4,143 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
4
4
  import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
5
5
  import fetch from 'node-fetch';
6
6
  const LIVEAUTH_API_BASE = process.env.LIVEAUTH_API_BASE || 'https://api.liveauth.app';
7
- // Define our MCP tools
7
+ const LIVEAUTH_API_KEY = process.env.LIVEAUTH_API_KEY || '';
8
+ // Store JWT after confirm (in-memory for the session)
9
+ let cachedJwt = null;
10
+ // Helper to build auth headers (optional API key)
11
+ function getAuthHeaders() {
12
+ const headers = {
13
+ 'Content-Type': 'application/json',
14
+ };
15
+ if (LIVEAUTH_API_KEY) {
16
+ headers['X-LW-Public'] = LIVEAUTH_API_KEY;
17
+ }
18
+ return headers;
19
+ }
20
+ // Define MCP tools
8
21
  const TOOLS = [
9
22
  {
10
- name: 'liveauth_get_challenge',
11
- description: 'Get a proof-of-work challenge from LiveAuth for authentication. The agent must solve this challenge to prove computational work.',
23
+ name: 'liveauth_mcp_start',
24
+ description: 'Start a new LiveAuth MCP session. Returns a PoW challenge (default) or Lightning invoice (if forceLightning=true).',
25
+ inputSchema: {
26
+ type: 'object',
27
+ properties: {
28
+ forceLightning: {
29
+ type: 'boolean',
30
+ description: 'If true, request Lightning invoice instead of PoW challenge',
31
+ },
32
+ },
33
+ required: [],
34
+ },
35
+ },
36
+ {
37
+ name: 'liveauth_mcp_status',
38
+ description: 'Check the status of an MCP session. Use to poll for Lightning payment confirmation. Also returns the invoice via lnurl compatibility.',
39
+ inputSchema: {
40
+ type: 'object',
41
+ properties: {
42
+ quoteId: {
43
+ type: 'string',
44
+ description: 'The quoteId from the start response',
45
+ },
46
+ },
47
+ required: ['quoteId'],
48
+ },
49
+ },
50
+ {
51
+ name: 'liveauth_mcp_lnurl',
52
+ description: 'Get the Lightning invoice for a session (lnget-compatible). Use this to retrieve the BOLT11 invoice for payment.',
12
53
  inputSchema: {
13
54
  type: 'object',
14
55
  properties: {
15
- projectPublicKey: {
56
+ quoteId: {
16
57
  type: 'string',
17
- description: 'The LiveAuth project public key (starts with la_pk_)',
58
+ description: 'The quoteId from the start response',
18
59
  },
19
60
  },
20
- required: ['projectPublicKey'],
61
+ required: ['quoteId'],
21
62
  },
22
63
  },
23
64
  {
24
- name: 'liveauth_verify_pow',
25
- description: 'Verify a solved proof-of-work challenge and receive a JWT authentication token',
65
+ name: 'liveauth_mcp_confirm',
66
+ description: 'Submit the solved proof-of-work challenge (or poll for Lightning payment) to receive a JWT. For Lightning, call with just quoteId to check/poll payment status.',
26
67
  inputSchema: {
27
68
  type: 'object',
28
69
  properties: {
29
- projectPublicKey: {
70
+ quoteId: {
30
71
  type: 'string',
31
- description: 'The LiveAuth project public key',
72
+ description: 'The quoteId from the start response',
32
73
  },
33
74
  challengeHex: {
34
75
  type: 'string',
35
- description: 'The challenge hex from get_challenge',
76
+ description: 'The challenge hex from the start response (PoW only)',
36
77
  },
37
78
  nonce: {
38
79
  type: 'number',
39
- description: 'The nonce that solves the challenge',
80
+ description: 'The nonce that solves the PoW challenge (PoW only)',
40
81
  },
41
82
  hashHex: {
42
83
  type: 'string',
43
- description: 'The resulting hash hex',
84
+ description: 'The resulting hash hex (PoW only)',
44
85
  },
45
86
  expiresAtUnix: {
46
87
  type: 'number',
47
- description: 'Expiration timestamp from challenge',
88
+ description: 'Expiration timestamp from the challenge (PoW only)',
48
89
  },
49
90
  difficultyBits: {
50
91
  type: 'number',
51
- description: 'Difficulty bits from challenge',
92
+ description: 'Difficulty bits from the challenge (PoW only)',
52
93
  },
53
- sig: {
94
+ signature: {
54
95
  type: 'string',
55
- description: 'Signature from challenge',
96
+ description: 'Signature from the challenge (PoW only)',
97
+ },
98
+ },
99
+ required: ['quoteId'],
100
+ },
101
+ },
102
+ {
103
+ name: 'liveauth_mcp_charge',
104
+ description: 'Meter API usage after making an authenticated call. Call this with the cost in sats for each API request made using the JWT.',
105
+ inputSchema: {
106
+ type: 'object',
107
+ properties: {
108
+ callCostSats: {
109
+ type: 'number',
110
+ description: 'Cost of the API call in sats',
56
111
  },
57
112
  },
58
- required: ['projectPublicKey', 'challengeHex', 'nonce', 'hashHex', 'expiresAtUnix', 'difficultyBits', 'sig'],
113
+ required: ['callCostSats'],
59
114
  },
60
115
  },
61
116
  {
62
- name: 'liveauth_start_lightning',
63
- description: 'Start Lightning Network payment authentication as fallback when PoW is not feasible',
117
+ name: 'liveauth_mcp_usage',
118
+ description: 'Query current usage and remaining budget for the MCP session. Use this to check how many sats and calls have been used without making a charge.',
119
+ inputSchema: {
120
+ type: 'object',
121
+ properties: {},
122
+ required: [],
123
+ },
124
+ },
125
+ {
126
+ name: 'liveauth_mcp_refresh',
127
+ description: 'Refresh the JWT token without re-authenticating. Use the refreshToken returned from confirm to get a new JWT.',
64
128
  inputSchema: {
65
129
  type: 'object',
66
130
  properties: {
67
- projectPublicKey: {
131
+ refreshToken: {
68
132
  type: 'string',
69
- description: 'The LiveAuth project public key',
133
+ description: 'The refreshToken from the confirm response',
70
134
  },
71
135
  },
72
- required: ['projectPublicKey'],
136
+ required: ['refreshToken'],
73
137
  },
74
138
  },
75
139
  ];
76
140
  // Create MCP server
77
141
  const server = new Server({
78
142
  name: 'liveauth-mcp',
79
- version: '0.1.0',
143
+ version: '0.2.0',
80
144
  }, {
81
145
  capabilities: {
82
146
  tools: {},
@@ -86,96 +150,222 @@ const server = new Server({
86
150
  server.setRequestHandler(ListToolsRequestSchema, async () => {
87
151
  return { tools: TOOLS };
88
152
  });
153
+ // Helper to check for errors in response
154
+ function isError(response) {
155
+ return typeof response === 'object' && response !== null && 'error' in response;
156
+ }
89
157
  // Handle tool calls
90
158
  server.setRequestHandler(CallToolRequestSchema, async (request) => {
91
159
  const { name, arguments: args } = request.params;
92
160
  try {
93
161
  switch (name) {
94
- case 'liveauth_get_challenge': {
95
- const { projectPublicKey } = args;
96
- const response = await fetch(`${LIVEAUTH_API_BASE}/api/public/pow/challenge`, {
97
- headers: {
98
- 'X-LW-Public': projectPublicKey,
99
- 'Content-Type': 'application/json',
100
- },
162
+ case 'liveauth_mcp_start': {
163
+ const { forceLightning } = args;
164
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/start`, {
165
+ method: 'POST',
166
+ headers: getAuthHeaders(),
167
+ body: JSON.stringify({
168
+ forceLightning: forceLightning ?? false,
169
+ }),
101
170
  });
102
171
  if (!response.ok) {
103
- throw new Error(`Challenge request failed: ${response.statusText}`);
172
+ const error = await response.json();
173
+ throw new Error(error.error_description || `Start failed: ${response.statusText}`);
104
174
  }
105
- const challenge = await response.json();
175
+ const result = await response.json();
106
176
  return {
107
177
  content: [
108
178
  {
109
179
  type: 'text',
110
- text: JSON.stringify(challenge, null, 2),
180
+ text: JSON.stringify(result, null, 2),
111
181
  },
112
182
  ],
113
183
  };
114
184
  }
115
- case 'liveauth_verify_pow': {
116
- const verifyArgs = args;
117
- const response = await fetch(`${LIVEAUTH_API_BASE}/api/public/pow/verify`, {
185
+ case 'liveauth_mcp_confirm': {
186
+ const { quoteId, challengeHex, nonce, hashHex, expiresAtUnix, difficultyBits, signature } = args;
187
+ const body = { quoteId };
188
+ // Add PoW fields if provided
189
+ if (challengeHex)
190
+ body.challengeHex = challengeHex;
191
+ if (nonce !== undefined)
192
+ body.nonce = nonce;
193
+ if (hashHex)
194
+ body.hashHex = hashHex;
195
+ if (expiresAtUnix)
196
+ body.expiresAtUnix = expiresAtUnix;
197
+ if (difficultyBits)
198
+ body.difficultyBits = difficultyBits;
199
+ if (signature)
200
+ body.sig = signature;
201
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/confirm`, {
118
202
  method: 'POST',
119
- headers: {
120
- 'X-LW-Public': verifyArgs.projectPublicKey,
121
- 'Content-Type': 'application/json',
122
- },
123
- body: JSON.stringify({
124
- challengeHex: verifyArgs.challengeHex,
125
- nonce: verifyArgs.nonce,
126
- hashHex: verifyArgs.hashHex,
127
- expiresAtUnix: verifyArgs.expiresAtUnix,
128
- difficultyBits: verifyArgs.difficultyBits,
129
- sig: verifyArgs.sig,
130
- }),
203
+ headers: getAuthHeaders(),
204
+ body: JSON.stringify(body),
131
205
  });
132
206
  if (!response.ok) {
133
- throw new Error(`Verification failed: ${response.statusText}`);
207
+ const error = await response.json();
208
+ throw new Error(error.error_description || `Confirm failed: ${response.statusText}`);
134
209
  }
135
210
  const result = await response.json();
136
- if (result.verified && result.token) {
211
+ // Handle Lightning pending status
212
+ if (result.paymentStatus === 'pending') {
137
213
  return {
138
214
  content: [
139
215
  {
140
216
  type: 'text',
141
- text: `Authentication successful! Token: ${result.token}`,
217
+ text: `Lightning payment pending. Poll with liveauth_mcp_status using quoteId: ${quoteId}`,
142
218
  },
143
219
  ],
144
220
  };
145
221
  }
146
- else if (result.fallback === 'lightning') {
222
+ // Cache JWT if we got one
223
+ if (result.jwt) {
224
+ cachedJwt = result.jwt;
225
+ }
226
+ // Log refresh token for user (but don't cache it)
227
+ if (result.refreshToken) {
228
+ console.error(`Refresh token: ${result.refreshToken} (save this to refresh without re-auth)`);
229
+ }
230
+ return {
231
+ content: [
232
+ {
233
+ type: 'text',
234
+ text: JSON.stringify(result, null, 2),
235
+ },
236
+ ],
237
+ };
238
+ }
239
+ case 'liveauth_mcp_charge': {
240
+ const { callCostSats } = args;
241
+ const authHeaders = {
242
+ 'Content-Type': 'application/json',
243
+ };
244
+ if (cachedJwt) {
245
+ authHeaders['Authorization'] = `Bearer ${cachedJwt}`;
246
+ }
247
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/charge`, {
248
+ method: 'POST',
249
+ headers: authHeaders,
250
+ body: JSON.stringify({
251
+ callCostSats,
252
+ }),
253
+ });
254
+ if (!response.ok) {
255
+ const error = await response.json();
256
+ throw new Error(error.error_description || `Charge failed: ${response.statusText}`);
257
+ }
258
+ const result = await response.json();
259
+ // If status is 'deny', the agent has exceeded its budget
260
+ if (result.status === 'deny') {
147
261
  return {
148
262
  content: [
149
263
  {
150
264
  type: 'text',
151
- text: 'PoW verification failed. Please use liveauth_start_lightning for payment-based authentication.',
265
+ text: `Budget exceeded! Calls used: ${result.callsUsed}, Sats used: ${result.satsUsed}. Stop making API calls.`,
152
266
  },
153
267
  ],
268
+ isError: true,
154
269
  };
155
270
  }
156
- else {
157
- throw new Error('Verification failed');
271
+ return {
272
+ content: [
273
+ {
274
+ type: 'text',
275
+ text: JSON.stringify(result, null, 2),
276
+ },
277
+ ],
278
+ };
279
+ }
280
+ case 'liveauth_mcp_usage': {
281
+ const authHeaders = {
282
+ 'Content-Type': 'application/json',
283
+ };
284
+ if (cachedJwt) {
285
+ authHeaders['Authorization'] = `Bearer ${cachedJwt}`;
286
+ }
287
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/usage`, {
288
+ method: 'GET',
289
+ headers: authHeaders,
290
+ });
291
+ if (!response.ok) {
292
+ const error = await response.json();
293
+ throw new Error(error.error_description || `Usage query failed: ${response.statusText}`);
294
+ }
295
+ const result = await response.json();
296
+ return {
297
+ content: [
298
+ {
299
+ type: 'text',
300
+ text: JSON.stringify(result, null, 2),
301
+ },
302
+ ],
303
+ };
304
+ }
305
+ case 'liveauth_mcp_status': {
306
+ const { quoteId } = args;
307
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/status/${quoteId}`, {
308
+ method: 'GET',
309
+ headers: getAuthHeaders(),
310
+ });
311
+ if (!response.ok) {
312
+ const error = await response.json();
313
+ throw new Error(error.error_description || `Status check failed: ${response.statusText}`);
314
+ }
315
+ const result = await response.json();
316
+ return {
317
+ content: [
318
+ {
319
+ type: 'text',
320
+ text: JSON.stringify(result, null, 2),
321
+ },
322
+ ],
323
+ };
324
+ }
325
+ case 'liveauth_mcp_lnurl': {
326
+ const { quoteId } = args;
327
+ // Use the new lnget-compatible endpoint
328
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/lnurl/${quoteId}`, {
329
+ method: 'GET',
330
+ headers: getAuthHeaders(),
331
+ });
332
+ if (!response.ok) {
333
+ const error = await response.json();
334
+ throw new Error(error.error_description || `Lnurl fetch failed: ${response.statusText}`);
158
335
  }
336
+ const result = await response.json();
337
+ return {
338
+ content: [
339
+ {
340
+ type: 'text',
341
+ text: JSON.stringify(result, null, 2),
342
+ },
343
+ ],
344
+ };
159
345
  }
160
- case 'liveauth_start_lightning': {
161
- const { projectPublicKey } = args;
162
- const response = await fetch(`${LIVEAUTH_API_BASE}/api/public/auth/start`, {
346
+ case 'liveauth_mcp_refresh': {
347
+ const { refreshToken } = args;
348
+ const response = await fetch(`${LIVEAUTH_API_BASE}/api/mcp/refresh`, {
163
349
  method: 'POST',
164
350
  headers: {
165
- 'X-LW-Public': projectPublicKey,
166
351
  'Content-Type': 'application/json',
167
352
  },
168
- body: JSON.stringify({ userHint: 'agent' }),
353
+ body: JSON.stringify({
354
+ refreshToken,
355
+ }),
169
356
  });
170
357
  if (!response.ok) {
171
- throw new Error(`Lightning start failed: ${response.statusText}`);
358
+ const error = await response.json();
359
+ throw new Error(error.error_description || `Refresh failed: ${response.statusText}`);
172
360
  }
173
- const lightning = await response.json();
361
+ const result = await response.json();
362
+ // Cache the new JWT
363
+ cachedJwt = result.jwt;
174
364
  return {
175
365
  content: [
176
366
  {
177
367
  type: 'text',
178
- text: `Lightning payment required:\nInvoice: ${lightning.invoice}\nAmount: ${lightning.amountSats} sats\nSession ID: ${lightning.sessionId}\n\nUse this sessionId to poll for payment confirmation.`,
368
+ text: JSON.stringify(result, null, 2),
179
369
  },
180
370
  ],
181
371
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}