@baasix/baasix 0.1.26 → 0.1.28

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.
@@ -5,9 +5,8 @@
5
5
  * Enable via environment variable: MCP_ENABLED=true
6
6
  *
7
7
  * Authentication options (in priority order):
8
- * 1. MCP_AUTH_TOKEN - Static token for MCP access
9
- * 2. MCP_EMAIL + MCP_PASSWORD - Auto-login and reuse token
10
- * 3. Authorization header or cookie from request (like normal API calls)
8
+ * 1. X-MCP-Email + X-MCP-Password headers - Uses internal auth service to login
9
+ * 2. Authorization header or cookie from request (auth middleware populates accountability)
11
10
  *
12
11
  * Supports both stateful (with sessions) and stateless modes.
13
12
  *
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.route.d.ts","sourceRoot":"","sources":["../../baasix/routes/mcp.route.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,mBAAmB,CAAC;;;mBAgL/B,OAAO,aAAa,OAAO,KAAG,OAAO,CAAC,IAAI,CAAC;;AA2LhF,wBAGE"}
1
+ {"version":3,"file":"mcp.route.d.ts","sourceRoot":"","sources":["../../baasix/routes/mcp.route.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,mBAAmB,CAAC;;;mBAkN/B,OAAO,aAAa,OAAO,KAAG,OAAO,CAAC,IAAI,CAAC;;AA2LhF,wBAGE"}
@@ -6,9 +6,8 @@
6
6
  * Enable via environment variable: MCP_ENABLED=true
7
7
  *
8
8
  * Authentication options (in priority order):
9
- * 1. MCP_AUTH_TOKEN - Static token for MCP access
10
- * 2. MCP_EMAIL + MCP_PASSWORD - Auto-login and reuse token
11
- * 3. Authorization header or cookie from request (like normal API calls)
9
+ * 1. X-MCP-Email + X-MCP-Password headers - Uses internal auth service to login
10
+ * 2. Authorization header or cookie from request (auth middleware populates accountability)
12
11
  *
13
12
  * Supports both stateful (with sessions) and stateless modes.
14
13
  *
@@ -39,83 +38,102 @@ async function loadMCPDependencies() {
39
38
  removeMCPSession = mcpService.removeMCPSession;
40
39
  }
41
40
  }
42
- // Cache for header-based login (per email)
43
- const headerLoginCache = new Map();
41
+ // Cache for email/password-based login (per email)
42
+ const loginCache = new Map();
44
43
  /**
45
- * Login using email and password from headers
46
- * Returns accountability object or null if failed
44
+ * Login using email and password via internal auth service (no HTTP round-trip).
45
+ * Uses getAuthInstance().signIn() directly, same as the auth route handlers.
47
46
  */
