agent-gateway-mcp 0.5.1 → 0.7.1
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/.claude/settings.local.json +2 -1
- package/dist/auth.d.ts +12 -2
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +338 -48
- package/dist/auth.js.map +1 -1
- package/dist/config.d.ts +0 -13
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -117
- package/dist/config.js.map +1 -1
- package/dist/credentials.d.ts +6 -0
- package/dist/credentials.d.ts.map +1 -0
- package/dist/credentials.js +52 -0
- package/dist/credentials.js.map +1 -0
- package/dist/discovery.d.ts +2 -1
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +26 -0
- package/dist/discovery.js.map +1 -1
- package/dist/guides.d.ts +6 -0
- package/dist/guides.d.ts.map +1 -0
- package/dist/guides.js +19 -0
- package/dist/guides.js.map +1 -0
- package/dist/index.js +24 -11
- package/dist/index.js.map +1 -1
- package/dist/init.js +185 -300
- package/dist/init.js.map +1 -1
- package/dist/service-guides.d.ts +3 -0
- package/dist/service-guides.d.ts.map +1 -0
- package/dist/service-guides.js +270 -0
- package/dist/service-guides.js.map +1 -0
- package/dist/types.d.ts +41 -10
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/src/auth.ts +396 -58
- package/src/config.ts +0 -138
- package/src/credentials.ts +58 -0
- package/src/discovery.ts +33 -1
- package/src/guides.ts +19 -0
- package/src/index.ts +24 -13
- package/src/init.ts +194 -378
- package/src/service-guides.ts +271 -0
- package/src/types.ts +52 -14
package/dist/auth.d.ts
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
import type { StoredToken } from "./types.js";
|
|
1
|
+
import type { StoredToken, ServiceGuide } from "./types.js";
|
|
2
|
+
export interface TestResult {
|
|
3
|
+
passed: boolean;
|
|
4
|
+
status_code?: number;
|
|
5
|
+
error_message?: string;
|
|
6
|
+
suggestion?: string;
|
|
7
|
+
}
|
|
2
8
|
export interface AuthResult {
|
|
3
9
|
success: boolean;
|
|
4
10
|
message: string;
|
|
5
11
|
token?: StoredToken;
|
|
12
|
+
needs_credentials?: boolean;
|
|
13
|
+
setup_instructions?: string;
|
|
14
|
+
guide?: ServiceGuide;
|
|
15
|
+
test_result?: TestResult;
|
|
6
16
|
}
|
|
7
|
-
export declare function authenticate(domain: string): Promise<AuthResult>;
|
|
17
|
+
export declare function authenticate(domain: string, overrideClientId?: string, overrideClientSecret?: string): Promise<AuthResult>;
|
|
8
18
|
export declare function storeApiKey(domain: string, apiKey: string): Promise<AuthResult>;
|
|
9
19
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,WAAW,CAAC,EAAE,UAAU,CAAC;CAC1B;AAwKD,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,GAC5B,OAAO,CAAC,UAAU,CAAC,CA6FrB;AAID,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,CAAC,CAoDrB"}
|
package/dist/auth.js
CHANGED
|
@@ -1,7 +1,163 @@
|
|
|
1
1
|
import http from "http";
|
|
2
|
-
import { loadConfig, getToken, storeToken, storeConnection
|
|
2
|
+
import { loadConfig, getToken, storeToken, storeConnection } from "./config.js";
|
|
3
|
+
import { getCredential, storeCredential } from "./credentials.js";
|
|
3
4
|
import { fetchManifest } from "./discovery.js";
|
|
4
|
-
|
|
5
|
+
import { getGuide } from "./guides.js";
|
|
6
|
+
// ─── Setup instructions for LLM relay ────────────────────────────
|
|
7
|
+
async function buildSetupInstructions(domain, manifest) {
|
|
8
|
+
const guide = await getGuide(domain);
|
|
9
|
+
if (guide) {
|
|
10
|
+
return { text: formatGuideInstructions(domain, guide), guide };
|
|
11
|
+
}
|
|
12
|
+
// Fallback: generic instructions from manifest
|
|
13
|
+
const auth = manifest.auth;
|
|
14
|
+
const lines = [];
|
|
15
|
+
if (auth.type === "api_key") {
|
|
16
|
+
lines.push(`## Setup: ${manifest.name} (API Key)`);
|
|
17
|
+
lines.push("");
|
|
18
|
+
if (auth.setup_url) {
|
|
19
|
+
lines.push(`1. Go to: ${auth.setup_url}`);
|
|
20
|
+
lines.push("2. Create or copy your API key");
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
lines.push("1. Visit the service's developer portal and create an API key");
|
|
24
|
+
}
|
|
25
|
+
lines.push(`3. Call the auth tool again with: domain="${domain}" and api_key="<your-key>"`);
|
|
26
|
+
lines.push("");
|
|
27
|
+
lines.push(`Header: ${auth.header ?? "Authorization"}${auth.prefix ? ` (prefix: "${auth.prefix}")` : ""}`);
|
|
28
|
+
}
|
|
29
|
+
else if (auth.type === "oauth2") {
|
|
30
|
+
lines.push(`## Setup: ${manifest.name} (OAuth2)`);
|
|
31
|
+
lines.push("");
|
|
32
|
+
if (auth.setup_url) {
|
|
33
|
+
lines.push(`1. Go to: ${auth.setup_url}`);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
lines.push("1. Go to the service's developer portal / OAuth app settings");
|
|
37
|
+
}
|
|
38
|
+
lines.push("2. Create an OAuth application");
|
|
39
|
+
lines.push("3. Set the redirect URI to: http://localhost:9876/callback");
|
|
40
|
+
if (auth.scopes?.length) {
|
|
41
|
+
lines.push(`4. Required scopes: ${auth.scopes.join(", ")}`);
|
|
42
|
+
}
|
|
43
|
+
lines.push(`${auth.scopes?.length ? "5" : "4"}. Copy the client_id and client_secret`);
|
|
44
|
+
lines.push(`${auth.scopes?.length ? "6" : "5"}. Call the auth tool again with: domain="${domain}", client_id="<id>", client_secret="<secret>"`);
|
|
45
|
+
}
|
|
46
|
+
return { text: lines.join("\n") };
|
|
47
|
+
}
|
|
48
|
+
function formatGuideInstructions(domain, guide) {
|
|
49
|
+
const lines = [];
|
|
50
|
+
lines.push(`## Setup: ${guide.display_name} (${guide.auth_type})`);
|
|
51
|
+
lines.push("");
|
|
52
|
+
// Steps
|
|
53
|
+
for (let i = 0; i < guide.steps.length; i++) {
|
|
54
|
+
lines.push(`${i + 1}. ${guide.steps[i]}`);
|
|
55
|
+
}
|
|
56
|
+
lines.push("");
|
|
57
|
+
// Credential fields
|
|
58
|
+
lines.push("### Credentials needed:");
|
|
59
|
+
for (const field of guide.credential_fields) {
|
|
60
|
+
const masked = field.secret ? " (secret)" : "";
|
|
61
|
+
const placeholder = field.placeholder ? ` — e.g. ${field.placeholder}` : "";
|
|
62
|
+
lines.push(` - **${field.label}**${masked}: ${field.description}${placeholder}`);
|
|
63
|
+
}
|
|
64
|
+
lines.push("");
|
|
65
|
+
// How to provide
|
|
66
|
+
if (guide.auth_type === "api_key") {
|
|
67
|
+
lines.push(`Call auth with: domain="${domain}" and api_key="<your-key>"`);
|
|
68
|
+
}
|
|
69
|
+
else if (guide.auth_type === "oauth2") {
|
|
70
|
+
lines.push(`Call auth with: domain="${domain}", client_id="<id>", client_secret="<secret>"`);
|
|
71
|
+
}
|
|
72
|
+
// Notes
|
|
73
|
+
if (guide.notes.length > 0) {
|
|
74
|
+
lines.push("");
|
|
75
|
+
lines.push("### Notes:");
|
|
76
|
+
for (const note of guide.notes) {
|
|
77
|
+
lines.push(` - ${note}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Test endpoint info
|
|
81
|
+
if (guide.test_endpoint) {
|
|
82
|
+
lines.push("");
|
|
83
|
+
lines.push(`After setup, credentials will be tested via ${guide.test_endpoint.method} ${guide.test_endpoint.path}${guide.test_endpoint.description ? ` (${guide.test_endpoint.description})` : ""}`);
|
|
84
|
+
}
|
|
85
|
+
return lines.join("\n");
|
|
86
|
+
}
|
|
87
|
+
// ─── Credential testing ─────────────────────────────────────────
|
|
88
|
+
async function testCredential(domain, guide, manifest, token) {
|
|
89
|
+
if (!guide.test_endpoint) {
|
|
90
|
+
return { passed: true };
|
|
91
|
+
}
|
|
92
|
+
const te = guide.test_endpoint;
|
|
93
|
+
const url = `${manifest.base_url}${te.path}`;
|
|
94
|
+
const headers = {
|
|
95
|
+
Accept: "application/json",
|
|
96
|
+
};
|
|
97
|
+
// Inject auth header using same logic as caller.ts
|
|
98
|
+
if (token.access_token !== "none") {
|
|
99
|
+
if (token.type === "api_key") {
|
|
100
|
+
const authHeader = manifest.auth.header ?? "Authorization";
|
|
101
|
+
const prefix = manifest.auth.prefix ?? "Bearer";
|
|
102
|
+
headers[authHeader] = `${prefix} ${token.access_token}`;
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
headers["Authorization"] = `Bearer ${token.access_token}`;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
try {
|
|
109
|
+
const res = await fetch(url, {
|
|
110
|
+
method: te.method,
|
|
111
|
+
headers,
|
|
112
|
+
signal: AbortSignal.timeout(10000),
|
|
113
|
+
});
|
|
114
|
+
const expectedStatus = te.expected_status;
|
|
115
|
+
const passed = expectedStatus
|
|
116
|
+
? res.status === expectedStatus
|
|
117
|
+
: res.status >= 200 && res.status < 300;
|
|
118
|
+
if (passed) {
|
|
119
|
+
return { passed: true, status_code: res.status };
|
|
120
|
+
}
|
|
121
|
+
// Failure — provide helpful suggestion
|
|
122
|
+
let suggestion;
|
|
123
|
+
if (res.status === 401) {
|
|
124
|
+
suggestion = "The key appears to be invalid or expired. Double-check it and try again.";
|
|
125
|
+
}
|
|
126
|
+
else if (res.status === 403) {
|
|
127
|
+
suggestion = "The key is valid but lacks required permissions/scopes.";
|
|
128
|
+
}
|
|
129
|
+
else if (res.status === 429) {
|
|
130
|
+
suggestion = "Rate limited. The credential may be correct — try again later.";
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
suggestion = `Unexpected status ${res.status}. The credential may still be correct.`;
|
|
134
|
+
}
|
|
135
|
+
return {
|
|
136
|
+
passed: false,
|
|
137
|
+
status_code: res.status,
|
|
138
|
+
error_message: `HTTP ${res.status}`,
|
|
139
|
+
suggestion,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
catch (err) {
|
|
143
|
+
return {
|
|
144
|
+
passed: false,
|
|
145
|
+
error_message: err instanceof Error ? err.message : "unknown error",
|
|
146
|
+
suggestion: "Service may be temporarily unavailable. Credentials may still be correct.",
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// ─── Main authenticate flow ──────────────────────────────────────
|
|
151
|
+
export async function authenticate(domain, overrideClientId, overrideClientSecret) {
|
|
152
|
+
// If override credentials passed, store them first
|
|
153
|
+
if (overrideClientId && overrideClientSecret) {
|
|
154
|
+
storeCredential(domain, {
|
|
155
|
+
type: "oauth2",
|
|
156
|
+
client_id: overrideClientId,
|
|
157
|
+
client_secret: overrideClientSecret,
|
|
158
|
+
added_at: new Date().toISOString(),
|
|
159
|
+
});
|
|
160
|
+
}
|
|
5
161
|
// Check existing token
|
|
6
162
|
const existing = getToken(domain);
|
|
7
163
|
if (existing && existing.access_token) {
|
|
@@ -55,19 +211,19 @@ export async function authenticate(domain) {
|
|
|
55
211
|
};
|
|
56
212
|
}
|
|
57
213
|
if (auth.type === "api_key") {
|
|
214
|
+
// Check credentials.json for a stored API key
|
|
215
|
+
const cred = getCredential(domain);
|
|
216
|
+
if (cred && cred.type === "api_key") {
|
|
217
|
+
return storeApiKey(domain, cred.api_key);
|
|
218
|
+
}
|
|
219
|
+
// No stored key — return setup instructions
|
|
220
|
+
const { text: instructions, guide } = await buildSetupInstructions(domain, manifest);
|
|
58
221
|
return {
|
|
59
222
|
success: false,
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
` domain: "${domain}"`,
|
|
65
|
-
`Then provide the API key when prompted.`,
|
|
66
|
-
``,
|
|
67
|
-
`Or set the key manually: the header is "${auth.header ?? "Authorization"}"${auth.prefix ? ` with prefix "${auth.prefix}"` : ""}.`,
|
|
68
|
-
]
|
|
69
|
-
.filter(Boolean)
|
|
70
|
-
.join("\n"),
|
|
223
|
+
needs_credentials: true,
|
|
224
|
+
setup_instructions: instructions,
|
|
225
|
+
guide,
|
|
226
|
+
message: instructions,
|
|
71
227
|
};
|
|
72
228
|
}
|
|
73
229
|
if (auth.type === "oauth2") {
|
|
@@ -78,6 +234,7 @@ export async function authenticate(domain) {
|
|
|
78
234
|
message: `Unknown auth type: ${auth.type}`,
|
|
79
235
|
};
|
|
80
236
|
}
|
|
237
|
+
// ─── Store API key ───────────────────────────────────────────────
|
|
81
238
|
export async function storeApiKey(domain, apiKey) {
|
|
82
239
|
let manifest;
|
|
83
240
|
try {
|
|
@@ -94,7 +251,13 @@ export async function storeApiKey(domain, apiKey) {
|
|
|
94
251
|
type: "api_key",
|
|
95
252
|
access_token: apiKey,
|
|
96
253
|
};
|
|
254
|
+
// Dual-write: tokens.json (runtime) + credentials.json (persistent)
|
|
97
255
|
storeToken(token);
|
|
256
|
+
storeCredential(domain, {
|
|
257
|
+
type: "api_key",
|
|
258
|
+
api_key: apiKey,
|
|
259
|
+
added_at: new Date().toISOString(),
|
|
260
|
+
});
|
|
98
261
|
storeConnection({
|
|
99
262
|
domain,
|
|
100
263
|
service_name: manifest.name,
|
|
@@ -102,30 +265,99 @@ export async function storeApiKey(domain, apiKey) {
|
|
|
102
265
|
token,
|
|
103
266
|
connected_at: new Date().toISOString(),
|
|
104
267
|
});
|
|
268
|
+
// Test credential if guide has a test endpoint
|
|
269
|
+
const guide = await getGuide(domain);
|
|
270
|
+
let test_result;
|
|
271
|
+
if (guide?.test_endpoint) {
|
|
272
|
+
test_result = await testCredential(domain, guide, manifest, token);
|
|
273
|
+
}
|
|
274
|
+
const testMsg = test_result
|
|
275
|
+
? test_result.passed
|
|
276
|
+
? `\nCredential test: PASSED (${guide.test_endpoint.method} ${guide.test_endpoint.path} → ${test_result.status_code ?? "OK"})`
|
|
277
|
+
: `\nCredential test: FAILED — ${test_result.error_message}. ${test_result.suggestion ?? ""}`
|
|
278
|
+
: "";
|
|
105
279
|
return {
|
|
106
280
|
success: true,
|
|
107
|
-
message: `API key stored for ${manifest.name}. Connected
|
|
281
|
+
message: `API key stored for ${manifest.name}. Connected.${testMsg}`,
|
|
108
282
|
token,
|
|
283
|
+
guide: guide ?? undefined,
|
|
284
|
+
test_result,
|
|
109
285
|
};
|
|
110
286
|
}
|
|
287
|
+
// ─── Registry proxy helpers ──────────────────────────────────────
|
|
288
|
+
async function fetchRegistryOAuthClient(domain) {
|
|
289
|
+
try {
|
|
290
|
+
const config = loadConfig();
|
|
291
|
+
const res = await fetch(`${config.registry_url}/api/services/${encodeURIComponent(domain)}/oauth-client`, {
|
|
292
|
+
signal: AbortSignal.timeout(10000),
|
|
293
|
+
});
|
|
294
|
+
if (!res.ok)
|
|
295
|
+
return null;
|
|
296
|
+
const data = await res.json();
|
|
297
|
+
if (!data.success)
|
|
298
|
+
return null;
|
|
299
|
+
return data.data;
|
|
300
|
+
}
|
|
301
|
+
catch {
|
|
302
|
+
return null;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
async function registryTokenExchange(domain, params) {
|
|
306
|
+
try {
|
|
307
|
+
const config = loadConfig();
|
|
308
|
+
const res = await fetch(`${config.registry_url}/api/services/${encodeURIComponent(domain)}/oauth-token`, {
|
|
309
|
+
method: "POST",
|
|
310
|
+
headers: { "Content-Type": "application/json" },
|
|
311
|
+
body: JSON.stringify(params),
|
|
312
|
+
signal: AbortSignal.timeout(15000),
|
|
313
|
+
});
|
|
314
|
+
if (!res.ok)
|
|
315
|
+
return null;
|
|
316
|
+
const data = await res.json();
|
|
317
|
+
if (!data.success)
|
|
318
|
+
return null;
|
|
319
|
+
return data.data;
|
|
320
|
+
}
|
|
321
|
+
catch {
|
|
322
|
+
return null;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
// ─── Token refresh ───────────────────────────────────────────────
|
|
111
326
|
async function tryRefreshToken(domain, existing) {
|
|
112
327
|
try {
|
|
113
328
|
const manifest = await fetchManifest(domain);
|
|
114
329
|
if (manifest.auth.type !== "oauth2" || !manifest.auth.token_url) {
|
|
115
330
|
return null;
|
|
116
331
|
}
|
|
117
|
-
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
|
|
332
|
+
// 1. Try registry proxy first
|
|
333
|
+
const registryResult = await registryTokenExchange(domain, {
|
|
334
|
+
grant_type: "refresh_token",
|
|
335
|
+
refresh_token: existing.refresh_token,
|
|
336
|
+
});
|
|
337
|
+
if (registryResult) {
|
|
338
|
+
const token = {
|
|
339
|
+
domain,
|
|
340
|
+
type: "oauth2",
|
|
341
|
+
access_token: registryResult.access_token,
|
|
342
|
+
refresh_token: registryResult.refresh_token ?? existing.refresh_token,
|
|
343
|
+
expires_at: registryResult.expires_in
|
|
344
|
+
? Date.now() + registryResult.expires_in * 1000
|
|
345
|
+
: undefined,
|
|
346
|
+
scopes: existing.scopes,
|
|
347
|
+
};
|
|
348
|
+
storeToken(token);
|
|
349
|
+
return token;
|
|
350
|
+
}
|
|
351
|
+
// 2. Try local credentials
|
|
352
|
+
const cred = getCredential(domain);
|
|
353
|
+
if (!cred || cred.type !== "oauth2")
|
|
354
|
+
return null;
|
|
121
355
|
const refreshParams = {
|
|
122
356
|
grant_type: "refresh_token",
|
|
123
357
|
refresh_token: existing.refresh_token,
|
|
358
|
+
client_id: cred.client_id,
|
|
359
|
+
client_secret: cred.client_secret,
|
|
124
360
|
};
|
|
125
|
-
if (creds) {
|
|
126
|
-
refreshParams.client_id = creds.clientId;
|
|
127
|
-
refreshParams.client_secret = creds.clientSecret;
|
|
128
|
-
}
|
|
129
361
|
const body = new URLSearchParams(refreshParams);
|
|
130
362
|
const res = await fetch(manifest.auth.token_url, {
|
|
131
363
|
method: "POST",
|
|
@@ -153,6 +385,7 @@ async function tryRefreshToken(domain, existing) {
|
|
|
153
385
|
return null;
|
|
154
386
|
}
|
|
155
387
|
}
|
|
388
|
+
// ─── OAuth2 flow ─────────────────────────────────────────────────
|
|
156
389
|
async function startOAuth2Flow(domain, manifest) {
|
|
157
390
|
const auth = manifest.auth;
|
|
158
391
|
if (!auth.authorization_url || !auth.token_url) {
|
|
@@ -165,16 +398,42 @@ async function startOAuth2Flow(domain, manifest) {
|
|
|
165
398
|
const port = config.auth_callback_port;
|
|
166
399
|
const redirectUri = `http://localhost:${port}/callback`;
|
|
167
400
|
const state = Math.random().toString(36).substring(2);
|
|
168
|
-
// Determine OAuth credentials based on the provider domain
|
|
169
401
|
const isGoogle = auth.authorization_url.includes("google.com") || auth.authorization_url.includes("googleapis.com");
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
402
|
+
// Resolve OAuth credentials
|
|
403
|
+
let clientId = null;
|
|
404
|
+
let clientSecret = null;
|
|
405
|
+
let useRegistryProxy = false;
|
|
406
|
+
let extraAuthParams = null;
|
|
407
|
+
// 1. Local credentials (user-owned)
|
|
408
|
+
const cred = getCredential(domain);
|
|
409
|
+
if (cred && cred.type === "oauth2") {
|
|
410
|
+
clientId = cred.client_id;
|
|
411
|
+
clientSecret = cred.client_secret;
|
|
412
|
+
}
|
|
413
|
+
// 2. Registry proxy (future paid tier)
|
|
414
|
+
if (!clientId) {
|
|
415
|
+
const registryClient = await fetchRegistryOAuthClient(domain);
|
|
416
|
+
if (registryClient) {
|
|
417
|
+
clientId = registryClient.client_id;
|
|
418
|
+
extraAuthParams = registryClient.extra_params ?? null;
|
|
419
|
+
useRegistryProxy = true;
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
// 3. No credentials available — return setup instructions
|
|
423
|
+
if (!clientId) {
|
|
424
|
+
const { text: instructions, guide } = await buildSetupInstructions(domain, manifest);
|
|
425
|
+
return {
|
|
426
|
+
success: false,
|
|
427
|
+
needs_credentials: true,
|
|
428
|
+
setup_instructions: instructions,
|
|
429
|
+
guide,
|
|
430
|
+
message: instructions,
|
|
431
|
+
};
|
|
432
|
+
}
|
|
433
|
+
// Build authorization URL
|
|
173
434
|
const authUrl = new URL(auth.authorization_url);
|
|
174
435
|
authUrl.searchParams.set("response_type", "code");
|
|
175
|
-
|
|
176
|
-
authUrl.searchParams.set("client_id", credentials.clientId);
|
|
177
|
-
}
|
|
436
|
+
authUrl.searchParams.set("client_id", clientId);
|
|
178
437
|
authUrl.searchParams.set("redirect_uri", redirectUri);
|
|
179
438
|
authUrl.searchParams.set("state", state);
|
|
180
439
|
if (isGoogle) {
|
|
@@ -184,6 +443,11 @@ async function startOAuth2Flow(domain, manifest) {
|
|
|
184
443
|
if (auth.scopes?.length) {
|
|
185
444
|
authUrl.searchParams.set("scope", auth.scopes.join(" "));
|
|
186
445
|
}
|
|
446
|
+
if (extraAuthParams) {
|
|
447
|
+
for (const [key, value] of Object.entries(extraAuthParams)) {
|
|
448
|
+
authUrl.searchParams.set(key, String(value));
|
|
449
|
+
}
|
|
450
|
+
}
|
|
187
451
|
// Start local callback server
|
|
188
452
|
const tokenPromise = new Promise((resolve, reject) => {
|
|
189
453
|
const timeout = setTimeout(() => {
|
|
@@ -215,26 +479,39 @@ async function startOAuth2Flow(domain, manifest) {
|
|
|
215
479
|
}
|
|
216
480
|
// Exchange code for token
|
|
217
481
|
try {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
482
|
+
let tokenData;
|
|
483
|
+
if (useRegistryProxy) {
|
|
484
|
+
const result = await registryTokenExchange(domain, {
|
|
485
|
+
code,
|
|
486
|
+
redirect_uri: redirectUri,
|
|
487
|
+
});
|
|
488
|
+
if (!result)
|
|
489
|
+
throw new Error("Token exchange via registry failed.");
|
|
490
|
+
tokenData = result;
|
|
226
491
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
492
|
+
else {
|
|
493
|
+
// Direct exchange with user's own credentials
|
|
494
|
+
const tokenParams = {
|
|
495
|
+
grant_type: "authorization_code",
|
|
496
|
+
code,
|
|
497
|
+
redirect_uri: redirectUri,
|
|
498
|
+
client_id: clientId,
|
|
499
|
+
};
|
|
500
|
+
if (clientSecret) {
|
|
501
|
+
tokenParams.client_secret = clientSecret;
|
|
502
|
+
}
|
|
503
|
+
const tokenBody = new URLSearchParams(tokenParams);
|
|
504
|
+
const tokenRes = await fetch(auth.token_url, {
|
|
505
|
+
method: "POST",
|
|
506
|
+
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
|
507
|
+
body: tokenBody.toString(),
|
|
508
|
+
signal: AbortSignal.timeout(10000),
|
|
509
|
+
});
|
|
510
|
+
if (!tokenRes.ok) {
|
|
511
|
+
throw new Error(`Token exchange failed: HTTP ${tokenRes.status}`);
|
|
512
|
+
}
|
|
513
|
+
tokenData = (await tokenRes.json());
|
|
236
514
|
}
|
|
237
|
-
const tokenData = (await tokenRes.json());
|
|
238
515
|
const token = {
|
|
239
516
|
domain,
|
|
240
517
|
type: "oauth2",
|
|
@@ -282,10 +559,23 @@ async function startOAuth2Flow(domain, manifest) {
|
|
|
282
559
|
token,
|
|
283
560
|
connected_at: new Date().toISOString(),
|
|
284
561
|
});
|
|
562
|
+
// Test credential if guide has a test endpoint
|
|
563
|
+
const guide = await getGuide(domain);
|
|
564
|
+
let test_result;
|
|
565
|
+
if (guide?.test_endpoint) {
|
|
566
|
+
test_result = await testCredential(domain, guide, manifest, token);
|
|
567
|
+
}
|
|
568
|
+
const testMsg = test_result
|
|
569
|
+
? test_result.passed
|
|
570
|
+
? `\nCredential test: PASSED (${guide.test_endpoint.method} ${guide.test_endpoint.path} → ${test_result.status_code ?? "OK"})`
|
|
571
|
+
: `\nCredential test: FAILED — ${test_result.error_message}. ${test_result.suggestion ?? ""}`
|
|
572
|
+
: "";
|
|
285
573
|
return {
|
|
286
574
|
success: true,
|
|
287
|
-
message: `${openMessage}\n\nConnected to ${manifest.name} via OAuth2
|
|
575
|
+
message: `${openMessage}\n\nConnected to ${manifest.name} via OAuth2.${testMsg}`,
|
|
288
576
|
token,
|
|
577
|
+
guide: guide ?? undefined,
|
|
578
|
+
test_result,
|
|
289
579
|
};
|
|
290
580
|
}
|
|
291
581
|
catch (err) {
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -13,15 +13,6 @@ export declare function getConnection(domain: string): Connection | undefined;
|
|
|
13
13
|
export declare function storeConnection(connection: Connection): void;
|
|
14
14
|
export declare function getAllConnections(): Connection[];
|
|
15
15
|
export declare function getAllTokens(): StoredToken[];
|
|
16
|
-
export declare function syncTokensToCloud(): Promise<{
|
|
17
|
-
success: boolean;
|
|
18
|
-
error?: string;
|
|
19
|
-
}>;
|
|
20
|
-
export declare function syncTokensFromCloud(): Promise<{
|
|
21
|
-
success: boolean;
|
|
22
|
-
count: number;
|
|
23
|
-
error?: string;
|
|
24
|
-
}>;
|
|
25
16
|
export declare function getCachedDiscovery(query: string): RegistryDiscoverResponse | undefined;
|
|
26
17
|
export declare function setCachedDiscovery(query: string, results: RegistryDiscoverResponse): void;
|
|
27
18
|
export declare function getCachedManifest(domain: string): Manifest | undefined;
|
|
@@ -29,8 +20,4 @@ export declare function setCachedManifest(domain: string, manifest: Manifest): v
|
|
|
29
20
|
export declare function getCachedCapability(domain: string, capName: string): CapabilityDetail | undefined;
|
|
30
21
|
export declare function setCachedCapability(domain: string, capName: string, detail: CapabilityDetail): void;
|
|
31
22
|
export declare function clearAllCaches(): void;
|
|
32
|
-
export declare function getOAuthCredentials(provider: "google" | "github"): {
|
|
33
|
-
clientId: string;
|
|
34
|
-
clientSecret: string;
|
|
35
|
-
};
|
|
36
23
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,QAAQ,EACR,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAqBpB,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEhD;AAoBD,wBAAgB,UAAU,IAAI,aAAa,CA+B1C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAQtD;AAID,wBAAgB,WAAW,IAAI,YAAY,GAAG,SAAS,CAGtD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAI1D;AAED,wBAAgB,aAAa,IAAI,IAAI,CAIpC;AAED,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AA2BD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAQhE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAInD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKhD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGpE;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAI5D;AAED,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED,wBAAgB,YAAY,IAAI,WAAW,EAAE,CAG5C;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS,CAEtF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAEzF;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE1E;AAGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEjG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAEnG;AAGD,wBAAgB,cAAc,IAAI,IAAI,CAQrC"}
|