@gramatr/mcp 0.7.3 → 0.7.5
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/dist/bin/add-api-key.d.ts +14 -0
- package/dist/bin/add-api-key.d.ts.map +1 -1
- package/dist/bin/add-api-key.js +11 -12
- package/dist/bin/add-api-key.js.map +1 -1
- package/dist/bin/build-mcpb.d.ts +53 -0
- package/dist/bin/build-mcpb.d.ts.map +1 -1
- package/dist/bin/build-mcpb.js +109 -23
- package/dist/bin/build-mcpb.js.map +1 -1
- package/dist/bin/gramatr-mcp.d.ts +2 -1
- package/dist/bin/gramatr-mcp.d.ts.map +1 -1
- package/dist/bin/gramatr-mcp.js +32 -25
- package/dist/bin/gramatr-mcp.js.map +1 -1
- package/dist/bin/login.d.ts +30 -1
- package/dist/bin/login.d.ts.map +1 -1
- package/dist/bin/login.js +15 -16
- package/dist/bin/login.js.map +1 -1
- package/dist/bin/setup.d.ts +46 -0
- package/dist/bin/setup.d.ts.map +1 -1
- package/dist/bin/setup.js +35 -15
- package/dist/bin/setup.js.map +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/lib/session.d.ts +4 -0
- package/dist/hooks/lib/session.d.ts.map +1 -1
- package/dist/hooks/lib/session.js +17 -6
- package/dist/hooks/lib/session.js.map +1 -1
- package/dist/hooks/lib/types.d.ts.map +1 -1
- package/dist/hooks/lib/types.js +1 -0
- package/dist/hooks/lib/types.js.map +1 -1
- package/dist/hooks/session-end.d.ts.map +1 -1
- package/dist/hooks/session-end.js +12 -6
- package/dist/hooks/session-end.js.map +1 -1
- package/dist/hooks/session-start.d.ts.map +1 -1
- package/dist/hooks/session-start.js +5 -7
- package/dist/hooks/session-start.js.map +1 -1
- package/dist/hooks/user-prompt-submit.d.ts.map +1 -1
- package/dist/hooks/user-prompt-submit.js +2 -1
- package/dist/hooks/user-prompt-submit.js.map +1 -1
- package/dist/server/auth.d.ts +6 -1
- package/dist/server/auth.d.ts.map +1 -1
- package/dist/server/auth.js +40 -32
- package/dist/server/auth.js.map +1 -1
- package/dist/server/server.js +2 -2
- package/dist/server/server.js.map +1 -1
- package/dist/setup/instructions.d.ts +2 -0
- package/dist/setup/instructions.d.ts.map +1 -1
- package/dist/setup/instructions.js +59 -0
- package/dist/setup/instructions.js.map +1 -1
- package/dist/tools/local-tools.d.ts.map +1 -1
- package/dist/tools/local-tools.js +2 -1
- package/dist/tools/local-tools.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
export declare function gmtrJsonPath(): string;
|
|
3
|
+
export declare function log(msg?: string): void;
|
|
4
|
+
export declare function err(msg: string): void;
|
|
5
|
+
export declare function parseArgs(argv: string[]): {
|
|
6
|
+
fromEnv?: string;
|
|
7
|
+
force: boolean;
|
|
8
|
+
help: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function showHelp(): void;
|
|
11
|
+
export declare function validateFormat(key: string): boolean;
|
|
12
|
+
export declare function readPipedStdin(): Promise<string | null>;
|
|
13
|
+
export declare function readInteractive(): Promise<string>;
|
|
14
|
+
export declare function validateAgainstServer(key: string): Promise<boolean>;
|
|
15
|
+
export declare function writeKey(key: string): void;
|
|
2
16
|
export declare function main(argv?: string[]): Promise<number>;
|
|
3
17
|
//# sourceMappingURL=add-api-key.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-api-key.d.ts","sourceRoot":"","sources":["../../src/bin/add-api-key.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"add-api-key.d.ts","sourceRoot":"","sources":["../../src/bin/add-api-key.ts"],"names":[],"mappings":";AAOA,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAKD,wBAAgB,GAAG,CAAC,GAAG,GAAE,MAAW,GAAG,IAAI,CAE1C;AAED,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAErC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAW7F;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAU/B;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ7D;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAavD;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA8BzE;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAU1C;AAED,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAqClF"}
|
package/dist/bin/add-api-key.js
CHANGED
|
@@ -3,19 +3,19 @@ import { chmodSync, existsSync, readFileSync, writeFileSync } from 'fs';
|
|
|
3
3
|
import { join } from 'path';
|
|
4
4
|
import { createInterface } from 'readline';
|
|
5
5
|
import { getHomeDir, getGramatrUrlFromEnv } from '../config-runtime.js';
|
|
6
|
-
function gmtrJsonPath() {
|
|
6
|
+
export function gmtrJsonPath() {
|
|
7
7
|
return join(getHomeDir(), '.gramatr.json');
|
|
8
8
|
}
|
|
9
9
|
const SERVER_BASE = (getGramatrUrlFromEnv() || 'https://api.gramatr.com').replace(/\/mcp\/?$/, '');
|
|
10
10
|
const KEY_FORMAT = /^(gramatr|gmtr|aios)_(sk|pk)_[A-Za-z0-9_-]+$/;
|
|
11
11
|
const LEGACY_OPAQUE = /^[A-Za-z0-9_.-]{32,}$/;
|
|
12
|
-
function log(msg = '') {
|
|
12
|
+
export function log(msg = '') {
|
|
13
13
|
process.stdout.write(`${msg}\n`);
|
|
14
14
|
}
|
|
15
|
-
function err(msg) {
|
|
15
|
+
export function err(msg) {
|
|
16
16
|
process.stderr.write(`${msg}\n`);
|
|
17
17
|
}
|
|
18
|
-
function parseArgs(argv) {
|
|
18
|
+
export function parseArgs(argv) {
|
|
19
19
|
let fromEnv;
|
|
20
20
|
let force = false;
|
|
21
21
|
let help = false;
|
|
@@ -30,7 +30,7 @@ function parseArgs(argv) {
|
|
|
30
30
|
}
|
|
31
31
|
return { fromEnv, force, help };
|
|
32
32
|
}
|
|
33
|
-
function showHelp() {
|
|
33
|
+
export function showHelp() {
|
|
34
34
|
log(`gramatr-mcp add-api-key — Add a gramatr API key to ~/.gramatr.json
|
|
35
35
|
|
|
36
36
|
Usage:
|
|
@@ -41,10 +41,10 @@ Usage:
|
|
|
41
41
|
|
|
42
42
|
Server: ${SERVER_BASE}`);
|
|
43
43
|
}
|
|
44
|
-
function validateFormat(key) {
|
|
44
|
+
export function validateFormat(key) {
|
|
45
45
|
return KEY_FORMAT.test(key) || (LEGACY_OPAQUE.test(key) && !key.includes(' '));
|
|
46
46
|
}
|
|
47
|
-
async function readPipedStdin() {
|
|
47
|
+
export async function readPipedStdin() {
|
|
48
48
|
if (process.stdin.isTTY)
|
|
49
49
|
return null;
|
|
50
50
|
return new Promise((resolve) => {
|
|
@@ -54,7 +54,7 @@ async function readPipedStdin() {
|
|
|
54
54
|
process.stdin.on('error', () => resolve(null));
|
|
55
55
|
});
|
|
56
56
|
}
|
|
57
|
-
async function readInteractive() {
|
|
57
|
+
export async function readInteractive() {
|
|
58
58
|
log('');
|
|
59
59
|
log('Paste your gramatr API key below.');
|
|
60
60
|
log('(keys usually start with gramatr_sk_)');
|
|
@@ -68,7 +68,7 @@ async function readInteractive() {
|
|
|
68
68
|
});
|
|
69
69
|
});
|
|
70
70
|
}
|
|
71
|
-
async function validateAgainstServer(key) {
|
|
71
|
+
export async function validateAgainstServer(key) {
|
|
72
72
|
try {
|
|
73
73
|
const res = await fetch(`${SERVER_BASE}/mcp`, {
|
|
74
74
|
method: 'POST',
|
|
@@ -99,7 +99,7 @@ async function validateAgainstServer(key) {
|
|
|
99
99
|
return false;
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
|
-
function writeKey(key) {
|
|
102
|
+
export function writeKey(key) {
|
|
103
103
|
let existing = {};
|
|
104
104
|
if (existsSync(gmtrJsonPath())) {
|
|
105
105
|
try {
|
|
@@ -108,8 +108,7 @@ function writeKey(key) {
|
|
|
108
108
|
catch { }
|
|
109
109
|
}
|
|
110
110
|
existing.token = key;
|
|
111
|
-
existing.token_type =
|
|
112
|
-
key.startsWith('gramatr_sk_') || key.startsWith('aios_sk_') ? 'api_key' : 'oauth';
|
|
111
|
+
existing.token_type = /^[a-z]+_(?:sk|pk)_/i.test(key) ? 'api_key' : 'oauth';
|
|
113
112
|
existing.authenticated_at = new Date().toISOString();
|
|
114
113
|
writeFileSync(gmtrJsonPath(), `${JSON.stringify(existing, null, 2)}\n`, 'utf8');
|
|
115
114
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-api-key.js","sourceRoot":"","sources":["../../src/bin/add-api-key.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAExE,
|
|
1
|
+
{"version":3,"file":"add-api-key.js","sourceRoot":"","sources":["../../src/bin/add-api-key.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/build-mcpb.d.ts
CHANGED
|
@@ -1,3 +1,56 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
interface McpbManifest {
|
|
3
|
+
manifest_version: string;
|
|
4
|
+
name: string;
|
|
5
|
+
display_name: string;
|
|
6
|
+
version: string;
|
|
7
|
+
description: string;
|
|
8
|
+
long_description: string;
|
|
9
|
+
author: {
|
|
10
|
+
name: string;
|
|
11
|
+
url: string;
|
|
12
|
+
};
|
|
13
|
+
homepage: string;
|
|
14
|
+
documentation: string;
|
|
15
|
+
repository: {
|
|
16
|
+
type: string;
|
|
17
|
+
url: string;
|
|
18
|
+
};
|
|
19
|
+
license: string;
|
|
20
|
+
keywords: string[];
|
|
21
|
+
icon?: string;
|
|
22
|
+
server: {
|
|
23
|
+
type: 'node';
|
|
24
|
+
entry_point: string;
|
|
25
|
+
mcp_config: {
|
|
26
|
+
command: 'node';
|
|
27
|
+
args: string[];
|
|
28
|
+
env: Record<string, string>;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
user_config: Record<string, {
|
|
32
|
+
type: string;
|
|
33
|
+
title: string;
|
|
34
|
+
description: string;
|
|
35
|
+
sensitive?: boolean;
|
|
36
|
+
required: boolean;
|
|
37
|
+
}>;
|
|
38
|
+
compatibility: {
|
|
39
|
+
claude_desktop: string;
|
|
40
|
+
platforms: string[];
|
|
41
|
+
runtimes: {
|
|
42
|
+
node: string;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
privacy_policies: string[];
|
|
46
|
+
tools_generated: boolean;
|
|
47
|
+
prompts_generated: boolean;
|
|
48
|
+
}
|
|
49
|
+
export declare function buildManifest(version: string): McpbManifest;
|
|
50
|
+
export declare function buildMcpb(outDir: string, version: string): {
|
|
51
|
+
bundleDir: string;
|
|
52
|
+
archivePath: string;
|
|
53
|
+
manifest: McpbManifest;
|
|
54
|
+
};
|
|
2
55
|
export {};
|
|
3
56
|
//# sourceMappingURL=build-mcpb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-mcpb.d.ts","sourceRoot":"","sources":["../../src/bin/build-mcpb.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"build-mcpb.d.ts","sourceRoot":"","sources":["../../src/bin/build-mcpb.ts"],"names":[],"mappings":";AAwBA,UAAU,YAAY;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE;YACV,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,EAAE,CAAC;YACf,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC1H,aAAa,EAAE;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC5B,CAAC;IACF,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAgBD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAmD3D;AAiFD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,CAa7H"}
|
package/dist/bin/build-mcpb.js
CHANGED
|
@@ -1,23 +1,29 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { copyFileSync, cpSync, existsSync, mkdirSync, readFileSync, realpathSync, rmSync, writeFileSync, } from 'node:fs';
|
|
3
|
+
import { execFileSync } from 'node:child_process';
|
|
4
|
+
import { dirname, join, resolve } from 'node:path';
|
|
5
|
+
import { createRequire } from 'node:module';
|
|
6
|
+
import { fileURLToPath } from 'node:url';
|
|
5
7
|
import { getGramatrUrlFromEnv } from '../config-runtime.js';
|
|
6
8
|
const currentFile = fileURLToPath(import.meta.url);
|
|
7
9
|
const binDir = dirname(currentFile);
|
|
8
10
|
const packageDir = dirname(dirname(binDir));
|
|
9
11
|
const repoRoot = dirname(dirname(packageDir));
|
|
12
|
+
const require = createRequire(import.meta.url);
|
|
13
|
+
function readPackageJson(path) {
|
|
14
|
+
return JSON.parse(readFileSync(path, 'utf8'));
|
|
15
|
+
}
|
|
10
16
|
function readPackageVersion() {
|
|
11
17
|
try {
|
|
12
18
|
const pkgPath = join(packageDir, 'package.json');
|
|
13
|
-
const pkg =
|
|
19
|
+
const pkg = readPackageJson(pkgPath);
|
|
14
20
|
return pkg.version || '0.0.0';
|
|
15
21
|
}
|
|
16
22
|
catch {
|
|
17
23
|
return '0.0.0';
|
|
18
24
|
}
|
|
19
25
|
}
|
|
20
|
-
function buildManifest(version) {
|
|
26
|
+
export function buildManifest(version) {
|
|
21
27
|
const mcpUrl = getGramatrUrlFromEnv() || 'https://api.gramatr.com/mcp';
|
|
22
28
|
const baseUrl = mcpUrl.replace(/\/mcp\/?$/, '');
|
|
23
29
|
return {
|
|
@@ -25,21 +31,29 @@ function buildManifest(version) {
|
|
|
25
31
|
name: 'gramatr',
|
|
26
32
|
display_name: 'gramatr',
|
|
27
33
|
version,
|
|
28
|
-
description: 'gramatr local MCP runtime
|
|
34
|
+
description: 'gramatr local MCP runtime for Claude Desktop with hosted intelligence proxying.',
|
|
29
35
|
long_description: [
|
|
30
|
-
'gramatr
|
|
31
|
-
'
|
|
36
|
+
'gramatr runs locally inside Claude Desktop and proxies authenticated requests to the hosted gramatr intelligence layer.',
|
|
37
|
+
'This keeps tool validation and local runtime isolation in the desktop extension while minimizing prompt overhead.',
|
|
32
38
|
].join('\n'),
|
|
33
39
|
author: { name: 'gramatr', url: 'https://gramatr.com' },
|
|
34
40
|
homepage: 'https://gramatr.com',
|
|
35
41
|
documentation: `${baseUrl}/.well-known/mcp/server-card.json`,
|
|
36
42
|
repository: { type: 'git', url: 'https://github.com/gramatr/gramatr' },
|
|
37
43
|
license: 'SEE LICENSE IN LICENSE',
|
|
38
|
-
keywords: ['ai', 'mcp', 'routing', 'memory', 'gramatr'],
|
|
44
|
+
keywords: ['ai', 'mcp', 'routing', 'memory', 'gramatr', 'claude-desktop'],
|
|
45
|
+
icon: 'icon.png',
|
|
39
46
|
server: {
|
|
40
|
-
type: '
|
|
41
|
-
|
|
42
|
-
|
|
47
|
+
type: 'node',
|
|
48
|
+
entry_point: 'dist/bin/gramatr-mcp.js',
|
|
49
|
+
mcp_config: {
|
|
50
|
+
command: 'node',
|
|
51
|
+
args: ['${__dirname}/dist/bin/gramatr-mcp.js'],
|
|
52
|
+
env: {
|
|
53
|
+
GRAMATR_API_KEY: '${user_config.api_key}',
|
|
54
|
+
GRAMATR_URL: mcpUrl,
|
|
55
|
+
},
|
|
56
|
+
},
|
|
43
57
|
},
|
|
44
58
|
user_config: {
|
|
45
59
|
api_key: {
|
|
@@ -50,28 +64,100 @@ function buildManifest(version) {
|
|
|
50
64
|
required: true,
|
|
51
65
|
},
|
|
52
66
|
},
|
|
53
|
-
compatibility: {
|
|
67
|
+
compatibility: {
|
|
68
|
+
claude_desktop: '>=1.0.0',
|
|
69
|
+
platforms: ['darwin', 'win32'],
|
|
70
|
+
runtimes: { node: '>=20.0.0' },
|
|
71
|
+
},
|
|
54
72
|
privacy_policies: ['https://gramatr.com/privacy'],
|
|
55
73
|
tools_generated: true,
|
|
56
74
|
prompts_generated: true,
|
|
57
75
|
};
|
|
58
76
|
}
|
|
77
|
+
function ensureDir(path) {
|
|
78
|
+
mkdirSync(path, { recursive: true });
|
|
79
|
+
}
|
|
80
|
+
function resolvePackageRoot(packageName) {
|
|
81
|
+
return realpathSync(join(repoRoot, 'node_modules', ...packageName.split('/')));
|
|
82
|
+
}
|
|
83
|
+
function copyPackageRecursive(packageName, nodeModulesDir, seen = new Set()) {
|
|
84
|
+
if (seen.has(packageName))
|
|
85
|
+
return;
|
|
86
|
+
seen.add(packageName);
|
|
87
|
+
const packageRoot = resolvePackageRoot(packageName);
|
|
88
|
+
const packageJson = readPackageJson(join(packageRoot, 'package.json'));
|
|
89
|
+
const destination = join(nodeModulesDir, ...packageName.split('/'));
|
|
90
|
+
ensureDir(dirname(destination));
|
|
91
|
+
cpSync(packageRoot, destination, { recursive: true });
|
|
92
|
+
const dependencies = Object.keys(packageJson.dependencies || {});
|
|
93
|
+
const peerDependencies = Object.entries(packageJson.peerDependencies || {})
|
|
94
|
+
.filter(([name]) => !packageJson.peerDependenciesMeta?.[name]?.optional)
|
|
95
|
+
.map(([name]) => name);
|
|
96
|
+
for (const dependency of [...dependencies, ...peerDependencies]) {
|
|
97
|
+
copyPackageRecursive(dependency, nodeModulesDir, seen);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function writeRuntimePackageJson(bundleDir, version) {
|
|
101
|
+
const runtimePackage = {
|
|
102
|
+
name: 'gramatr-mcpb-runtime',
|
|
103
|
+
version,
|
|
104
|
+
private: true,
|
|
105
|
+
type: 'module',
|
|
106
|
+
};
|
|
107
|
+
writeFileSync(join(bundleDir, 'package.json'), `${JSON.stringify(runtimePackage, null, 2)}\n`, 'utf8');
|
|
108
|
+
}
|
|
109
|
+
function writeManifest(bundleDir, manifest) {
|
|
110
|
+
writeFileSync(join(bundleDir, 'manifest.json'), `${JSON.stringify(manifest, null, 2)}\n`, 'utf8');
|
|
111
|
+
}
|
|
112
|
+
function copyRuntimeFiles(bundleDir, version) {
|
|
113
|
+
cpSync(join(packageDir, 'dist'), join(bundleDir, 'dist'), { recursive: true });
|
|
114
|
+
copyPackageRecursive('@modelcontextprotocol/sdk', join(bundleDir, 'node_modules'));
|
|
115
|
+
writeRuntimePackageJson(bundleDir, version);
|
|
116
|
+
const licensePath = join(repoRoot, 'LICENSE');
|
|
117
|
+
if (existsSync(licensePath)) {
|
|
118
|
+
copyFileSync(licensePath, join(bundleDir, 'LICENSE'));
|
|
119
|
+
}
|
|
120
|
+
const iconPath = join(repoRoot, 'packages', 'mcp-server', 'assets', 'logo.png');
|
|
121
|
+
if (existsSync(iconPath)) {
|
|
122
|
+
copyFileSync(iconPath, join(bundleDir, 'icon.png'));
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
function buildArchive(bundleDir, archivePath) {
|
|
126
|
+
rmSync(archivePath, { force: true });
|
|
127
|
+
if (process.platform === 'win32') {
|
|
128
|
+
execFileSync('powershell.exe', [
|
|
129
|
+
'-NoProfile',
|
|
130
|
+
'-Command',
|
|
131
|
+
`Compress-Archive -Path * -DestinationPath '${archivePath.replace(/'/g, "''")}' -Force`,
|
|
132
|
+
], { cwd: bundleDir, stdio: 'inherit' });
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
execFileSync('zip', ['-qr', archivePath, '.'], { cwd: bundleDir, stdio: 'inherit' });
|
|
136
|
+
}
|
|
137
|
+
export function buildMcpb(outDir, version) {
|
|
138
|
+
const manifest = buildManifest(version);
|
|
139
|
+
const stagingDir = join(outDir, 'gramatr.mcpb.contents');
|
|
140
|
+
const archivePath = join(outDir, 'gramatr.mcpb');
|
|
141
|
+
rmSync(stagingDir, { recursive: true, force: true });
|
|
142
|
+
ensureDir(stagingDir);
|
|
143
|
+
writeManifest(stagingDir, manifest);
|
|
144
|
+
copyRuntimeFiles(stagingDir, version);
|
|
145
|
+
buildArchive(stagingDir, archivePath);
|
|
146
|
+
return { bundleDir: stagingDir, archivePath, manifest };
|
|
147
|
+
}
|
|
59
148
|
function main() {
|
|
60
149
|
const args = process.argv.slice(2);
|
|
61
150
|
const normalized = args[0] === 'build-mcpb' ? args.slice(1) : args;
|
|
62
151
|
const outIndex = normalized.indexOf('--out');
|
|
63
|
-
const outDir = outIndex >= 0 && normalized[outIndex + 1] ? normalized[outIndex + 1] : join(repoRoot, 'dist');
|
|
152
|
+
const outDir = outIndex >= 0 && normalized[outIndex + 1] ? resolve(normalized[outIndex + 1]) : join(repoRoot, 'dist');
|
|
153
|
+
ensureDir(outDir);
|
|
64
154
|
const version = readPackageVersion();
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const manifestPath = join(mcpbDir, 'manifest.json');
|
|
70
|
-
writeFileSync(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`, 'utf8');
|
|
71
|
-
process.stdout.write(`OK Built .mcpb package\n`);
|
|
72
|
-
process.stdout.write(` Manifest: ${manifestPath}\n`);
|
|
155
|
+
const result = buildMcpb(outDir, version);
|
|
156
|
+
process.stdout.write('OK Built .mcpb package\n');
|
|
157
|
+
process.stdout.write(` Archive: ${result.archivePath}\n`);
|
|
158
|
+
process.stdout.write(` Staging: ${result.bundleDir}\n`);
|
|
73
159
|
process.stdout.write(` Version: ${version}\n`);
|
|
74
|
-
process.stdout.write(`
|
|
160
|
+
process.stdout.write(` Entry: ${result.manifest.server.entry_point}\n`);
|
|
75
161
|
}
|
|
76
162
|
main();
|
|
77
163
|
//# sourceMappingURL=build-mcpb.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-mcpb.js","sourceRoot":"","sources":["../../src/bin/build-mcpb.ts"],"names":[],"mappings":";AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"build-mcpb.js","sourceRoot":"","sources":["../../src/bin/build-mcpb.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,5 +32,6 @@
|
|
|
32
32
|
* client hooks (Claude Code, Codex, Gemini) invoke this binary directly
|
|
33
33
|
* instead of shipping duplicated TypeScript in each integration package.
|
|
34
34
|
*/
|
|
35
|
-
export
|
|
35
|
+
export declare function printHelp(): void;
|
|
36
|
+
export declare function cliMain(cliArgs?: string[]): Promise<void>;
|
|
36
37
|
//# sourceMappingURL=gramatr-mcp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gramatr-mcp.d.ts","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
|
|
1
|
+
{"version":3,"file":"gramatr-mcp.d.ts","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAKH,wBAAgB,SAAS,IAAI,IAAI,CAwChC;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAuHtF"}
|
package/dist/bin/gramatr-mcp.js
CHANGED
|
@@ -32,12 +32,9 @@
|
|
|
32
32
|
* client hooks (Claude Code, Codex, Gemini) invoke this binary directly
|
|
33
33
|
* instead of shipping duplicated TypeScript in each integration package.
|
|
34
34
|
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
process.exit(0);
|
|
39
|
-
}
|
|
40
|
-
if (args.includes('--help') || args.includes('-h')) {
|
|
35
|
+
import { VERSION } from '../hooks/lib/version.js';
|
|
36
|
+
import { fileURLToPath } from 'node:url';
|
|
37
|
+
export function printHelp() {
|
|
41
38
|
process.stderr.write(`
|
|
42
39
|
gramatr-mcp — Local MCP server for grāmatr
|
|
43
40
|
|
|
@@ -77,42 +74,49 @@ if (args.includes('--help') || args.includes('-h')) {
|
|
|
77
74
|
gramatr-mcp setup gemini Write Gemini extension manifest/hooks
|
|
78
75
|
gramatr-mcp setup claude --dry Preview without writing
|
|
79
76
|
`);
|
|
80
|
-
process.exit(0);
|
|
81
77
|
}
|
|
82
|
-
async function
|
|
78
|
+
export async function cliMain(cliArgs = process.argv.slice(2)) {
|
|
83
79
|
// Handle hook subcommand — MUST be before any heavyweight imports so hook
|
|
84
80
|
// invocation stays under the 250ms cold-start budget for UserPromptSubmit /
|
|
85
81
|
// SessionStart. See issue #652 comment 4230136578 for the latency budget.
|
|
86
|
-
if (
|
|
82
|
+
if (cliArgs.includes('--version') || cliArgs.includes('-v')) {
|
|
83
|
+
process.stdout.write(`${VERSION}\n`);
|
|
84
|
+
process.exit(0);
|
|
85
|
+
}
|
|
86
|
+
if (cliArgs.includes('--help') || cliArgs.includes('-h')) {
|
|
87
|
+
printHelp();
|
|
88
|
+
process.exit(0);
|
|
89
|
+
}
|
|
90
|
+
if (cliArgs[0] === 'hook') {
|
|
87
91
|
const { runHook } = await import('./hook-dispatcher.js');
|
|
88
|
-
const code = await runHook(
|
|
92
|
+
const code = await runHook(cliArgs[1], cliArgs.slice(2));
|
|
89
93
|
process.exit(code);
|
|
90
94
|
}
|
|
91
|
-
if (
|
|
95
|
+
if (cliArgs[0] === 'login') {
|
|
92
96
|
const { main: runLogin } = await import('./login.js');
|
|
93
97
|
await runLogin();
|
|
94
98
|
return;
|
|
95
99
|
}
|
|
96
|
-
if (
|
|
100
|
+
if (cliArgs[0] === 'add-api-key') {
|
|
97
101
|
const { main: runAddApiKey } = await import('./add-api-key.js');
|
|
98
102
|
process.exit(await runAddApiKey());
|
|
99
103
|
}
|
|
100
|
-
if (
|
|
104
|
+
if (cliArgs[0] === 'logout') {
|
|
101
105
|
const { main: runLogout } = await import('./logout.js');
|
|
102
106
|
process.exit(runLogout());
|
|
103
107
|
}
|
|
104
|
-
if (
|
|
108
|
+
if (cliArgs[0] === 'clear-creds') {
|
|
105
109
|
const { main: runClearCreds } = await import('./clear-creds.js');
|
|
106
110
|
process.exit(runClearCreds());
|
|
107
111
|
}
|
|
108
|
-
if (
|
|
112
|
+
if (cliArgs[0] === 'build-mcpb') {
|
|
109
113
|
await import('./build-mcpb.js');
|
|
110
114
|
return;
|
|
111
115
|
}
|
|
112
116
|
// Handle setup subcommand
|
|
113
|
-
if (
|
|
114
|
-
const target =
|
|
115
|
-
const dryRun =
|
|
117
|
+
if (cliArgs[0] === 'setup') {
|
|
118
|
+
const target = cliArgs[1];
|
|
119
|
+
const dryRun = cliArgs.includes('--dry');
|
|
116
120
|
if (target === 'claude') {
|
|
117
121
|
const { setupClaude } = await import('./setup.js');
|
|
118
122
|
setupClaude(dryRun);
|
|
@@ -154,7 +158,7 @@ async function main() {
|
|
|
154
158
|
return;
|
|
155
159
|
}
|
|
156
160
|
if (target === 'web') {
|
|
157
|
-
const webTarget =
|
|
161
|
+
const webTarget = cliArgs[2];
|
|
158
162
|
const resolved = webTarget === 'chatgpt' ? 'chatgpt-web'
|
|
159
163
|
: webTarget === 'gemini' ? 'gemini-web'
|
|
160
164
|
: 'claude-web';
|
|
@@ -171,10 +175,13 @@ async function main() {
|
|
|
171
175
|
const { startServer } = await import('../server/server.js');
|
|
172
176
|
await startServer();
|
|
173
177
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
178
|
+
const isEntrypoint = process.argv[1] != null
|
|
179
|
+
&& fileURLToPath(import.meta.url) === process.argv[1];
|
|
180
|
+
if (isEntrypoint) {
|
|
181
|
+
cliMain().catch((error) => {
|
|
182
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
183
|
+
process.stderr.write(`[gramatr-mcp] Fatal: ${message}\n`);
|
|
184
|
+
process.exit(1);
|
|
185
|
+
});
|
|
186
|
+
}
|
|
180
187
|
//# sourceMappingURL=gramatr-mcp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gramatr-mcp.js","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,
|
|
1
|
+
{"version":3,"file":"gramatr-mcp.js","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/login.d.ts
CHANGED
|
@@ -14,5 +14,34 @@
|
|
|
14
14
|
* Token is stored in ~/.gramatr.json under the "token" key.
|
|
15
15
|
* The local gramatr MCP runtime reads this on every proxied request.
|
|
16
16
|
*/
|
|
17
|
-
export declare function
|
|
17
|
+
export declare function isHeadless(forceFlag?: boolean): boolean;
|
|
18
|
+
export declare function readConfig(): Record<string, any>;
|
|
19
|
+
export declare function writeConfig(config: Record<string, any>): void;
|
|
20
|
+
export declare function readJsonRecord(response: Response): Promise<Record<string, any>>;
|
|
21
|
+
export declare function checkServerHealth(): Promise<{
|
|
22
|
+
ok: boolean;
|
|
23
|
+
version?: string;
|
|
24
|
+
error?: string;
|
|
25
|
+
}>;
|
|
26
|
+
export declare function testToken(token: string): Promise<{
|
|
27
|
+
valid: boolean;
|
|
28
|
+
user?: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
}>;
|
|
31
|
+
export declare function startDeviceAuthorization(): Promise<{
|
|
32
|
+
device_code: string;
|
|
33
|
+
user_code: string;
|
|
34
|
+
verification_uri: string;
|
|
35
|
+
verification_uri_complete?: string;
|
|
36
|
+
expires_in: number;
|
|
37
|
+
interval: number;
|
|
38
|
+
}>;
|
|
39
|
+
export declare function pollDeviceAuthorization(deviceCode: string): Promise<string>;
|
|
40
|
+
export declare function showStatus(): Promise<void>;
|
|
41
|
+
export declare function logout(): Promise<void>;
|
|
42
|
+
export declare function loginWithToken(token: string): Promise<void>;
|
|
43
|
+
export declare function loginBrowser(opts?: {
|
|
44
|
+
forceHeadless?: boolean;
|
|
45
|
+
}): Promise<void>;
|
|
46
|
+
export declare function main(rawArgs?: string[]): Promise<void>;
|
|
18
47
|
//# sourceMappingURL=login.d.ts.map
|
package/dist/bin/login.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/bin/login.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/bin/login.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG;AAmLH,wBAAgB,UAAU,CAAC,SAAS,GAAE,OAAe,GAAG,OAAO,CAe9D;AAID,wBAAgB,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAMhD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAE7D;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAIrF;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAWpG;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA8CzG;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CA6BD;AAED,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBjF;AAID,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAiChD;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ5C;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBjE;AAED,wBAAsB,YAAY,CAAC,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAgQxF;AAWD,wBAAsB,IAAI,CAAC,OAAO,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAkEnF"}
|