codex-grok-mcp 0.2.0-beta.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.
Files changed (56) hide show
  1. package/CONTRIBUTING.md +67 -0
  2. package/LICENSE +21 -0
  3. package/README.md +255 -0
  4. package/SECURITY.md +109 -0
  5. package/dist/bridge-companion.d.ts +61 -0
  6. package/dist/bridge-companion.js +436 -0
  7. package/dist/bridge-companion.js.map +1 -0
  8. package/dist/bridge-pairing.d.ts +30 -0
  9. package/dist/bridge-pairing.js +364 -0
  10. package/dist/bridge-pairing.js.map +1 -0
  11. package/dist/bridge-protocol.d.ts +187 -0
  12. package/dist/bridge-protocol.js +360 -0
  13. package/dist/bridge-protocol.js.map +1 -0
  14. package/dist/bridge-replay.d.ts +10 -0
  15. package/dist/bridge-replay.js +107 -0
  16. package/dist/bridge-replay.js.map +1 -0
  17. package/dist/bridge-runtime.d.ts +11 -0
  18. package/dist/bridge-runtime.js +259 -0
  19. package/dist/bridge-runtime.js.map +1 -0
  20. package/dist/direct-gateway-transport.d.ts +7 -0
  21. package/dist/direct-gateway-transport.js +241 -0
  22. package/dist/direct-gateway-transport.js.map +1 -0
  23. package/dist/grok-bot-client.d.ts +93 -0
  24. package/dist/grok-bot-client.js +475 -0
  25. package/dist/grok-bot-client.js.map +1 -0
  26. package/dist/grok-bot-gateway.d.ts +204 -0
  27. package/dist/grok-bot-gateway.js +741 -0
  28. package/dist/grok-bot-gateway.js.map +1 -0
  29. package/dist/grok-cli.d.ts +31 -0
  30. package/dist/grok-cli.js +338 -0
  31. package/dist/grok-cli.js.map +1 -0
  32. package/dist/index.d.ts +8 -0
  33. package/dist/index.js +228 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/relay-transport.d.ts +9 -0
  36. package/dist/relay-transport.js +278 -0
  37. package/dist/relay-transport.js.map +1 -0
  38. package/dist/schema.d.ts +16 -0
  39. package/dist/schema.js +22 -0
  40. package/dist/schema.js.map +1 -0
  41. package/dist/version.d.ts +4 -0
  42. package/dist/version.js +10 -0
  43. package/dist/version.js.map +1 -0
  44. package/package.json +71 -0
  45. package/plugins/codex-grok-mcp/assets/icon.png +0 -0
  46. package/relay/.dev.vars.example +2 -0
  47. package/relay/README.md +26 -0
  48. package/relay/package-lock.json +3291 -0
  49. package/relay/package.json +17 -0
  50. package/relay/src/index.ts +182 -0
  51. package/relay/test/relay.test.ts +127 -0
  52. package/relay/test/tsconfig.json +13 -0
  53. package/relay/tsconfig.json +15 -0
  54. package/relay/vitest.config.ts +15 -0
  55. package/relay/worker-configuration.d.ts +15362 -0
  56. package/relay/wrangler.jsonc +33 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grok-bot-gateway.js","sourceRoot":"","sources":["../src/grok-bot-gateway.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ declare const ALLOWED_MODELS: readonly ["grok-4.6", "grok-4.5"];
