@dain-os/mcp-server 0.11.0 → 0.13.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 (41) hide show
  1. package/dist/http-util.d.ts +24 -0
  2. package/dist/http-util.d.ts.map +1 -0
  3. package/dist/http-util.js +113 -0
  4. package/dist/http-util.js.map +1 -0
  5. package/dist/http.d.ts +5 -0
  6. package/dist/http.d.ts.map +1 -1
  7. package/dist/http.js +92 -32
  8. package/dist/http.js.map +1 -1
  9. package/dist/index.js +2 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/meta.d.ts +27 -0
  12. package/dist/meta.d.ts.map +1 -0
  13. package/dist/meta.js +81 -0
  14. package/dist/meta.js.map +1 -0
  15. package/dist/oauth/config.d.ts +57 -0
  16. package/dist/oauth/config.d.ts.map +1 -0
  17. package/dist/oauth/config.js +74 -0
  18. package/dist/oauth/config.js.map +1 -0
  19. package/dist/oauth/consent-page.d.ts +24 -0
  20. package/dist/oauth/consent-page.d.ts.map +1 -0
  21. package/dist/oauth/consent-page.js +98 -0
  22. package/dist/oauth/consent-page.js.map +1 -0
  23. package/dist/oauth/crypto.d.ts +48 -0
  24. package/dist/oauth/crypto.d.ts.map +1 -0
  25. package/dist/oauth/crypto.js +72 -0
  26. package/dist/oauth/crypto.js.map +1 -0
  27. package/dist/oauth/handlers.d.ts +89 -0
  28. package/dist/oauth/handlers.d.ts.map +1 -0
  29. package/dist/oauth/handlers.js +371 -0
  30. package/dist/oauth/handlers.js.map +1 -0
  31. package/dist/oauth/metadata.d.ts +29 -0
  32. package/dist/oauth/metadata.d.ts.map +1 -0
  33. package/dist/oauth/metadata.js +33 -0
  34. package/dist/oauth/metadata.js.map +1 -0
  35. package/dist/tools/registry.d.ts.map +1 -1
  36. package/dist/tools/registry.js +8 -0
  37. package/dist/tools/registry.js.map +1 -1
  38. package/dist/tools/semantic/developer.d.ts.map +1 -1
  39. package/dist/tools/semantic/developer.js +6 -0
  40. package/dist/tools/semantic/developer.js.map +1 -1
  41. package/package.json +2 -1