48
- async function performLogin(email, password, cacheKey) {
49
- // Check if we have a valid cached token for this email
50
- const cached = headerLoginCache.get(cacheKey);
51
- if (cached && Date.now() < cached.expiry && cached.accountability) {
52
- return cached.accountability;
47
+ async function performLogin(email, password, cacheKey, ip) {
48
+ // Check if we have a valid cached accountability for this email
49
+ const cached = loginCache.get(cacheKey);
50
+ if (cached && Date.now() < cached.expiry) {
51
+ return { ...cached.accountability, ipaddress: ip };
53
52
  }
54
53
  try {
55
- // Import auth utilities
56
- const { default: axios } = await import("axios");
57
- const baseUrl = `http://localhost:${env.get("PORT") || "8056"}`;
58
- const response = await axios.post(`${baseUrl}/auth/login`, {
59
- email,
60
- password,
61
- });
62
- if (response.data?.token) {
63
- // Extract accountability from token response
64
- const accountability = {
65
- user: response.data.user?.id || null,
66
- role: response.data.user?.role?.name || response.data.user?.role_Id || null,
67
- admin: response.data.user?.role?.name === "administrator",
68
- ip: "127.0.0.1",
69
- };
70
- // Cache for 55 minutes (tokens typically last 1 hour)
71
- headerLoginCache.set(cacheKey, {
72
- token: response.data.token,
73
- expiry: Date.now() + 55 * 60 * 1000,
74
- accountability,
75
- });
76
- console.info(`[MCP] Login successful for ${email}`);
77
- return accountability;
54
+ const { getAuthInstance } = await import("./auth.route.js");
55
+ const auth = getAuthInstance();
56
+ if (!auth) {
57
+ console.error("[MCP] Auth service not initialized yet");
58
+ return null;
59
+ }
60
+ const result = await auth.signIn({ email, password, ipAddress: ip });
61
+ if (!result || !result.user) {
62
+ console.error(`[MCP] Login failed for ${email}: invalid credentials`);
63
+ return null;
78
64
  }
65
+ // Build accountability matching the shape the auth middleware produces
66
+ const isAdmin = result.role?.name === "administrator";
67
+ const accountability = {
68
+ user: {
69
+ id: result.user.id,
70
+ email: result.user.email,
71
+ firstName: result.user.firstName,
72
+ lastName: result.user.lastName,
73
+ isAdmin,
74
+ role: result.role?.name || "public",
75
+ },
76
+ role: result.role ? {
77
+ id: result.role.id,
78
+ name: result.role.name,
79
+ isTenantSpecific: result.role.isTenantSpecific,
80
+ } : null,
81
+ permissions: result.permissions || [],
82
+ tenant: result.tenant?.id || null,
83
+ ipaddress: ip,
84
+ };
85
+ // Cache for 55 minutes (tokens typically last 1 hour)
86
+ loginCache.set(cacheKey, {
87
+ accountability,
88
+ expiry: Date.now() + 55 * 60 * 1000,
89
+ });
90
+ // Store the JWT token so MCP tools can call routes with Bearer auth
91
+ accountability.token = result.token;
92
+ console.info(`[MCP] Login successful for ${email} (admin: ${isAdmin})`);
93
+ return accountability;
79
94
  }
80
95
  catch (error) {
81
96
  const err = error;
82
97
  console.error(`[MCP] Login failed for ${email}:`, err.message);
83
- headerLoginCache.delete(cacheKey);
98
+ loginCache.delete(cacheKey);
84
99
  }
85
100
  return null;
86
101
  }
87
102
  /**
88
103
  * Get accountability from request headers
89
- * Priority: 1. X-MCP-Email/Password headers, 2. Authorization Bearer token
104
+ * Priority: 1. X-MCP-Email/Password headers, 2. Authorization Bearer token (auth middleware)
90
105
  */
91
106
  async function getAccountability(req) {
107
+ const ip = req.ip || "127.0.0.1";
92
108
  // Priority 1: X-MCP-Email and X-MCP-Password headers (email/password auth)
93
- // Check this first since token header might be empty when using email/password
94
109
  const headerEmail = req.headers["x-mcp-email"];
95
110
  const headerPassword = req.headers["x-mcp-password"];
96
111
  if (headerEmail && headerPassword) {
97
- const result = await performLogin(headerEmail, headerPassword, `header:${headerEmail}`);
112
+ const result = await performLogin(headerEmail, headerPassword, `header:${headerEmail}`, ip);
98
113
  if (result) {
99
- return { accountability: { ...result, ip: req.ip || "127.0.0.1" } };
114
+ return { accountability: result };
100
115
  }
101
116
  return {
102
117
  accountability: null,
103
118
  error: "Invalid email or password.",
104
119
  };
105
120
  }
106
- // Priority 2: Authorization Bearer token (direct token auth)
121
+ // Priority 2: Authorization Bearer token (auth middleware already populated req.accountability)
107
122
  const authHeader = req.headers["authorization"];
108
123
  if (authHeader?.startsWith("Bearer ")) {
109
124
  const token = authHeader.substring(7).trim();
110
125
  if (token) {
111
- // Use request's accountability (populated by authMiddleware from Bearer token)
126
+ // req.accountability is already populated by auth middleware with the full shape:
127
+ // { user: { id, email, isAdmin, role, ... }, role: { id, name, isTenantSpecific }, permissions, tenant, ipaddress }
112
128
  if (req.accountability?.user || req.accountability?.role) {
113
129
  return {
114
130
  accountability: {
115
- user: req.accountability.user,
116
- role: req.accountability.role,
117
- admin: req.accountability.admin || false,
118
- ip: req.ip || "127.0.0.1",
131
+ user: req.accountability.user || null,
132
+ role: req.accountability.role || null,
133
+ permissions: req.accountability.permissions || [],
134
+ tenant: req.accountability.tenant || null,
135
+ ipaddress: ip,
136
+ token,
119
137
  },
120
138
  };
121
139
  }
@@ -177,7 +195,7 @@ const registerEndpoint = async (app, _context) => {
177
195
  transport = new StreamableHTTPServerTransport({
178
196
  sessionIdGenerator: () => sessionId,
179
197
  onsessioninitialized: (sid) => {
180
- console.info(`[MCP] Session initialized: ${sid} (user: ${sessionAccountability.user}, role: ${sessionAccountability.role})`);
198
+ console.info(`[MCP] Session initialized: ${sid} (user: ${sessionAccountability.user?.id || 'null'}, role: ${sessionAccountability.role?.name || 'null'}, admin: ${sessionAccountability.user?.isAdmin || false})`);
181
199
  setMCPSession(sid, sessionAccountability);
182
200
  },
183
201
  onsessionclosed: (sid) => {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.route.js","sourceRoot":"","sources":["../../baasix/routes/mcp.route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.route.js","sourceRoot":"","sources":["../../baasix/routes/mcp.route.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * MCPService - Model Context Protocol Server for Baasix
3
3
  *
4
- * This service provides MCP tools that directly call Baasix services,
5
- * eliminating HTTP round-trips and providing better performance.
4
+ * This service provides MCP tools that call Baasix HTTP routes internally,
5
+ * ensuring all route-level validation, permission checks, and cache
6
+ * invalidation are applied consistently.
6
7
  *
7
8
  * Enable via environment variable: MCP_ENABLED=true
8
9
  * Access at: http://localhost:8056/mcp (or custom MCP_PATH)
@@ -12,11 +13,32 @@
12
13
  * The explicit type annotations are kept for documentation and IDE support.
13
14
  */
14
15
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
16
+ /**
17
+ * MCPAccountability mirrors the shape built by the auth middleware.
18
+ * Used for session management and passed as bearer token for route calls.
19
+ *
20
+ * Shape: { user: { id, email, isAdmin, role, ... }, role: { id, name, isTenantSpecific }, permissions[], tenant, ipaddress, token }
21
+ */
15
22
  interface MCPAccountability {
16
- user: string | null;
17
- role: string | null;
18
- admin: boolean;
19
- ip: string;
23
+ user: {
24
+ id: string | number;
25
+ email?: string;
26
+ firstName?: string;
27
+ lastName?: string;
28
+ isAdmin: boolean;
29
+ role: string;
30
+ [key: string]: any;
31
+ } | null;
32
+ role: {
33
+ id: string | number;
34
+ name: string;
35
+ isTenantSpecific?: boolean;
36
+ description?: string;
37
+ } | null;
38
+ permissions: any[];
39
+ tenant: string | number | null;
40
+ ipaddress: string;
41
+ token?: string;
20
42
  }
21
43
  /**
22
44
  * Store accountability info for an MCP session
@@ -1 +1 @@
1
- {"version":3,"file":"MCPService.d.ts","sourceRoot":"","sources":["../../baasix/services/MCPService.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWpE,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;CACZ;AA4SD;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAExF;AAqBD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAExD;AAmCD;;GAEG;AACH,wBAAgB,eAAe,IAAI,SAAS,CA2tD3C;;;;;;AAED,wBAAoE"}
1
+ {"version":3,"file":"MCPService.d.ts","sourceRoot":"","sources":["../../baasix/services/MCPService.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE;;;;;GAKG;AACH,UAAU,iBAAiB;IACzB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,GAAG,IAAI,CAAC;IACT,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;IACT,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAySD;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAExF;AA0BD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAExD;AAmCD;;GAEG;AACH,wBAAgB,eAAe,IAAI,SAAS,CA+wD3C;;;;;;AAED,wBAAoE"}