2
+ export type GrokModel = (typeof ALLOWED_MODELS)[number];
3
+ export type GrokErrorCode = "AUTH_REQUIRED" | "BUSY" | "CANCELLED" | "CLI_FAILED" | "CLI_NOT_FOUND" | "CONFIG_INVALID" | "INVALID_OUTPUT" | "MODEL_UNAVAILABLE" | "OUTPUT_LIMIT" | "TIMEOUT";
4
+ export declare class GrokCliError extends Error {
5
+ readonly code: GrokErrorCode;
6
+ readonly allowanceMayHaveBeenConsumed: boolean;
7
+ constructor(code: GrokErrorCode, message: string, allowanceMayHaveBeenConsumed?: boolean);
8
+ }
9
+ export type GrokCliConfig = {
10
+ authPath: string;
11
+ bin: string;
12
+ model: GrokModel;
13
+ timeoutMs: number;
14
+ };
15
+ export type GrokRunResult = {
16
+ text: string;
17
+ model: GrokModel;
18
+ elapsedMs: number;
19
+ };
20
+ export type DoctorResult = {
21
+ version: string;
22
+ model: GrokModel;
23
+ availableModels: string[];
24
+ };
25
+ export declare function loadConfig(env?: NodeJS.ProcessEnv): GrokCliConfig;
26
+ export declare function runGrok(prompt: string, options?: {
27
+ env?: NodeJS.ProcessEnv;
28
+ signal?: AbortSignal;
29
+ }): Promise<GrokRunResult>;
30
+ export declare function doctor(env?: NodeJS.ProcessEnv): Promise<DoctorResult>;
31
+ export {};
@@ -0,0 +1,338 @@
1
+ import { Buffer } from "node:buffer";
2
+ import { spawn } from "node:child_process";
3
+ import { randomUUID } from "node:crypto";
4
+ import { access, chmod, mkdir, mkdtemp, rm, stat, symlink, writeFile } from "node:fs/promises";
5
+ import { homedir, tmpdir } from "node:os";
6
+ import { isAbsolute, join, resolve } from "node:path";
7
+ import { constants } from "node:fs";
8
+ import { MAX_PROMPT_BYTES } from "./schema.js";
9
+ const ALLOWED_MODELS = ["grok-4.6", "grok-4.5"];
10
+ const DEFAULT_TIMEOUT_MS = 180_000;
11
+ const MIN_TIMEOUT_MS = 5_000;
12
+ const MAX_TIMEOUT_MS = 600_000;
13
+ const MAX_STDOUT_BYTES = 4 * 1024 * 1024;
14
+ const MAX_STDERR_BYTES = 64 * 1024;
15
+ const KILL_GRACE_MS = 2_000;
16
+ const ISOLATED_CONFIG = `[cli]
17
+ auto_update = false
18
+ `;
19
+ export class GrokCliError extends Error {
20
+ code;
21
+ allowanceMayHaveBeenConsumed;
22
+ constructor(code, message, allowanceMayHaveBeenConsumed = false) {
23
+ super(message);
24
+ this.name = "GrokCliError";
25
+ this.code = code;
26
+ this.allowanceMayHaveBeenConsumed = allowanceMayHaveBeenConsumed;
27
+ }
28
+ }
29
+ // ponytail: one active process avoids allowance spikes; add a bounded queue only if demand is measured.
30
+ let active = false;
31
+ const error = (code, message, allowanceMayHaveBeenConsumed = false) => new GrokCliError(code, message, allowanceMayHaveBeenConsumed);
32
+ export function loadConfig(env = process.env) {
33
+ const model = env.GROK_MCP_MODEL ?? "grok-4.6";
34
+ if (!ALLOWED_MODELS.includes(model)) {
35
+ throw error("CONFIG_INVALID", "GROK_MCP_MODEL must be grok-4.6 or grok-4.5.");
36
+ }
37
+ const timeoutText = env.GROK_MCP_TIMEOUT_MS ?? String(DEFAULT_TIMEOUT_MS);
38
+ if (!/^\d+$/.test(timeoutText)) {
39
+ throw error("CONFIG_INVALID", "GROK_MCP_TIMEOUT_MS must be an integer from 5000 to 600000.");
40
+ }
41
+ const timeoutMs = Number(timeoutText);
42
+ if (timeoutMs < MIN_TIMEOUT_MS || timeoutMs > MAX_TIMEOUT_MS) {
43
+ throw error("CONFIG_INVALID", "GROK_MCP_TIMEOUT_MS must be an integer from 5000 to 600000.");
44
+ }
45
+ const configuredBin = env.GROK_MCP_BIN?.trim();
46
+ const bin = configuredBin || "grok";
47
+ if (bin.includes("\0")) {
48
+ throw error("CONFIG_INVALID", "GROK_MCP_BIN must not contain NUL bytes.");
49
+ }
50
+ if (configuredBin !== undefined && configuredBin !== "" && !isAbsolute(configuredBin)) {
51
+ throw error("CONFIG_INVALID", "GROK_MCP_BIN must be an absolute path when set.");
52
+ }
53
+ const configuredAuthPath = env.GROK_MCP_AUTH_PATH?.trim();
54
+ const authPath = configuredAuthPath
55
+ ? isAbsolute(configuredAuthPath)
56
+ ? configuredAuthPath
57
+ : resolve(configuredAuthPath)
58
+ : join(homedir(), ".grok", "auth.json");
59
+ return { authPath, bin, model: model, timeoutMs };
60
+ }
61
+ function filteredEnv(source, sandbox) {
62
+ const env = {
63
+ GROK_HOME: sandbox.grokHome,
64
+ HOME: sandbox.home,
65
+ RUST_LOG: "off",
66
+ TMPDIR: sandbox.root,
67
+ XDG_CACHE_HOME: join(sandbox.home, ".cache"),
68
+ XDG_CONFIG_HOME: join(sandbox.home, ".config"),
69
+ XDG_DATA_HOME: join(sandbox.home, ".local", "share"),
70
+ };
71
+ for (const key of ["PATH", "LANG", "LC_ALL", "SSL_CERT_DIR", "SSL_CERT_FILE"]) {
72
+ if (source[key] !== undefined)
73
+ env[key] = source[key];
74
+ }
75
+ return env;
76
+ }
77
+ async function prepareSandbox(authPath, prompt) {
78
+ let authStat;
79
+ try {
80
+ authStat = await stat(authPath);
81
+ await access(authPath, constants.R_OK);
82
+ }
83
+ catch {
84
+ throw error("AUTH_REQUIRED", "Grok authentication was not found. Run `grok login` first.");
85
+ }
86
+ if (!authStat.isFile()) {
87
+ throw error("AUTH_REQUIRED", "Grok authentication was not found. Run `grok login` first.");
88
+ }
89
+ if ((authStat.mode & 0o077) !== 0) {
90
+ throw error("CONFIG_INVALID", "Grok auth file must not be readable by group or other users.");
91
+ }
92
+ const root = await mkdtemp(join(tmpdir(), "codex-grok-mcp-"));
93
+ const home = join(root, "home");
94
+ const grokHome = join(root, "grok-home");
95
+ const cwd = join(root, "work");
96
+ const promptPath = join(root, "prompt.txt");
97
+ try {
98
+ await chmod(root, 0o700);
99
+ await Promise.all([
100
+ mkdir(home, { mode: 0o700 }),
101
+ mkdir(grokHome, { mode: 0o700 }),
102
+ mkdir(cwd, { mode: 0o700 }),
103
+ ]);
104
+ await symlink(authPath, join(grokHome, "auth.json"));
105
+ await writeFile(join(grokHome, "config.toml"), ISOLATED_CONFIG, { mode: 0o600 });
106
+ if (prompt !== undefined) {
107
+ await writeFile(promptPath, prompt, { encoding: "utf8", mode: 0o600 });
108
+ }
109
+ }
110
+ catch {
111
+ try {
112
+ await rm(root, { force: true, recursive: true });
113
+ }
114
+ catch {
115
+ // Keep setup failures bounded; the OS temporary directory remains private.
116
+ }
117
+ throw error("CLI_FAILED", "Could not create the isolated Grok workspace.");
118
+ }
119
+ return { root, cwd, home, grokHome, promptPath };
120
+ }
121
+ async function cleanupSandbox(sandbox) {
122
+ if (sandbox === undefined)
123
+ return;
124
+ await rm(sandbox.root, { force: true, recursive: true });
125
+ }
126
+ function classifyFailure(stderr) {
127
+ if (/unauthorized|not authenticated|authentication|\b401\b|log(?:ged)? in/i.test(stderr)) {
128
+ return error("AUTH_REQUIRED", "Grok authentication failed. Run `grok login` and try again.", true);
129
+ }
130
+ if (/model.{0,40}(?:not found|unavailable|unknown|invalid)|unknown.{0,20}model/i.test(stderr)) {
131
+ return error("MODEL_UNAVAILABLE", "The configured Grok model is unavailable. Run the doctor command.", true);
132
+ }
133
+ return error("CLI_FAILED", "Grok CLI failed. Run `codex-grok-mcp --doctor` for setup checks.", true);
134
+ }
135
+ async function runProcess(options) {
136
+ if (options.signal?.aborted)
137
+ throw error("CANCELLED", "Grok request was cancelled.");
138
+ return await new Promise((resolvePromise, rejectPromise) => {
139
+ const child = spawn(options.bin, options.args, {
140
+ cwd: options.cwd,
141
+ env: options.env,
142
+ shell: false,
143
+ stdio: ["ignore", "pipe", "pipe"],
144
+ });
145
+ const stdout = [];
146
+ const stderr = [];
147
+ let stdoutBytes = 0;
148
+ let stderrBytes = 0;
149
+ let terminalError;
150
+ let settled = false;
151
+ let killTimer;
152
+ let timeoutTimer;
153
+ const settle = (callback) => {
154
+ if (settled)
155
+ return;
156
+ settled = true;
157
+ if (timeoutTimer !== undefined)
158
+ clearTimeout(timeoutTimer);
159
+ if (killTimer !== undefined)
160
+ clearTimeout(killTimer);
161
+ options.signal?.removeEventListener("abort", onAbort);
162
+ callback();
163
+ };
164
+ const terminate = (failure) => {
165
+ if (terminalError !== undefined)
166
+ return;
167
+ terminalError = failure;
168
+ child.kill("SIGTERM");
169
+ killTimer = setTimeout(() => child.kill("SIGKILL"), KILL_GRACE_MS);
170
+ killTimer.unref();
171
+ };
172
+ const onAbort = () => terminate(error("CANCELLED", "Grok request was cancelled.", true));
173
+ options.signal?.addEventListener("abort", onAbort, { once: true });
174
+ child.stdout?.on("data", (chunk) => {
175
+ stdoutBytes += chunk.length;
176
+ if (stdoutBytes > MAX_STDOUT_BYTES) {
177
+ terminate(error("OUTPUT_LIMIT", "Grok CLI output exceeded the 4 MiB safety limit.", true));
178
+ return;
179
+ }
180
+ stdout.push(chunk);
181
+ });
182
+ child.stderr?.on("data", (chunk) => {
183
+ stderrBytes += chunk.length;
184
+ if (stderrBytes > MAX_STDERR_BYTES) {
185
+ terminate(error("OUTPUT_LIMIT", "Grok CLI diagnostic output exceeded the 64 KiB safety limit.", true));
186
+ return;
187
+ }
188
+ stderr.push(chunk);
189
+ });
190
+ child.once("error", (spawnError) => {
191
+ const failure = spawnError.code === "ENOENT"
192
+ ? error("CLI_NOT_FOUND", "Grok CLI was not found. Install it, then run `grok login`.")
193
+ : error("CLI_FAILED", "Grok CLI could not be started.");
194
+ settle(() => rejectPromise(failure));
195
+ });
196
+ child.once("close", (code) => {
197
+ settle(() => {
198
+ if (terminalError !== undefined) {
199
+ rejectPromise(terminalError);
200
+ return;
201
+ }
202
+ if (code !== 0) {
203
+ rejectPromise(classifyFailure(Buffer.concat(stderr).toString("utf8")));
204
+ return;
205
+ }
206
+ resolvePromise({ stdout: Buffer.concat(stdout).toString("utf8") });
207
+ });
208
+ });
209
+ timeoutTimer = setTimeout(() => terminate(error("TIMEOUT", "Grok request exceeded its configured timeout.", true)), options.timeoutMs);
210
+ timeoutTimer.unref();
211
+ });
212
+ }
213
+ function parseGrokJson(stdout) {
214
+ let value;
215
+ try {
216
+ value = JSON.parse(stdout);
217
+ }
218
+ catch {
219
+ throw error("INVALID_OUTPUT", "Grok CLI returned malformed JSON.", true);
220
+ }
221
+ if (typeof value !== "object" ||
222
+ value === null ||
223
+ !("text" in value) ||
224
+ typeof value.text !== "string" ||
225
+ value.text.trim().length === 0) {
226
+ throw error("INVALID_OUTPUT", "Grok CLI returned JSON without a non-empty text response.", true);
227
+ }
228
+ return value.text;
229
+ }
230
+ function askArgs(sandbox, model) {
231
+ return [
232
+ `--prompt-file=${sandbox.promptPath}`,
233
+ "--verbatim",
234
+ "--output-format=json",
235
+ `--model=${model}`,
236
+ "--no-subagents",
237
+ "--no-plan",
238
+ "--max-turns=1",
239
+ "--permission-mode=dontAsk",
240
+ "--disable-web-search",
241
+ "--deny=Bash",
242
+ "--deny=Edit",
243
+ "--deny=Read",
244
+ "--deny=Grep",
245
+ "--deny=MCPTool",
246
+ "--deny=WebFetch",
247
+ "--deny=WebSearch",
248
+ `--cwd=${sandbox.cwd}`,
249
+ ];
250
+ }
251
+ export async function runGrok(prompt, options = {}) {
252
+ if (active)
253
+ throw error("BUSY", "Another Grok request is already running. Wait for it to finish.");
254
+ if (prompt.trim().length === 0 ||
255
+ prompt.includes("\0") ||
256
+ Buffer.byteLength(prompt, "utf8") > MAX_PROMPT_BYTES) {
257
+ throw error("CONFIG_INVALID", "Prompt is empty, contains NUL, or exceeds 65536 UTF-8 bytes.");
258
+ }
259
+ active = true;
260
+ const requestId = randomUUID();
261
+ const startedAt = Date.now();
262
+ let sandbox;
263
+ try {
264
+ const sourceEnv = options.env ?? process.env;
265
+ const config = loadConfig(sourceEnv);
266
+ sandbox = await prepareSandbox(config.authPath, prompt);
267
+ process.stderr.write(`${JSON.stringify({ event: "grok_request_started", request_id: requestId, model: config.model })}\n`);
268
+ const result = await runProcess({
269
+ args: askArgs(sandbox, config.model),
270
+ bin: config.bin,
271
+ cwd: sandbox.cwd,
272
+ env: filteredEnv(sourceEnv, sandbox),
273
+ ...(options.signal !== undefined ? { signal: options.signal } : {}),
274
+ timeoutMs: config.timeoutMs,
275
+ });
276
+ const response = {
277
+ text: parseGrokJson(result.stdout),
278
+ model: config.model,
279
+ elapsedMs: Date.now() - startedAt,
280
+ };
281
+ process.stderr.write(`${JSON.stringify({ event: "grok_request_finished", request_id: requestId, elapsed_ms: response.elapsedMs })}\n`);
282
+ return response;
283
+ }
284
+ catch (caught) {
285
+ const failure = caught instanceof GrokCliError
286
+ ? caught
287
+ : error("CLI_FAILED", "Grok CLI request failed unexpectedly.", true);
288
+ process.stderr.write(`${JSON.stringify({ event: "grok_request_failed", request_id: requestId, code: failure.code })}\n`);
289
+ throw failure;
290
+ }
291
+ finally {
292
+ try {
293
+ await cleanupSandbox(sandbox);
294
+ }
295
+ finally {
296
+ active = false;
297
+ }
298
+ }
299
+ }
300
+ export async function doctor(env = process.env) {
301
+ const config = loadConfig(env);
302
+ const baseRoot = await mkdtemp(join(tmpdir(), "codex-grok-doctor-"));
303
+ try {
304
+ const version = await runProcess({
305
+ args: ["--version"],
306
+ bin: config.bin,
307
+ cwd: baseRoot,
308
+ env: { PATH: env.PATH, HOME: baseRoot, RUST_LOG: "off" },
309
+ timeoutMs: 10_000,
310
+ });
311
+ const sandbox = await prepareSandbox(config.authPath);
312
+ try {
313
+ const models = await runProcess({
314
+ args: ["models"],
315
+ bin: config.bin,
316
+ cwd: sandbox.cwd,
317
+ env: filteredEnv(env, sandbox),
318
+ timeoutMs: Math.min(config.timeoutMs, 30_000),
319
+ });
320
+ const availableModels = models.stdout
321
+ .split("\n")
322
+ .map((line) => line.match(/^\s*[*-]\s+(\S+)/)?.[1])
323
+ .filter((model) => model !== undefined)
324
+ .sort();
325
+ if (!availableModels.includes(config.model)) {
326
+ throw error("MODEL_UNAVAILABLE", `Configured model ${config.model} is not available.`);
327
+ }
328
+ return { version: version.stdout.trim(), model: config.model, availableModels };
329
+ }
330
+ finally {
331
+ await cleanupSandbox(sandbox);
332
+ }
333
+ }
334
+ finally {
335
+ await rm(baseRoot, { force: true, recursive: true });
336
+ }
337
+ }
338
+ //# sourceMappingURL=grok-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grok-cli.js","sourceRoot":"","sources":["../src/grok-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ import { McpServer } from "@modelcontextprotocol/server";
3
+ import { type GrokBotTransport } from "./grok-bot-gateway.js";
4
+ import { type BridgeStatusProvider } from "./relay-transport.js";
5
+ type OptionalBridgeStatusTransport = GrokBotTransport & Partial<BridgeStatusProvider>;
6
+ export declare function createServer(env?: NodeJS.ProcessEnv, pairedTransport?: OptionalBridgeStatusTransport): McpServer;
7
+ export declare function main(argv?: string[]): Promise<void>;
8
+ export {};