@grackle-ai/mcp 0.47.0 → 0.48.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-middleware.d.ts","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-middleware.d.ts","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAuBrD;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CA8DzG"}
|
package/dist/auth-middleware.js
CHANGED
|
@@ -3,6 +3,22 @@ import { verifyOAuthAccessToken } from "./oauth-token.js";
|
|
|
3
3
|
import { isRevokedTask, verifyScopedToken } from "./scoped-token.js";
|
|
4
4
|
/** Expected length of API key tokens (64 hex characters). */
|
|
5
5
|
const API_KEY_LENGTH = 64;
|
|
6
|
+
/**
|
|
7
|
+
* Normalize loopback hostnames so that `localhost` and `127.0.0.1` compare equal.
|
|
8
|
+
* Parses the URL and replaces `localhost` with `127.0.0.1`, returning the origin.
|
|
9
|
+
*/
|
|
10
|
+
function normalizeLoopback(url) {
|
|
11
|
+
try {
|
|
12
|
+
const parsed = new URL(url);
|
|
13
|
+
if (parsed.hostname === "localhost") {
|
|
14
|
+
parsed.hostname = "127.0.0.1";
|
|
15
|
+
}
|
|
16
|
+
return parsed.origin;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return url;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
6
22
|
/**
|
|
7
23
|
* Authenticate an incoming MCP HTTP request.
|
|
8
24
|
*
|
|
@@ -44,11 +60,12 @@ export function authenticateMcpRequest(req, apiKey) {
|
|
|
44
60
|
// Empty aud is accepted because the client may omit the resource indicator (RFC 8707).
|
|
45
61
|
// Use the socket's local port (server-controlled) rather than the Host header (client-controlled)
|
|
46
62
|
// to prevent token replay via Host spoofing.
|
|
47
|
-
// Normalize trailing slashes
|
|
63
|
+
// Normalize trailing slashes and treat "localhost" as equivalent to "127.0.0.1" since
|
|
64
|
+
// MCP clients may connect via either hostname.
|
|
48
65
|
if (oauthClaims.aud) {
|
|
49
66
|
const localPort = req.socket.localPort;
|
|
50
67
|
const expectedAudience = localPort ? `http://127.0.0.1:${localPort}` : undefined;
|
|
51
|
-
const normalizedAud = oauthClaims.aud.replace(/\/+$/, "");
|
|
68
|
+
const normalizedAud = normalizeLoopback(oauthClaims.aud.replace(/\/+$/, ""));
|
|
52
69
|
if (!expectedAudience || normalizedAud !== expectedAudience) {
|
|
53
70
|
return undefined;
|
|
54
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-middleware.js","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAErE,6DAA6D;AAC7D,MAAM,cAAc,GAAW,EAAE,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAyB,EAAE,MAAc;IAC9E,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;IACnD,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,0DAA0D;IAC1D,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACxE,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACnD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7B,CAAC;QACD,2EAA2E;QAC3E,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,kEAAkE;IAClE,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,4DAA4D;QAC5D,MAAM,WAAW,GAAG,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,WAAW,EAAE,CAAC;YAChB,wFAAwF;YACxF,uFAAuF;YACvF,kGAAkG;YAClG,6CAA6C;YAC7C,
|
|
1
|
+
{"version":3,"file":"auth-middleware.js","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D,kEAAkE;AAClE,eAAO,MAAM,cAAc,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI1D,kEAAkE;AAClE,eAAO,MAAM,cAAc,EAAE,cAAc,EAyP1C,CAAC"}
|
package/dist/tools/workspace.js
CHANGED
|
@@ -8,7 +8,12 @@ export const workspaceTools = [
|
|
|
8
8
|
name: "workspace_list",
|
|
9
9
|
group: "workspace",
|
|
10
10
|
description: "List all Grackle workspaces with their names, descriptions, repositories, worktree settings, and status.",
|
|
11
|
-
inputSchema: z.object({
|
|
11
|
+
inputSchema: z.object({
|
|
12
|
+
environmentId: z
|
|
13
|
+
.string()
|
|
14
|
+
.optional()
|
|
15
|
+
.describe("Filter workspaces by environment ID (omit for all)"),
|
|
16
|
+
}),
|
|
12
17
|
rpcMethod: "listWorkspaces",
|
|
13
18
|
mutating: false,
|
|
14
19
|
annotations: {
|
|
@@ -17,15 +22,17 @@ export const workspaceTools = [
|
|
|
17
22
|
idempotentHint: true,
|
|
18
23
|
openWorldHint: false,
|
|
19
24
|
},
|
|
20
|
-
async handler(
|
|
25
|
+
async handler(args, client) {
|
|
21
26
|
try {
|
|
22
|
-
const response = await client.listWorkspaces({
|
|
27
|
+
const response = await client.listWorkspaces({
|
|
28
|
+
environmentId: args.environmentId ?? "",
|
|
29
|
+
});
|
|
23
30
|
return jsonResult(response.workspaces.map((p) => ({
|
|
24
31
|
id: p.id,
|
|
25
32
|
name: p.name,
|
|
26
33
|
description: p.description,
|
|
27
34
|
repoUrl: p.repoUrl,
|
|
28
|
-
|
|
35
|
+
environmentId: p.environmentId,
|
|
29
36
|
worktreeBasePath: p.worktreeBasePath,
|
|
30
37
|
useWorktrees: p.useWorktrees,
|
|
31
38
|
status: workspaceStatusToString(p.status) || "unspecified",
|
|
@@ -42,6 +49,9 @@ export const workspaceTools = [
|
|
|
42
49
|
description: "Create a new Grackle workspace with a name, optional description, repository URL, and default environment.",
|
|
43
50
|
inputSchema: z.object({
|
|
44
51
|
name: z.string().describe("Display name for the new workspace"),
|
|
52
|
+
environmentId: z
|
|
53
|
+
.string()
|
|
54
|
+
.describe("ID of the owning environment (required)"),
|
|
45
55
|
description: z
|
|
46
56
|
.string()
|
|
47
57
|
.optional()
|
|
@@ -50,10 +60,6 @@ export const workspaceTools = [
|
|
|
50
60
|
.string()
|
|
51
61
|
.optional()
|
|
52
62
|
.describe("Optional repository URL associated with the workspace"),
|
|
53
|
-
defaultEnvironmentId: z
|
|
54
|
-
.string()
|
|
55
|
-
.optional()
|
|
56
|
-
.describe("Optional ID of the default environment to use for this workspace"),
|
|
57
63
|
worktreeBasePath: z
|
|
58
64
|
.string()
|
|
59
65
|
.optional()
|
|
@@ -81,7 +87,7 @@ export const workspaceTools = [
|
|
|
81
87
|
name: args.name,
|
|
82
88
|
description: args.description ?? "",
|
|
83
89
|
repoUrl: args.repoUrl ?? "",
|
|
84
|
-
|
|
90
|
+
environmentId: args.environmentId,
|
|
85
91
|
worktreeBasePath: args.worktreeBasePath ?? "",
|
|
86
92
|
useWorktrees: args.useWorktrees,
|
|
87
93
|
defaultPersonaId: args.defaultPersonaId ?? "",
|
|
@@ -91,7 +97,7 @@ export const workspaceTools = [
|
|
|
91
97
|
name: workspace.name,
|
|
92
98
|
description: workspace.description,
|
|
93
99
|
repoUrl: workspace.repoUrl,
|
|
94
|
-
|
|
100
|
+
environmentId: workspace.environmentId,
|
|
95
101
|
defaultPersonaId: workspace.defaultPersonaId,
|
|
96
102
|
worktreeBasePath: workspace.worktreeBasePath,
|
|
97
103
|
useWorktrees: workspace.useWorktrees,
|
|
@@ -130,7 +136,7 @@ export const workspaceTools = [
|
|
|
130
136
|
name: workspace.name,
|
|
131
137
|
description: workspace.description,
|
|
132
138
|
repoUrl: workspace.repoUrl,
|
|
133
|
-
|
|
139
|
+
environmentId: workspace.environmentId,
|
|
134
140
|
worktreeBasePath: workspace.worktreeBasePath,
|
|
135
141
|
useWorktrees: workspace.useWorktrees,
|
|
136
142
|
status: workspaceStatusToString(workspace.status) || "unspecified",
|
|
@@ -146,7 +152,7 @@ export const workspaceTools = [
|
|
|
146
152
|
{
|
|
147
153
|
name: "workspace_update",
|
|
148
154
|
group: "workspace",
|
|
149
|
-
description: "Update an existing Grackle workspace's name, description, repository URL,
|
|
155
|
+
description: "Update an existing Grackle workspace's name, description, repository URL, owning environment, or worktree settings.",
|
|
150
156
|
inputSchema: z.object({
|
|
151
157
|
workspaceId: z.string().describe("Unique identifier of the workspace to update"),
|
|
152
158
|
name: z
|
|
@@ -161,10 +167,10 @@ export const workspaceTools = [
|
|
|
161
167
|
.string()
|
|
162
168
|
.optional()
|
|
163
169
|
.describe("New repository URL for the workspace"),
|
|
164
|
-
|
|
170
|
+
environmentId: z
|
|
165
171
|
.string()
|
|
166
172
|
.optional()
|
|
167
|
-
.describe("
|
|
173
|
+
.describe("Reparent workspace to a different environment"),
|
|
168
174
|
worktreeBasePath: z
|
|
169
175
|
.string()
|
|
170
176
|
.optional()
|
|
@@ -193,7 +199,7 @@ export const workspaceTools = [
|
|
|
193
199
|
name: args.name,
|
|
194
200
|
description: args.description,
|
|
195
201
|
repoUrl: args.repoUrl,
|
|
196
|
-
|
|
202
|
+
environmentId: args.environmentId,
|
|
197
203
|
worktreeBasePath: args.worktreeBasePath,
|
|
198
204
|
useWorktrees: args.useWorktrees,
|
|
199
205
|
defaultPersonaId: args.defaultPersonaId,
|
|
@@ -203,7 +209,7 @@ export const workspaceTools = [
|
|
|
203
209
|
name: workspace.name,
|
|
204
210
|
description: workspace.description,
|
|
205
211
|
repoUrl: workspace.repoUrl,
|
|
206
|
-
|
|
212
|
+
environmentId: workspace.environmentId,
|
|
207
213
|
defaultPersonaId: workspace.defaultPersonaId,
|
|
208
214
|
worktreeBasePath: workspace.worktreeBasePath,
|
|
209
215
|
useWorktrees: workspace.useWorktrees,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,kEAAkE;AAClE,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C;QACE,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,WAAW;QAClB,WAAW,EACT,0GAA0G;QAC5G,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/tools/workspace.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grackle-ai/mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.48.0",
|
|
4
4
|
"description": "MCP (Model Context Protocol) server for Grackle — translates MCP tool calls to ConnectRPC",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@modelcontextprotocol/sdk": "^1.27.0",
|
|
34
34
|
"pino": "^10.3.1",
|
|
35
35
|
"zod": "^4.0.0",
|
|
36
|
-
"@grackle-ai/common": "0.
|
|
36
|
+
"@grackle-ai/common": "0.48.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@rushstack/heft": "1.2.4",
|