@@ -0,0 +1,371 @@
1
+ /**
2
+ * OAuth 2.1 endpoint handlers for the paste-PAT bridge.
3
+ *
4
+ * Endpoints:
5
+ * GET /.well-known/oauth-protected-resource metadata (RFC 9728)
6
+ * GET /.well-known/oauth-authorization-server metadata (RFC 8414)
7
+ * POST /register Dynamic Client Registration (RFC 7591)
8
+ * GET /authorize consent page (paste PAT)
9
+ * POST /authorize issue authorization code
10
+ * POST /token code -> token, refresh -> token
11
+ *
12
+ * The pure cores (validateAuthorizeRequest, createAuthorizationCode,
13
+ * exchangeAuthorizationCode, refreshTokens, recoverPat) are exported and unit
14
+ * tested directly; the handle* wrappers only do req/res plumbing.
15
+ */
16
+ import { DainOsClient, DainOsApiError } from '../client.js';
17
+ import { PAT_PREFIX, SCOPE, ACCESS_TOKEN_TTL_SECONDS, } from './config.js';
18
+ import { issueAccessToken, issueAuthorizationCode, issueClientId, issueRefreshToken, readAccessToken, readAuthorizationCode, readClientId, readRefreshToken, verifyPkceS256, } from './crypto.js';
19
+ import { authorizationServerMetadata, protectedResourceMetadata } from './metadata.js';
20
+ import { renderConsentPage } from './consent-page.js';
21
+ import { parseFormBody, parseJsonBody, sendHtml, sendJson, sendRedirect, } from '../http-util.js';
22
+ /** An OAuth error renderable as an RFC 6749 error response. */
23
+ export class OAuthError extends Error {
24
+ error;
25
+ status;
26
+ constructor(error, description, status = 400) {
27
+ super(description);
28
+ this.name = 'OAuthError';
29
+ this.error = error;
30
+ this.status = status;
31
+ }
32
+ toBody() {
33
+ return { error: this.error, error_description: this.message };
34
+ }
35
+ }
36
+ // ---------------------------------------------------------------------------
37
+ // Pure cores
38
+ // ---------------------------------------------------------------------------
39
+ /**
40
+ * Validate the inbound /authorize parameters and the dynamically-registered
41
+ * client. Returns a discriminated result rather than throwing so both the GET
42
+ * (render) and POST (submit) paths can branch cleanly.
43
+ */
44
+ export async function validateAuthorizeRequest(params) {
45
+ const responseType = params['response_type'];
46
+ const clientId = params['client_id'];
47
+ const redirectUri = params['redirect_uri'];
48
+ const codeChallenge = params['code_challenge'];
49
+ const codeChallengeMethod = params['code_challenge_method'] ?? 'S256';
50
+ if (responseType !== undefined && responseType !== 'code') {
51
+ return { ok: false, error: 'unsupported_response_type', description: 'Only response_type=code is supported.' };
52
+ }
53
+ if (!clientId) {
54
+ return { ok: false, error: 'invalid_request', description: 'client_id is required.' };
55
+ }
56
+ if (!redirectUri) {
57
+ return { ok: false, error: 'invalid_request', description: 'redirect_uri is required.' };
58
+ }
59
+ if (!codeChallenge) {
60
+ return { ok: false, error: 'invalid_request', description: 'code_challenge is required (PKCE).' };
61
+ }
62
+ if (codeChallengeMethod !== 'S256') {
63
+ return { ok: false, error: 'invalid_request', description: 'code_challenge_method must be S256.' };
64
+ }
65
+ let allowedRedirects;
66
+ try {
67
+ const client = await readClientId(clientId);
68
+ allowedRedirects = client.redirect_uris ?? [];
69
+ }
70
+ catch {
71
+ return { ok: false, error: 'invalid_client', description: 'Unknown or expired client_id. Re-register the connector.' };
72
+ }
73
+ if (!allowedRedirects.includes(redirectUri)) {
74
+ return { ok: false, error: 'invalid_request', description: 'redirect_uri does not match the registered client.' };
75
+ }
76
+ return {
77
+ ok: true,
78
+ parsed: {
79
+ clientId,
80
+ redirectUri,
81
+ codeChallenge,
82
+ codeChallengeMethod,
83
+ state: params['state'],
84
+ scope: params['scope'],
85
+ },
86
+ };
87
+ }
88
+ /** Mint a short-lived authorization code embedding the PAT + PKCE challenge. */
89
+ export async function createAuthorizationCode(input) {
90
+ return issueAuthorizationCode({
91
+ pat: input.pat,
92
+ client_id: input.clientId,
93
+ redirect_uri: input.redirectUri,
94
+ code_challenge: input.codeChallenge,
95
+ });
96
+ }
97
+ async function buildTokenResponse(pat) {
98
+ const [access, refresh] = await Promise.all([
99
+ issueAccessToken({ pat }),
100
+ issueRefreshToken({ pat }),
101
+ ]);
102
+ return {
103
+ access_token: access,
104
+ token_type: 'Bearer',
105
+ expires_in: ACCESS_TOKEN_TTL_SECONDS,
106
+ refresh_token: refresh,
107
+ scope: SCOPE,
108
+ };
109
+ }
110
+ /** authorization_code grant: verify the code + PKCE, return fresh tokens. */
111
+ export async function exchangeAuthorizationCode(form) {
112
+ const code = form['code'];
113
+ const verifier = form['code_verifier'];
114
+ if (!code)
115
+ throw new OAuthError('invalid_request', 'code is required.');
116
+ if (!verifier)
117
+ throw new OAuthError('invalid_request', 'code_verifier is required (PKCE).');
118
+ let claims;
119
+ try {
120
+ claims = await readAuthorizationCode(code);
121
+ }
122
+ catch {
123
+ throw new OAuthError('invalid_grant', 'Authorization code is invalid or has expired.');
124
+ }
125
+ // OAuth 2.1 / RFC 9700: the client_id and redirect_uri presented here MUST
126
+ // match the values bound into the code. These are mandatory, not best-effort
127
+ // — skipping them when the fields are absent lets a code be redeemed by a
128
+ // client other than the one it was issued to.
129
+ const clientId = form['client_id'];
130
+ const redirectUri = form['redirect_uri'];
131
+ if (!clientId) {
132
+ throw new OAuthError('invalid_request', 'client_id is required.');
133
+ }
134
+ if (claims.client_id !== clientId) {
135
+ throw new OAuthError('invalid_grant', 'client_id does not match the authorization code.');
136
+ }
137
+ if (claims.redirect_uri !== redirectUri) {
138
+ throw new OAuthError('invalid_grant', 'redirect_uri does not match the authorization code.');
139
+ }
140
+ if (!verifyPkceS256(verifier, claims.code_challenge)) {
141
+ throw new OAuthError('invalid_grant', 'PKCE verification failed.');
142
+ }
143
+ return buildTokenResponse(claims.pat);
144
+ }
145
+ /** refresh_token grant: re-issue an access token (and rotate the refresh token). */
146
+ export async function refreshTokens(form) {
147
+ const refreshToken = form['refresh_token'];
148
+ if (!refreshToken)
149
+ throw new OAuthError('invalid_request', 'refresh_token is required.');
150
+ let claims;
151
+ try {
152
+ claims = await readRefreshToken(refreshToken);
153
+ }
154
+ catch {
155
+ throw new OAuthError('invalid_grant', 'Refresh token is invalid or has expired.');
156
+ }
157
+ return buildTokenResponse(claims.pat);
158
+ }
159
+ /**
160
+ * Recover the underlying PAT from an inbound Authorization Bearer value.
161
+ *
162
+ * Accepts either a raw `dain_pat_...` (Claude Code path, unchanged) or an
163
+ * OAuth access token (encrypted JWT minted by /token). Returns null when the
164
+ * value is neither, so the caller can emit a 401 + WWW-Authenticate challenge.
165
+ */
166
+ export async function recoverPat(bearer) {
167
+ if (!bearer)
168
+ return null;
169
+ if (bearer.startsWith(PAT_PREFIX))
170
+ return bearer;
171
+ try {
172
+ const { pat } = await readAccessToken(bearer);
173
+ return typeof pat === 'string' && pat.startsWith(PAT_PREFIX) ? pat : null;
174
+ }
175
+ catch {
176
+ return null;
177
+ }
178
+ }
179
+ /**
180
+ * Probe the pasted PAT against the API so an obviously wrong token fails on the
181
+ * consent page rather than silently later. A network blip returns 'unknown',
182
+ * which the caller treats as "let it through" so an API hiccup never blocks a
183
+ * genuine connection — the first /mcp call would still reject a bad token.
184
+ */
185
+ async function validatePat(pat) {
186
+ // Reuse the vetted DainOS client (fixed allowlisted host derivation) rather
187
+ // than a raw fetch, so the only network egress in this package stays in one
188
+ // place. `/auth/me` is the cheapest PAT-authenticated endpoint.
189
+ const client = new DainOsClient(process.env['DAINOS_API_URL'], pat);
190
+ try {
191
+ await client.request('GET', '/auth/me');
192
+ return 'valid';
193
+ }
194
+ catch (error) {
195
+ if (error instanceof DainOsApiError && (error.status === 401 || error.status === 403)) {
196
+ return 'invalid';
197
+ }
198
+ return 'unknown';
199
+ }
200
+ }
201
+ // The only OAuth client of this server is Claude, so registered redirect URIs
202
+ // are locked to its callback domains (overridable via env for other clients or
203
+ // local testing). Without this, Dynamic Client Registration accepts ANY
204
+ // redirect_uri, so an attacker could register `https://attacker.example/cb`,
205
+ // phish a user into pasting their PAT on the consent page, and have the
206
+ // resulting authorization code (and thus an impersonating token) delivered to
207
+ // their own server.
208
+ const DEFAULT_REDIRECT_HOSTS = ['claude.ai', 'claude.com', 'anthropic.com'];
209
+ function allowedRedirectHosts() {
210
+ const env = process.env['MCP_ALLOWED_REDIRECT_HOSTS'];
211
+ if (env && env.trim()) {
212
+ return env.split(',').map((h) => h.trim().toLowerCase()).filter(Boolean);
213
+ }
214
+ return DEFAULT_REDIRECT_HOSTS;
215
+ }
216
+ function isLoopback(hostname) {
217
+ return hostname === 'localhost' || hostname === '127.0.0.1' || hostname === '[::1]';
218
+ }
219
+ /** Accept https on an allowlisted host, or http on loopback (local testing). */
220
+ export function isAllowedRedirectUri(uri) {
221
+ let url;
222
+ try {
223
+ url = new URL(uri);
224
+ }
225
+ catch {
226
+ return false;
227
+ }
228
+ const host = url.hostname.toLowerCase();
229
+ if (url.protocol === 'http:' && isLoopback(host))
230
+ return true;
231
+ if (url.protocol !== 'https:')
232
+ return false;
233
+ return allowedRedirectHosts().some((allowed) => host === allowed || host.endsWith(`.${allowed}`));
234
+ }
235
+ function extractRedirectUris(body) {
236
+ if (typeof body !== 'object' || body === null)
237
+ return [];
238
+ const record = body;
239
+ const raw = Array.isArray(record['redirect_uris'])
240
+ ? record['redirect_uris']
241
+ : typeof record['redirect_uri'] === 'string'
242
+ ? [record['redirect_uri']]
243
+ : [];
244
+ return raw.filter((u) => typeof u === 'string' && isAllowedRedirectUri(u));
245
+ }
246
+ // ---------------------------------------------------------------------------
247
+ // req/res handlers
248
+ // ---------------------------------------------------------------------------
249
+ export function handleProtectedResourceMetadata(res, baseUrl) {
250
+ sendJson(res, 200, protectedResourceMetadata(baseUrl));
251
+ }
252
+ export function handleAuthorizationServerMetadata(res, baseUrl) {
253
+ sendJson(res, 200, authorizationServerMetadata(baseUrl));
254
+ }
255
+ export async function handleRegister(req, res) {
256
+ let body;
257
+ try {
258
+ body = await parseJsonBody(req);
259
+ }
260
+ catch {
261
+ sendJson(res, 400, { error: 'invalid_request', error_description: 'Request body must be valid JSON.' });
262
+ return;
263
+ }
264
+ const redirectUris = extractRedirectUris(body);
265
+ if (redirectUris.length === 0) {
266
+ sendJson(res, 400, {
267
+ error: 'invalid_redirect_uri',
268
+ error_description: 'redirect_uris is required and must contain at least one URI.',
269
+ });
270
+ return;
271
+ }
272
+ const clientId = await issueClientId({ redirect_uris: redirectUris });
273
+ sendJson(res, 201, {
274
+ client_id: clientId,
275
+ client_id_issued_at: Math.floor(Date.now() / 1000),
276
+ redirect_uris: redirectUris,
277
+ grant_types: ['authorization_code', 'refresh_token'],
278
+ response_types: ['code'],
279
+ token_endpoint_auth_method: 'none',
280
+ scope: SCOPE,
281
+ });
282
+ }
283
+ function renderError(res, description) {
284
+ sendHtml(res, 400, `<!DOCTYPE html><html lang="en-GB"><head><meta charset="utf-8" /><title>Connection error</title></head>` +
285
+ `<body style="font-family:sans-serif;max-width:480px;margin:80px auto;padding:0 24px">` +
286
+ `<h1>Could not start the connection</h1><p>${description.replace(/</g, '&lt;')}</p>` +
287
+ `<p>Please remove the connector and add it again.</p></body></html>`);
288
+ }
289
+ /** GET shows the paste-PAT page; POST validates the PAT and issues a code. */
290
+ export async function handleAuthorize(req, res, query) {
291
+ if (req.method === 'GET') {
292
+ const validation = await validateAuthorizeRequest(query);
293
+ if (!validation.ok) {
294
+ renderError(res, validation.description);
295
+ return;
296
+ }
297
+ const { parsed } = validation;
298
+ sendHtml(res, 200, renderConsentPage({
299
+ clientId: parsed.clientId,
300
+ redirectUri: parsed.redirectUri,
301
+ codeChallenge: parsed.codeChallenge,
302
+ codeChallengeMethod: parsed.codeChallengeMethod,
303
+ state: parsed.state,
304
+ scope: parsed.scope,
305
+ }));
306
+ return;
307
+ }
308
+ // POST — form submission from the consent page.
309
+ const form = await parseFormBody(req);
310
+ const validation = await validateAuthorizeRequest(form);
311
+ if (!validation.ok) {
312
+ renderError(res, validation.description);
313
+ return;
314
+ }
315
+ const { parsed } = validation;
316
+ const pat = (form['pat'] ?? '').trim();
317
+ const reRender = (error) => sendHtml(res, 200, renderConsentPage({
318
+ clientId: parsed.clientId,
319
+ redirectUri: parsed.redirectUri,
320
+ codeChallenge: parsed.codeChallenge,
321
+ codeChallengeMethod: parsed.codeChallengeMethod,
322
+ state: parsed.state,
323
+ scope: parsed.scope,
324
+ error,
325
+ }));
326
+ if (!pat.startsWith(PAT_PREFIX)) {
327
+ reRender('That does not look like a DainOS API token. It should start with "dain_pat_".');
328
+ return;
329
+ }
330
+ const status = await validatePat(pat);
331
+ if (status === 'invalid') {
332
+ reRender('That token was rejected by DainOS. Create a fresh one and try again.');
333
+ return;
334
+ }
335
+ const code = await createAuthorizationCode({
336
+ pat,
337
+ clientId: parsed.clientId,
338
+ redirectUri: parsed.redirectUri,
339
+ codeChallenge: parsed.codeChallenge,
340
+ });
341
+ const redirect = new URL(parsed.redirectUri);
342
+ redirect.searchParams.set('code', code);
343
+ if (parsed.state !== undefined)
344
+ redirect.searchParams.set('state', parsed.state);
345
+ sendRedirect(res, redirect.toString());
346
+ }
347
+ export async function handleToken(req, res) {
348
+ const form = await parseFormBody(req);
349
+ const grantType = form['grant_type'];
350
+ try {
351
+ let tokens;
352
+ if (grantType === 'authorization_code') {
353
+ tokens = await exchangeAuthorizationCode(form);
354
+ }
355
+ else if (grantType === 'refresh_token') {
356
+ tokens = await refreshTokens(form);
357
+ }
358
+ else {
359
+ throw new OAuthError('unsupported_grant_type', `Unsupported grant_type: ${String(grantType)}`);
360
+ }
361
+ sendJson(res, 200, tokens, { 'Cache-Control': 'no-store', Pragma: 'no-cache' });
362
+ }
363
+ catch (error) {
364
+ if (error instanceof OAuthError) {
365
+ sendJson(res, error.status, error.toBody(), { 'Cache-Control': 'no-store' });
366
+ return;
367
+ }
368
+ sendJson(res, 500, { error: 'server_error', error_description: 'Unexpected error issuing token.' });
369
+ }
370
+ }
371
+ //# sourceMappingURL=handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/oauth/handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * OAuth discovery documents.
3
+ *
4
+ * Claude's browser connector bootstraps the flow by fetching:
5
+ * 1. /.well-known/oauth-protected-resource (RFC 9728) — points at the AS
6
+ * 2. /.well-known/oauth-authorization-server (RFC 8414) — lists endpoints
7
+ *
8
+ * For a single-origin server like ours, the protected resource and the
9
+ * authorization server are the same origin.
10
+ */
11
+ export interface ProtectedResourceMetadata {
12
+ resource: string;
13
+ authorization_servers: string[];
14
+ scopes_supported: string[];
15
+ }
16
+ export interface AuthorizationServerMetadata {
17
+ issuer: string;
18
+ authorization_endpoint: string;
19
+ token_endpoint: string;
20
+ registration_endpoint: string;
21
+ response_types_supported: string[];
22
+ grant_types_supported: string[];
23
+ code_challenge_methods_supported: string[];
24
+ token_endpoint_auth_methods_supported: string[];
25
+ scopes_supported: string[];
26
+ }
27
+ export declare function protectedResourceMetadata(baseUrl: string): ProtectedResourceMetadata;
28
+ export declare function authorizationServerMetadata(baseUrl: string): AuthorizationServerMetadata;
29
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/oauth/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gCAAgC,EAAE,MAAM,EAAE,CAAC;IAC3C,qCAAqC,EAAE,MAAM,EAAE,CAAC;IAChD,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,yBAAyB,CAMpF;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,2BAA2B,CAaxF"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * OAuth discovery documents.
3
+ *
4
+ * Claude's browser connector bootstraps the flow by fetching:
5
+ * 1. /.well-known/oauth-protected-resource (RFC 9728) — points at the AS
6
+ * 2. /.well-known/oauth-authorization-server (RFC 8414) — lists endpoints
7
+ *
8
+ * For a single-origin server like ours, the protected resource and the
9
+ * authorization server are the same origin.
10
+ */
11
+ import { SCOPE } from './config.js';
12
+ export function protectedResourceMetadata(baseUrl) {
13
+ return {
14
+ resource: baseUrl,
15
+ authorization_servers: [baseUrl],
16
+ scopes_supported: [SCOPE],
17
+ };
18
+ }
19
+ export function authorizationServerMetadata(baseUrl) {
20
+ return {
21
+ issuer: baseUrl,
22
+ authorization_endpoint: `${baseUrl}/authorize`,
23
+ token_endpoint: `${baseUrl}/token`,
24
+ registration_endpoint: `${baseUrl}/register`,
25
+ response_types_supported: ['code'],
26
+ grant_types_supported: ['authorization_code', 'refresh_token'],
27
+ code_challenge_methods_supported: ['S256'],
28
+ // Public client + PKCE. We do not issue client secrets.
29
+ token_endpoint_auth_methods_supported: ['none'],
30
+ scopes_supported: [SCOPE],
31
+ };
32
+ }
33
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/oauth/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAoBpC,MAAM,UAAU,yBAAyB,CAAC,OAAe;IACvD,OAAO;QACL,QAAQ,EAAE,OAAO;QACjB,qBAAqB,EAAE,CAAC,OAAO,CAAC;QAChC,gBAAgB,EAAE,CAAC,KAAK,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO;QACL,MAAM,EAAE,OAAO;QACf,sBAAsB,EAAE,GAAG,OAAO,YAAY;QAC9C,cAAc,EAAE,GAAG,OAAO,QAAQ;QAClC,qBAAqB,EAAE,GAAG,OAAO,WAAW;QAC5C,wBAAwB,EAAE,CAAC,MAAM,CAAC;QAClC,qBAAqB,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;QAC9D,gCAAgC,EAAE,CAAC,MAAM,CAAC;QAC1C,wDAAwD;QACxD,qCAAqC,EAAE,CAAC,MAAM,CAAC;QAC/C,gBAAgB,EAAE,CAAC,KAAK,CAAC;KAC1B,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,KAAK,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAErF,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,qDAAqD;IACrD,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;IACpE,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;CACjE;AAKD,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CA2VjD,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,iBAAiB,CAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQzB"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,KAAK,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAErF,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,qDAAqD;IACrD,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;IACpE,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;CACjE;AAKD,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAmWjD,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,iBAAiB,CAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQzB"}
@@ -195,6 +195,8 @@ export const RESOURCES = {
195
195
  product_id: { type: 'uuid', description: 'Linked product UUID', nullable: true },
196
196
  task_ids: { type: 'json', description: 'Array of task UUIDs (max 100)', nullable: true },
197
197
  operator_iam_user_id: { type: 'uuid', description: 'Operator IAM user UUID', nullable: true },
198
+ client_id: { type: 'uuid', description: 'DainOS client company UUID (crm.companies.id)', nullable: true },
199
+ project_ids: { type: 'json', description: 'Array of DainOS project UUIDs', nullable: true },
198
200
  },
