fa-mcp-sdk 0.4.12 → 0.4.14
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/cli-template/CLAUDE.md +1 -1
- package/cli-template/FA-MCP-SDK-DOC/00-FA-MCP-SDK-index.md +1 -1
- package/cli-template/FA-MCP-SDK-DOC/01-getting-started.md +1 -0
- package/cli-template/FA-MCP-SDK-DOC/03-configuration.md +5 -0
- package/cli-template/FA-MCP-SDK-DOC/04-authentication.md +19 -0
- package/cli-template/FA-MCP-SDK-DOC/08-agent-tester-and-headless-api.md +311 -8
- package/cli-template/package.json +1 -1
- package/config/_local.yaml +15 -3
- package/config/custom-environment-variables.yaml +3 -0
- package/config/default.yaml +10 -1
- package/config/local_.yaml +112 -0
- package/dist/core/_types_/config.d.ts +12 -2
- package/dist/core/_types_/config.d.ts.map +1 -1
- package/dist/core/agent-tester/agent-tester-router.d.ts.map +1 -1
- package/dist/core/agent-tester/agent-tester-router.js +39 -1
- package/dist/core/agent-tester/agent-tester-router.js.map +1 -1
- package/dist/core/agent-tester/services/TesterMcpClientService.js +11 -11
- package/dist/core/auth/agent-tester-auth.d.ts +42 -0
- package/dist/core/auth/agent-tester-auth.d.ts.map +1 -0
- package/dist/core/auth/agent-tester-auth.js +166 -0
- package/dist/core/auth/agent-tester-auth.js.map +1 -0
- package/dist/core/auth/middleware.d.ts.map +1 -1
- package/dist/core/auth/middleware.js +4 -0
- package/dist/core/auth/middleware.js.map +1 -1
- package/dist/core/bootstrap/init-config.d.ts.map +1 -1
- package/dist/core/bootstrap/init-config.js +3 -0
- package/dist/core/bootstrap/init-config.js.map +1 -1
- package/dist/core/utils/testing/McpHttpClient.d.ts +2 -2
- package/dist/core/utils/testing/McpHttpClient.js +4 -4
- package/dist/core/utils/testing/McpSseClient.d.ts +2 -2
- package/dist/core/utils/testing/McpSseClient.js +6 -6
- package/dist/core/utils/testing/McpStreamableHttpClient.d.ts +2 -2
- package/dist/core/utils/testing/McpStreamableHttpClient.js +4 -4
- package/dist/core/web/home-api.d.ts.map +1 -1
- package/dist/core/web/home-api.js +7 -1
- package/dist/core/web/home-api.js.map +1 -1
- package/dist/core/web/server-http.d.ts.map +1 -1
- package/dist/core/web/server-http.js +6 -6
- package/dist/core/web/server-http.js.map +1 -1
- package/dist/core/web/static/agent-tester/index.html +94 -47
- package/dist/core/web/static/agent-tester/script.js +192 -21
- package/dist/core/web/static/agent-tester/styles.css +156 -0
- package/package.json +1 -1
- package/src/tests/mcp/test-http.js +2 -2
- package/src/tests/mcp/test-sse.js +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tester-router.d.ts","sourceRoot":"","sources":["../../../src/core/agent-tester/agent-tester-router.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-tester-router.d.ts","sourceRoot":"","sources":["../../../src/core/agent-tester/agent-tester-router.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AA4BjC,wBAAgB,uBAAuB,CAAE,OAAO,GAAE;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C,GAAG,MAAM,CAkQd"}
|
|
@@ -4,6 +4,7 @@ import chalk from 'chalk';
|
|
|
4
4
|
import { Router } from 'express';
|
|
5
5
|
import express from 'express';
|
|
6
6
|
import { generateToken } from '../auth/jwt.js';
|
|
7
|
+
import { COOKIE_NAME, createSession, deleteSession, getAvailableAuthMethods, getSessionTtlMs, hasValidSession, validateLoginCredentials, } from '../auth/agent-tester-auth.js';
|
|
7
8
|
import { appConfig } from '../bootstrap/init-config.js';
|
|
8
9
|
import { logger as lgr } from '../logger.js';
|
|
9
10
|
import { TesterAgentService } from './services/TesterAgentService.js';
|
|
@@ -22,6 +23,43 @@ export function createAgentTesterRouter(options = {}) {
|
|
|
22
23
|
router.get('/', (req, res) => {
|
|
23
24
|
res.sendFile(join(staticPath, 'index.html'));
|
|
24
25
|
});
|
|
26
|
+
// ===== Auth API (session-based) =====
|
|
27
|
+
// GET /api/auth/status — frontend checks whether login is required
|
|
28
|
+
router.get('/api/auth/status', (req, res) => {
|
|
29
|
+
const useAuth = !!appConfig.agentTester?.useAuth;
|
|
30
|
+
if (!useAuth) {
|
|
31
|
+
res.json({ authRequired: false });
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
res.json({
|
|
35
|
+
authRequired: true,
|
|
36
|
+
authenticated: hasValidSession(req),
|
|
37
|
+
methods: getAvailableAuthMethods(),
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
// POST /api/auth/login — validate credentials, create session, set cookie
|
|
41
|
+
router.post('/api/auth/login', (req, res) => {
|
|
42
|
+
const authResult = validateLoginCredentials(req.body || {});
|
|
43
|
+
if (!authResult.success) {
|
|
44
|
+
res.status(401).json({ error: authResult.error || 'Authentication failed' });
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const sid = createSession(authResult);
|
|
48
|
+
res.cookie(COOKIE_NAME, sid, {
|
|
49
|
+
httpOnly: true,
|
|
50
|
+
sameSite: 'strict',
|
|
51
|
+
path: '/agent-tester',
|
|
52
|
+
maxAge: getSessionTtlMs(),
|
|
53
|
+
});
|
|
54
|
+
res.json({ success: true, authType: authResult.authType });
|
|
55
|
+
});
|
|
56
|
+
// POST /api/auth/logout — destroy session, clear cookie
|
|
57
|
+
router.post('/api/auth/logout', (req, res) => {
|
|
58
|
+
deleteSession(req);
|
|
59
|
+
res.clearCookie(COOKIE_NAME, { path: '/agent-tester' });
|
|
60
|
+
res.json({ success: true });
|
|
61
|
+
});
|
|
62
|
+
// ===== Config API =====
|
|
25
63
|
// API: Get default config (port, MCP URL)
|
|
26
64
|
router.get('/api/config', (req, res) => {
|
|
27
65
|
res.json({
|
|
@@ -30,7 +68,7 @@ export function createAgentTesterRouter(options = {}) {
|
|
|
30
68
|
httpHeaders: appConfig.agentTester?.httpHeaders || {},
|
|
31
69
|
});
|
|
32
70
|
});
|
|
33
|
-
// API: Get auth token for auto-fill
|
|
71
|
+
// API: Get auth token for auto-fill (MCP server Authorization header)
|
|
34
72
|
router.get('/api/auth-token', (req, res) => {
|
|
35
73
|
const auth = appConfig.webServer?.auth;
|
|
36
74
|
if (!auth?.enabled) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tester-router.js","sourceRoot":"","sources":["../../../src/core/agent-tester/agent-tester-router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-tester-router.js","sourceRoot":"","sources":["../../../src/core/agent-tester/agent-tester-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,27 +108,27 @@ export class TesterMcpClientService {
|
|
|
108
108
|
name: 'agent-tester',
|
|
109
109
|
version: '1.0.0',
|
|
110
110
|
});
|
|
111
|
-
const
|
|
111
|
+
const baseURL = new URL(mcpConfig.url);
|
|
112
112
|
if (mcpConfig.transport === 'http') {
|
|
113
|
-
logger.info(`Connecting via StreamableHTTPClientTransport to ${
|
|
113
|
+
logger.info(`Connecting via StreamableHTTPClientTransport to ${baseURL}`);
|
|
114
114
|
const safeHeaders = this.buildSafeHeaders(mcpConfig.headers);
|
|
115
115
|
const transportOpts = {};
|
|
116
116
|
if (safeHeaders) {
|
|
117
117
|
transportOpts.requestInit = { headers: safeHeaders };
|
|
118
118
|
}
|
|
119
|
-
const transport = new StreamableHTTPClientTransport(
|
|
119
|
+
const transport = new StreamableHTTPClientTransport(baseURL, transportOpts);
|
|
120
120
|
await client.connect(transport);
|
|
121
121
|
logger.info('Connected using Streamable HTTP transport');
|
|
122
122
|
}
|
|
123
123
|
else if (mcpConfig.transport === 'sse') {
|
|
124
|
-
logger.info(`Connecting via SSEClientTransport to ${
|
|
124
|
+
logger.info(`Connecting via SSEClientTransport to ${baseURL}`);
|
|
125
125
|
const safeHeaders = this.buildSafeHeaders(mcpConfig.headers);
|
|
126
126
|
const transportOpts = {};
|
|
127
127
|
if (safeHeaders) {
|
|
128
128
|
transportOpts.eventSourceInit = { headers: safeHeaders };
|
|
129
129
|
transportOpts.requestInit = { headers: safeHeaders };
|
|
130
130
|
}
|
|
131
|
-
const transport = new SSEClientTransport(
|
|
131
|
+
const transport = new SSEClientTransport(baseURL, transportOpts);
|
|
132
132
|
await client.connect(transport);
|
|
133
133
|
logger.info('Connected using SSE transport');
|
|
134
134
|
}
|
|
@@ -206,15 +206,15 @@ export class TesterMcpClientService {
|
|
|
206
206
|
async fetchRequiredHeadersUsing(client, serverUrl) {
|
|
207
207
|
// 1) Try HTTP endpoint /used-http-headers
|
|
208
208
|
try {
|
|
209
|
-
const
|
|
210
|
-
const headersUrl =
|
|
209
|
+
const baseURL = serverUrl.replace(/\/(mcp|sse)$/, '');
|
|
210
|
+
const headersUrl = baseURL + '/used-http-headers';
|
|
211
211
|
logger.info(`Fetching used headers from: ${headersUrl}`);
|
|
212
212
|
const response = await fetch(headersUrl, { method: 'GET', headers: { 'Accept': 'application/json' } });
|
|
213
213
|
if (response.ok) {
|
|
214
214
|
const headers = await response.json();
|
|
215
215
|
if (Array.isArray(headers)) {
|
|
216
216
|
if (headers.length > 0) {
|
|
217
|
-
logger.info(`Found ${headers.length} used headers from ${
|
|
217
|
+
logger.info(`Found ${headers.length} used headers from ${baseURL}`);
|
|
218
218
|
}
|
|
219
219
|
return headers;
|
|
220
220
|
}
|
|
@@ -377,14 +377,14 @@ export class TesterMcpClientService {
|
|
|
377
377
|
name: 'agent-tester',
|
|
378
378
|
version: '1.0.0',
|
|
379
379
|
});
|
|
380
|
-
const
|
|
380
|
+
const baseURL = new URL(request.url);
|
|
381
381
|
if (request.transport === 'http') {
|
|
382
382
|
const safeHeaders = this.buildSafeHeaders(request.headers);
|
|
383
383
|
const transportOpts = {};
|
|
384
384
|
if (safeHeaders) {
|
|
385
385
|
transportOpts.requestInit = { headers: safeHeaders };
|
|
386
386
|
}
|
|
387
|
-
const transport = new StreamableHTTPClientTransport(
|
|
387
|
+
const transport = new StreamableHTTPClientTransport(baseURL, transportOpts);
|
|
388
388
|
await client.connect(transport);
|
|
389
389
|
}
|
|
390
390
|
else if (request.transport === 'sse') {
|
|
@@ -394,7 +394,7 @@ export class TesterMcpClientService {
|
|
|
394
394
|
transportOpts.eventSourceInit = { headers: safeHeaders };
|
|
395
395
|
transportOpts.requestInit = { headers: safeHeaders };
|
|
396
396
|
}
|
|
397
|
-
const transport = new SSEClientTransport(
|
|
397
|
+
const transport = new SSEClientTransport(baseURL, transportOpts);
|
|
398
398
|
await client.connect(transport);
|
|
399
399
|
}
|
|
400
400
|
else {
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Tester session-based authentication.
|
|
3
|
+
*
|
|
4
|
+
* When `agentTester.useAuth` is true:
|
|
5
|
+
* - Static assets (/, /static/*) are served without auth so the login page can render.
|
|
6
|
+
* - API requests (/api/*) require either a valid session cookie or an Authorization header
|
|
7
|
+
* (the latter is handled by authMW that follows in the middleware chain).
|
|
8
|
+
* - After a successful login via POST /api/auth/login a session cookie is issued.
|
|
9
|
+
*/
|
|
10
|
+
import { Request, RequestHandler } from 'express';
|
|
11
|
+
import { AuthResult } from './types.js';
|
|
12
|
+
export declare const COOKIE_NAME = "__at_sid";
|
|
13
|
+
/**
|
|
14
|
+
* Session TTL in ms. Sourced from `agentTester.sessionTtlMs` with an 8h fallback.
|
|
15
|
+
* Read via a function so runtime config changes and tests don't observe a stale value.
|
|
16
|
+
*/
|
|
17
|
+
export declare function getSessionTtlMs(): number;
|
|
18
|
+
export declare function hasValidSession(req: Request): boolean;
|
|
19
|
+
export declare function parseCookie(cookieHeader: string | undefined, name: string): string | undefined;
|
|
20
|
+
export declare function createSession(authInfo: AuthResult): string;
|
|
21
|
+
export declare function deleteSession(req: Request): void;
|
|
22
|
+
export declare function getAvailableAuthMethods(): string[];
|
|
23
|
+
/**
|
|
24
|
+
* Validate login credentials.
|
|
25
|
+
* Returns AuthResult with success=true if valid.
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateLoginCredentials(body: {
|
|
28
|
+
token?: string;
|
|
29
|
+
username?: string;
|
|
30
|
+
password?: string;
|
|
31
|
+
}): AuthResult;
|
|
32
|
+
/**
|
|
33
|
+
* Returns the middleware chain that guards `/agent-tester`.
|
|
34
|
+
*
|
|
35
|
+
* When `agentTester.useAuth` is false → empty array (router is reachable without auth).
|
|
36
|
+
* When true → a single middleware that:
|
|
37
|
+
* 1. Lets static assets and auth endpoints through (login page must render).
|
|
38
|
+
* 2. Accepts a valid session cookie (sets req.authInfo).
|
|
39
|
+
* 3. Otherwise delegates to the universal authMW (Authorization header, headless API).
|
|
40
|
+
*/
|
|
41
|
+
export declare function createAgentTesterSessionMW(): RequestHandler[];
|
|
42
|
+
//# sourceMappingURL=agent-tester-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-tester-auth.d.ts","sourceRoot":"","sources":["../../../src/core/auth/agent-tester-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,EAAE,OAAO,EAA0B,cAAc,EAAE,MAAM,SAAS,CAAC;AAS1E,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AASxC,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,eAAe,IAAK,MAAM,CAGzC;AASD,wBAAgB,eAAe,CAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAEtD;AAgBD,wBAAgB,WAAW,CAAE,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAM/F;AAsBD,wBAAgB,aAAa,CAAE,QAAQ,EAAE,UAAU,GAAG,MAAM,CAI3D;AAED,wBAAgB,aAAa,CAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAKjD;AAMD,wBAAgB,uBAAuB,IAAK,MAAM,EAAE,CAanD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAuBpH;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,IAAK,cAAc,EAAE,CAuB9D"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Tester session-based authentication.
|
|
3
|
+
*
|
|
4
|
+
* When `agentTester.useAuth` is true:
|
|
5
|
+
* - Static assets (/, /static/*) are served without auth so the login page can render.
|
|
6
|
+
* - API requests (/api/*) require either a valid session cookie or an Authorization header
|
|
7
|
+
* (the latter is handled by authMW that follows in the middleware chain).
|
|
8
|
+
* - After a successful login via POST /api/auth/login a session cookie is issued.
|
|
9
|
+
*/
|
|
10
|
+
import crypto from 'crypto';
|
|
11
|
+
import chalk from 'chalk';
|
|
12
|
+
import { appConfig } from '../bootstrap/init-config.js';
|
|
13
|
+
import { logger as lgr } from '../logger.js';
|
|
14
|
+
import { checkBasicAuth } from './basic.js';
|
|
15
|
+
import { checkJwtToken } from './jwt.js';
|
|
16
|
+
import { createAuthMW } from './middleware.js';
|
|
17
|
+
import { checkPermanentToken } from './permanent.js';
|
|
18
|
+
const logger = lgr.getSubLogger({ name: chalk.yellow('agent-tester-auth') });
|
|
19
|
+
// ---------------------------------------------------------------------------
|
|
20
|
+
// In-memory session store
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
const DEFAULT_SESSION_TTL_MS = 8 * 60 * 60 * 1000; // 8 hours
|
|
23
|
+
export const COOKIE_NAME = '__at_sid';
|
|
24
|
+
/**
|
|
25
|
+
* Session TTL in ms. Sourced from `agentTester.sessionTtlMs` with an 8h fallback.
|
|
26
|
+
* Read via a function so runtime config changes and tests don't observe a stale value.
|
|
27
|
+
*/
|
|
28
|
+
export function getSessionTtlMs() {
|
|
29
|
+
const v = appConfig.agentTester?.sessionTtlMs;
|
|
30
|
+
return Number.isFinite(v) && v > 0 ? v : DEFAULT_SESSION_TTL_MS;
|
|
31
|
+
}
|
|
32
|
+
const sessions = new Map();
|
|
33
|
+
export function hasValidSession(req) {
|
|
34
|
+
return !!getValidSession(req);
|
|
35
|
+
}
|
|
36
|
+
/** Periodic cleanup of expired sessions (every 30 min) */
|
|
37
|
+
setInterval(() => {
|
|
38
|
+
const now = Date.now();
|
|
39
|
+
for (const [sid, entry] of sessions) {
|
|
40
|
+
if (now - entry.createdAt > getSessionTtlMs()) {
|
|
41
|
+
sessions.delete(sid);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}, 30 * 60 * 1000);
|
|
45
|
+
// ---------------------------------------------------------------------------
|
|
46
|
+
// Helpers
|
|
47
|
+
// ---------------------------------------------------------------------------
|
|
48
|
+
export function parseCookie(cookieHeader, name) {
|
|
49
|
+
if (!cookieHeader) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
const match = cookieHeader.match(new RegExp(`(?:^|;\\s*)${name}=([^;]*)`));
|
|
53
|
+
return match?.[1] ? decodeURIComponent(match[1]) : undefined;
|
|
54
|
+
}
|
|
55
|
+
function getValidSession(req) {
|
|
56
|
+
const sid = parseCookie(req.headers.cookie, COOKIE_NAME);
|
|
57
|
+
if (!sid) {
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
60
|
+
const entry = sessions.get(sid);
|
|
61
|
+
if (!entry) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
if (Date.now() - entry.createdAt > getSessionTtlMs()) {
|
|
65
|
+
sessions.delete(sid);
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
return entry;
|
|
69
|
+
}
|
|
70
|
+
// ---------------------------------------------------------------------------
|
|
71
|
+
// Session CRUD (used by router endpoints)
|
|
72
|
+
// ---------------------------------------------------------------------------
|
|
73
|
+
export function createSession(authInfo) {
|
|
74
|
+
const sid = crypto.randomUUID();
|
|
75
|
+
sessions.set(sid, { createdAt: Date.now(), authInfo });
|
|
76
|
+
return sid;
|
|
77
|
+
}
|
|
78
|
+
export function deleteSession(req) {
|
|
79
|
+
const sid = parseCookie(req.headers.cookie, COOKIE_NAME);
|
|
80
|
+
if (sid) {
|
|
81
|
+
sessions.delete(sid);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// ---------------------------------------------------------------------------
|
|
85
|
+
// Auth methods available for login
|
|
86
|
+
// ---------------------------------------------------------------------------
|
|
87
|
+
export function getAvailableAuthMethods() {
|
|
88
|
+
const auth = appConfig.webServer?.auth;
|
|
89
|
+
const methods = [];
|
|
90
|
+
if (auth?.permanentServerTokens?.filter(Boolean).length) {
|
|
91
|
+
methods.push('token');
|
|
92
|
+
}
|
|
93
|
+
if (auth?.basic?.username && auth?.basic?.password) {
|
|
94
|
+
methods.push('basic');
|
|
95
|
+
}
|
|
96
|
+
if (auth?.jwtToken?.encryptKey) {
|
|
97
|
+
methods.push('token'); // JWT tokens are entered as tokens
|
|
98
|
+
}
|
|
99
|
+
return [...new Set(methods)];
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Validate login credentials.
|
|
103
|
+
* Returns AuthResult with success=true if valid.
|
|
104
|
+
*/
|
|
105
|
+
export function validateLoginCredentials(body) {
|
|
106
|
+
const { token, username, password } = body;
|
|
107
|
+
if (token) {
|
|
108
|
+
// Try as permanent token first
|
|
109
|
+
const permResult = checkPermanentToken(token);
|
|
110
|
+
if (!permResult.errorReason) {
|
|
111
|
+
return { success: true, authType: 'permanentServerTokens' };
|
|
112
|
+
}
|
|
113
|
+
// Try as JWT
|
|
114
|
+
const jwtResult = checkJwtToken({ token });
|
|
115
|
+
if (!jwtResult.errorReason) {
|
|
116
|
+
return { success: true, authType: 'jwtToken', payload: jwtResult.payload };
|
|
117
|
+
}
|
|
118
|
+
return { success: false, error: 'Invalid token' };
|
|
119
|
+
}
|
|
120
|
+
if (username && password) {
|
|
121
|
+
const encoded = Buffer.from(`${username}:${password}`).toString('base64');
|
|
122
|
+
return checkBasicAuth(encoded);
|
|
123
|
+
}
|
|
124
|
+
return { success: false, error: 'Provide token or username and password' };
|
|
125
|
+
}
|
|
126
|
+
// ---------------------------------------------------------------------------
|
|
127
|
+
// Middleware
|
|
128
|
+
// ---------------------------------------------------------------------------
|
|
129
|
+
const PUBLIC_PATHS = new Set([
|
|
130
|
+
'/',
|
|
131
|
+
'/api/auth/status',
|
|
132
|
+
'/api/auth/login',
|
|
133
|
+
'/api/auth/logout',
|
|
134
|
+
]);
|
|
135
|
+
function isPublicPath(path) {
|
|
136
|
+
return PUBLIC_PATHS.has(path) || path.startsWith('/static/');
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Returns the middleware chain that guards `/agent-tester`.
|
|
140
|
+
*
|
|
141
|
+
* When `agentTester.useAuth` is false → empty array (router is reachable without auth).
|
|
142
|
+
* When true → a single middleware that:
|
|
143
|
+
* 1. Lets static assets and auth endpoints through (login page must render).
|
|
144
|
+
* 2. Accepts a valid session cookie (sets req.authInfo).
|
|
145
|
+
* 3. Otherwise delegates to the universal authMW (Authorization header, headless API).
|
|
146
|
+
*/
|
|
147
|
+
export function createAgentTesterSessionMW() {
|
|
148
|
+
if (!appConfig.agentTester?.useAuth) {
|
|
149
|
+
return [];
|
|
150
|
+
}
|
|
151
|
+
logger.info('Agent Tester session authentication enabled');
|
|
152
|
+
const authMW = createAuthMW();
|
|
153
|
+
const mw = (req, res, next) => {
|
|
154
|
+
if (isPublicPath(req.path)) {
|
|
155
|
+
return next();
|
|
156
|
+
}
|
|
157
|
+
const session = getValidSession(req);
|
|
158
|
+
if (session) {
|
|
159
|
+
req.authInfo = session.authInfo;
|
|
160
|
+
return next();
|
|
161
|
+
}
|
|
162
|
+
return authMW(req, res, next);
|
|
163
|
+
};
|
|
164
|
+
return [mw];
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=agent-tester-auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-tester-auth.js","sourceRoot":"","sources":["../../../src/core/auth/agent-tester-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/core/auth/middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAiG1D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAU,KAAK,OAAO,KAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAc3G,CAAC;AAMF,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAE,OAAO,GAAE,qBAA0B,IAMjD,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/core/auth/middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAiG1D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAU,KAAK,OAAO,KAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAc3G,CAAC;AAMF,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAE,OAAO,GAAE,qBAA0B,IAMjD,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,wDAuC9D"}
|
|
@@ -96,6 +96,10 @@ export const getMultiAuthError = async (req) => {
|
|
|
96
96
|
export function createAuthMW(options = {}) {
|
|
97
97
|
const { mcpPaths = ['/mcp', '/messages', '/sse'], logConfig = process.env.LOG_AUTH_CONFIG === 'true', } = options;
|
|
98
98
|
return async (req, res, next) => {
|
|
99
|
+
// If authInfo is already set by an upstream middleware (e.g. Agent Tester session), skip
|
|
100
|
+
if (req.authInfo?.success) {
|
|
101
|
+
return next();
|
|
102
|
+
}
|
|
99
103
|
// Log configuration on first request
|
|
100
104
|
if (logConfig && !createAuthMW._logged) {
|
|
101
105
|
logAuthConfiguration();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/core/auth/middleware.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/core/auth/middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-config.d.ts","sourceRoot":"","sources":["../../../src/core/bootstrap/init-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init-config.d.ts","sourceRoot":"","sources":["../../../src/core/bootstrap/init-config.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,eAAO,MAAM,MAAM,EAAE,SAAwC,CAAC;AAK9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA0DpD,eAAO,MAAM,SAAS,EAAE,SAAyB,CAAC;AAElD;;GAEG;AACH,wBAAgB,gBAAgB,IAAK,GAAG,CASvC;AAED,wBAAgB,cAAc,IAAK,aAAa,CAE/C"}
|
|
@@ -53,6 +53,9 @@ function buildConfig() {
|
|
|
53
53
|
if (typeof pst === 'string' && pst.includes(',')) {
|
|
54
54
|
cfg.webServer.auth.permanentServerTokens = pst.split(',').map(trim);
|
|
55
55
|
}
|
|
56
|
+
if (cfg.ad?.domains?.MYDOMAIN) {
|
|
57
|
+
delete cfg.ad.domains.MYDOMAIN;
|
|
58
|
+
}
|
|
56
59
|
return cfg;
|
|
57
60
|
}
|
|
58
61
|
export const appConfig = buildConfig();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-config.js","sourceRoot":"","sources":["../../../src/core/bootstrap/init-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init-config.js","sourceRoot":"","sources":["../../../src/core/bootstrap/init-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ type Json = any;
|
|
|
7
7
|
* with the current server implementation
|
|
8
8
|
*/
|
|
9
9
|
export declare class McpHttpClient extends BaseMcpClient {
|
|
10
|
-
private readonly
|
|
10
|
+
private readonly baseURL;
|
|
11
11
|
private readonly endpointPath;
|
|
12
12
|
serverInfo?: {
|
|
13
13
|
name: string;
|
|
@@ -15,7 +15,7 @@ export declare class McpHttpClient extends BaseMcpClient {
|
|
|
15
15
|
};
|
|
16
16
|
capabilities?: any;
|
|
17
17
|
protocolVersion?: string;
|
|
18
|
-
constructor(
|
|
18
|
+
constructor(baseURL: string, options?: {
|
|
19
19
|
endpointPath?: string;
|
|
20
20
|
headers?: Record<string, string>;
|
|
21
21
|
requestTimeoutMs?: number;
|
|
@@ -7,14 +7,14 @@ import { BaseMcpClient } from './BaseMcpClient.js';
|
|
|
7
7
|
* with the current server implementation
|
|
8
8
|
*/
|
|
9
9
|
export class McpHttpClient extends BaseMcpClient {
|
|
10
|
-
|
|
10
|
+
baseURL;
|
|
11
11
|
endpointPath;
|
|
12
12
|
serverInfo;
|
|
13
13
|
capabilities;
|
|
14
14
|
protocolVersion;
|
|
15
|
-
constructor(
|
|
15
|
+
constructor(baseURL, options) {
|
|
16
16
|
super(options?.headers ?? {});
|
|
17
|
-
this.
|
|
17
|
+
this.baseURL = baseURL.replace(/\/$/, '');
|
|
18
18
|
this.endpointPath = options?.endpointPath ?? '/mcp';
|
|
19
19
|
}
|
|
20
20
|
async initialize(params = {}) {
|
|
@@ -35,7 +35,7 @@ export class McpHttpClient extends BaseMcpClient {
|
|
|
35
35
|
'Accept': 'application/json',
|
|
36
36
|
...this.customHeaders,
|
|
37
37
|
};
|
|
38
|
-
const response = await fetch(`${this.
|
|
38
|
+
const response = await fetch(`${this.baseURL}${this.endpointPath}`, {
|
|
39
39
|
method: 'POST',
|
|
40
40
|
headers,
|
|
41
41
|
body: JSON.stringify(request),
|
|
@@ -7,13 +7,13 @@ import { BaseMcpClient } from './BaseMcpClient.js';
|
|
|
7
7
|
* Supports routing by id and per-operation timeouts.
|
|
8
8
|
*/
|
|
9
9
|
export declare class McpSseClient extends BaseMcpClient {
|
|
10
|
-
private readonly
|
|
10
|
+
private readonly baseURL;
|
|
11
11
|
private requestId;
|
|
12
12
|
private sseAbort?;
|
|
13
13
|
private sseReaderTask?;
|
|
14
14
|
private connected;
|
|
15
15
|
private pending;
|
|
16
|
-
constructor(
|
|
16
|
+
constructor(baseURL: string, customHeaders?: Record<string, string>);
|
|
17
17
|
/** Public API: close SSE and reject all pending */
|
|
18
18
|
close(): Promise<void>;
|
|
19
19
|
/** Ensure SSE stream established */
|
|
@@ -65,7 +65,7 @@ async function safeReadText(res) {
|
|
|
65
65
|
* Supports routing by id and per-operation timeouts.
|
|
66
66
|
*/
|
|
67
67
|
export class McpSseClient extends BaseMcpClient {
|
|
68
|
-
|
|
68
|
+
baseURL;
|
|
69
69
|
requestId;
|
|
70
70
|
// SSE connection state
|
|
71
71
|
sseAbort;
|
|
@@ -73,9 +73,9 @@ export class McpSseClient extends BaseMcpClient {
|
|
|
73
73
|
connected = false;
|
|
74
74
|
// pending requests awaiting response by id
|
|
75
75
|
pending = new Map();
|
|
76
|
-
constructor(
|
|
76
|
+
constructor(baseURL, customHeaders = {}) {
|
|
77
77
|
super(customHeaders);
|
|
78
|
-
this.
|
|
78
|
+
this.baseURL = baseURL.replace(/\/$/, '');
|
|
79
79
|
this.requestId = 1;
|
|
80
80
|
}
|
|
81
81
|
/** Public API: close SSE and reject all pending */
|
|
@@ -113,7 +113,7 @@ export class McpSseClient extends BaseMcpClient {
|
|
|
113
113
|
...this.customHeaders,
|
|
114
114
|
};
|
|
115
115
|
this.sseAbort = new AbortController();
|
|
116
|
-
const url = `${this.
|
|
116
|
+
const url = `${this.baseURL}/sse`;
|
|
117
117
|
const res = await fetch(url, {
|
|
118
118
|
method: 'GET',
|
|
119
119
|
headers,
|
|
@@ -266,7 +266,7 @@ export class McpSseClient extends BaseMcpClient {
|
|
|
266
266
|
...this.customHeaders,
|
|
267
267
|
};
|
|
268
268
|
try {
|
|
269
|
-
const res = await fetch(`${this.
|
|
269
|
+
const res = await fetch(`${this.baseURL}/sse`, {
|
|
270
270
|
method: 'POST',
|
|
271
271
|
headers,
|
|
272
272
|
body: JSON.stringify(request),
|
|
@@ -300,7 +300,7 @@ export class McpSseClient extends BaseMcpClient {
|
|
|
300
300
|
});
|
|
301
301
|
}
|
|
302
302
|
async health() {
|
|
303
|
-
const response = await fetch(`${this.
|
|
303
|
+
const response = await fetch(`${this.baseURL}/health`);
|
|
304
304
|
return response.json();
|
|
305
305
|
}
|
|
306
306
|
}
|
|
@@ -7,7 +7,7 @@ type Json = any;
|
|
|
7
7
|
* multiple requests/responses and incoming notifications.
|
|
8
8
|
*/
|
|
9
9
|
export declare class McpStreamableHttpClient extends BaseMcpClient {
|
|
10
|
-
private readonly
|
|
10
|
+
private readonly baseURL;
|
|
11
11
|
private readonly endpointPath;
|
|
12
12
|
private readonly requestTimeoutMs;
|
|
13
13
|
private encoder;
|
|
@@ -26,7 +26,7 @@ export declare class McpStreamableHttpClient extends BaseMcpClient {
|
|
|
26
26
|
};
|
|
27
27
|
capabilities?: any;
|
|
28
28
|
protocolVersion?: string;
|
|
29
|
-
constructor(
|
|
29
|
+
constructor(baseURL: string, options?: {
|
|
30
30
|
endpointPath?: string;
|
|
31
31
|
headers?: Record<string, string>;
|
|
32
32
|
requestTimeoutMs?: number;
|