199
201
  },
200
202
  developer_changelog: {
@@ -220,6 +222,9 @@ export const RESOURCES = {
220
222
  pr_number: { type: 'number', description: 'PR number', nullable: true },
221
223
  pr_url: { type: 'string', description: 'PR URL', nullable: true },
222
224
  tags: { type: 'json', description: 'Array of string tags', nullable: true },
225
+ client_id: { type: 'uuid', description: 'DainOS client company UUID (crm.companies.id)', nullable: true },
226
+ project_ids: { type: 'json', description: 'Array of DainOS project UUIDs', nullable: true },
227
+ task_ids: { type: 'json', description: 'Array of DainOS task UUIDs', nullable: true },
223
228
  },
224
229
  },
225
230
  developer_knowledge_base: {
@@ -243,6 +248,9 @@ export const RESOURCES = {
243
248
  source_refs: { type: 'json', description: 'Array of links/paths', nullable: true },
244
249
  tags: { type: 'json', description: 'Array of tags', nullable: true },
245
250
  platform: { type: 'string', description: 'e.g. "supabase"', nullable: true },
251
+ client_id: { type: 'uuid', description: 'DainOS client company UUID (crm.companies.id)', nullable: true },
252
+ project_ids: { type: 'json', description: 'Array of DainOS project UUIDs', nullable: true },
253
+ task_ids: { type: 'json', description: 'Array of DainOS task UUIDs', nullable: true },
246
254
  },
247
255
  },
248
256
  // ── IAM ───────────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"developer.d.ts","sourceRoot":"","sources":["../../../src/tools/semantic/developer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AA6JlD,eAAO,MAAM,sBAAsB,EAAE,cAAc,EAKlD,CAAC"}
1
+ {"version":3,"file":"developer.d.ts","sourceRoot":"","sources":["../../../src/tools/semantic/developer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AA+KlD,eAAO,MAAM,sBAAsB,EAAE,cAAc,EAKlD,CAAC"}
@@ -53,6 +53,9 @@ const changelogEntrySchema = z.object({
53
53
  committed_at: z.string().describe('ISO 8601 timestamp.'),
54
54
  pr_number: nullishOptional(z.coerce.number().int()),
55
55
  pr_url: optionalString,
56
+ client_id: nullishOptional(z.string().uuid()).describe('DainOS client company UUID this work is for (crm.companies.id).'),
57
+ project_ids: nullishOptional(z.array(z.string().uuid()).max(100)).describe('DainOS project UUIDs this work touches.'),
58
+ task_ids: nullishOptional(z.array(z.string().uuid()).max(100)).describe('DainOS task UUIDs this work relates to.'),
56
59
  });
57
60
  const logChangelogEntry = {
58
61
  name: 'log_changelog_entry',
@@ -84,6 +87,9 @@ const kbEntrySchema = z.object({
84
87
  source_refs: nullishOptional(z.array(z.string())).describe('Links, file paths, or SHAs.'),
85
88
  tags: nullishOptional(z.array(z.string())),
86
89
  platform: optionalString.describe('e.g. "supabase", "anthropic", "vercel".'),
90
+ client_id: nullishOptional(z.string().uuid()).describe('DainOS client company UUID this entry is for (crm.companies.id).'),
91
+ project_ids: nullishOptional(z.array(z.string().uuid()).max(100)).describe('DainOS project UUIDs this entry relates to.'),
92
+ task_ids: nullishOptional(z.array(z.string().uuid()).max(100)).describe('DainOS task UUIDs this entry relates to.'),
87
93
  });
88
94
  const logKnowledgeBaseEntry = {
89
95
  name: 'log_knowledge_base_entry',