@sensegrep/mcp 0.1.8 → 0.1.10
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/server.js +97 -34
- package/dist/server.js.map +1 -1
- package/package.json +17 -13
package/dist/server.js
CHANGED
|
@@ -2,11 +2,29 @@
|
|
|
2
2
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
3
3
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4
4
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
5
|
+
import path from "node:path";
|
|
6
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
5
7
|
let corePromise = null;
|
|
6
8
|
let toolPromise = null;
|
|
9
|
+
const WATCH_INTERVAL_MS = 60_000;
|
|
10
|
+
let watchHandle = null;
|
|
11
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
7
12
|
async function loadCore() {
|
|
8
13
|
if (!corePromise) {
|
|
9
|
-
corePromise = import("@sensegrep/core")
|
|
14
|
+
corePromise = import("@sensegrep/core").catch(async (error) => {
|
|
15
|
+
const fallbackUrl = pathToFileURL(path.join(__dirname, "..", "..", "core", "dist", "index.js")).href;
|
|
16
|
+
try {
|
|
17
|
+
return await import(fallbackUrl);
|
|
18
|
+
}
|
|
19
|
+
catch (fallbackError) {
|
|
20
|
+
const message = fallbackError instanceof Error
|
|
21
|
+
? fallbackError.message
|
|
22
|
+
: String(fallbackError);
|
|
23
|
+
const err = new Error(`Failed to load @sensegrep/core. Fallback also failed: ${message}`);
|
|
24
|
+
err.cause = error;
|
|
25
|
+
throw err;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
10
28
|
}
|
|
11
29
|
return corePromise;
|
|
12
30
|
}
|
|
@@ -20,10 +38,59 @@ async function loadTool() {
|
|
|
20
38
|
function isIncremental(result) {
|
|
21
39
|
return result.mode === "incremental";
|
|
22
40
|
}
|
|
41
|
+
function formatIndexResult(result) {
|
|
42
|
+
const duration = ((result.duration ?? 0) / 1000).toFixed(1);
|
|
43
|
+
if (isIncremental(result)) {
|
|
44
|
+
return `Indexed ${result.files ?? 0} files (${result.chunks ?? 0} chunks), skipped ${result.skipped ?? 0}, removed ${result.removed ?? 0} in ${duration}s`;
|
|
45
|
+
}
|
|
46
|
+
return `Indexed ${result.files ?? 0} files (${result.chunks ?? 0} chunks) in ${duration}s`;
|
|
47
|
+
}
|
|
48
|
+
function watchEnabled() {
|
|
49
|
+
const raw = process.env.SENSEGREP_WATCH;
|
|
50
|
+
if (!raw)
|
|
51
|
+
return true;
|
|
52
|
+
return !["0", "false", "off", "no"].includes(raw.toLowerCase());
|
|
53
|
+
}
|
|
54
|
+
async function startWatch() {
|
|
55
|
+
if (!watchEnabled())
|
|
56
|
+
return;
|
|
57
|
+
if (watchHandle)
|
|
58
|
+
return;
|
|
59
|
+
const { IndexWatcher } = await loadCore();
|
|
60
|
+
// Use SENSEGREP_ROOT if set, otherwise let watcher auto-detect from most recent index
|
|
61
|
+
const rootDir = process.env.SENSEGREP_ROOT;
|
|
62
|
+
try {
|
|
63
|
+
watchHandle = await IndexWatcher.start({
|
|
64
|
+
rootDir: rootDir, // Will auto-detect if undefined
|
|
65
|
+
intervalMs: WATCH_INTERVAL_MS,
|
|
66
|
+
onIndex: (result) => {
|
|
67
|
+
const message = formatIndexResult(result);
|
|
68
|
+
if (message)
|
|
69
|
+
console.error(`[sensegrep] ${message}`);
|
|
70
|
+
},
|
|
71
|
+
onError: (error) => {
|
|
72
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
73
|
+
console.error(`[sensegrep] watch error: ${message}`);
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
console.error(`[sensegrep] watching (reindex at most once per minute)`);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
80
|
+
console.error(`[sensegrep] failed to start watcher: ${message}`);
|
|
81
|
+
// Don't throw - allow MCP to continue without watcher
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
async function stopWatch() {
|
|
85
|
+
if (watchHandle) {
|
|
86
|
+
await watchHandle.stop();
|
|
87
|
+
watchHandle = null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
23
90
|
const tools = [
|
|
24
91
|
{
|
|
25
92
|
name: "sensegrep.search",
|
|
26
|
-
description: "Semantic + structural code search with optional regex filters.",
|
|
93
|
+
description: "Semantic + structural code search with optional regex filters. Automatically uses the embedding model from the index.",
|
|
27
94
|
inputSchema: {
|
|
28
95
|
type: "object",
|
|
29
96
|
properties: {
|
|
@@ -31,6 +98,8 @@ const tools = [
|
|
|
31
98
|
pattern: { type: "string", description: "Regex pattern filter" },
|
|
32
99
|
limit: { type: "number", description: "Max results (default: 20)" },
|
|
33
100
|
include: { type: "string", description: "File glob filter (e.g., 'src/**/*.ts')" },
|
|
101
|
+
symbol: { type: "string", description: "Filter by symbol name" },
|
|
102
|
+
name: { type: "string", description: "Alias for symbol name" },
|
|
34
103
|
symbolType: {
|
|
35
104
|
type: "string",
|
|
36
105
|
enum: ["function", "class", "method", "interface", "type", "variable", "namespace", "enum"],
|
|
@@ -39,6 +108,9 @@ const tools = [
|
|
|
39
108
|
isExported: { type: "boolean", description: "Only exported symbols" },
|
|
40
109
|
minComplexity: { type: "number", description: "Minimum cyclomatic complexity" },
|
|
41
110
|
maxComplexity: { type: "number", description: "Maximum cyclomatic complexity" },
|
|
111
|
+
minScore: { type: "number", description: "Minimum relevance score 0-1" },
|
|
112
|
+
maxPerFile: { type: "number", description: "Max results per file (default: 1)" },
|
|
113
|
+
maxPerSymbol: { type: "number", description: "Max results per symbol (default: 1)" },
|
|
42
114
|
hasDocumentation: { type: "boolean", description: "Require documentation" },
|
|
43
115
|
language: {
|
|
44
116
|
type: "string",
|
|
@@ -46,12 +118,8 @@ const tools = [
|
|
|
46
118
|
description: "Filter by language",
|
|
47
119
|
},
|
|
48
120
|
parentScope: { type: "string", description: "Parent scope/class name" },
|
|
121
|
+
imports: { type: "string", description: "Filter by imported module name (e.g., 'react')" },
|
|
49
122
|
rerank: { type: "boolean", description: "Enable cross-encoder reranking" },
|
|
50
|
-
embedModel: { type: "string", description: "Override embedding model" },
|
|
51
|
-
embedDim: { type: "number", description: "Override embedding dimension" },
|
|
52
|
-
rerankModel: { type: "string", description: "Override reranker model" },
|
|
53
|
-
device: { type: "string", description: "cpu|cuda|webgpu|wasm" },
|
|
54
|
-
provider: { type: "string", description: "local|gemini" },
|
|
55
123
|
rootDir: { type: "string", description: "Root directory (default: cwd)" },
|
|
56
124
|
},
|
|
57
125
|
required: ["query"],
|
|
@@ -64,12 +132,11 @@ const tools = [
|
|
|
64
132
|
type: "object",
|
|
65
133
|
properties: {
|
|
66
134
|
rootDir: { type: "string", description: "Root directory to index" },
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
provider: { type: "string", description: "local|gemini" },
|
|
135
|
+
mode: {
|
|
136
|
+
type: "string",
|
|
137
|
+
enum: ["incremental", "full"],
|
|
138
|
+
description: "Index mode (default: incremental)",
|
|
139
|
+
},
|
|
73
140
|
},
|
|
74
141
|
},
|
|
75
142
|
},
|
|
@@ -98,23 +165,13 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
|
98
165
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
99
166
|
const { name, arguments: args } = request.params;
|
|
100
167
|
const rootDir = args.rootDir || process.env.SENSEGREP_ROOT || process.cwd();
|
|
101
|
-
const provider = args.provider === "local" || args.provider === "gemini" ? args.provider : undefined;
|
|
102
|
-
const embedOverrides = {
|
|
103
|
-
...(args.embedModel ? { embedModel: String(args.embedModel) } : {}),
|
|
104
|
-
...(args.embedDim ? { embedDim: Number(args.embedDim) } : {}),
|
|
105
|
-
...(args.rerankModel ? { rerankModel: String(args.rerankModel) } : {}),
|
|
106
|
-
...(args.device ? { device: String(args.device) } : {}),
|
|
107
|
-
...(provider ? { provider } : {}),
|
|
108
|
-
};
|
|
109
168
|
try {
|
|
110
169
|
if (name === "sensegrep.search") {
|
|
111
170
|
const { core, tool } = await loadTool();
|
|
112
171
|
const { rootDir: _root, ...toolArgs } = args;
|
|
113
|
-
const { Instance
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
: (fn) => fn();
|
|
117
|
-
const res = await withOverrides(() => Instance.provide({
|
|
172
|
+
const { Instance } = core;
|
|
173
|
+
// Search tool now reads embeddings config from index automatically
|
|
174
|
+
const res = await Instance.provide({
|
|
118
175
|
directory: rootDir,
|
|
119
176
|
fn: () => tool.execute(toolArgs, {
|
|
120
177
|
sessionID: "mcp",
|
|
@@ -123,22 +180,20 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
123
180
|
abort: new AbortController().signal,
|
|
124
181
|
metadata(_input) { },
|
|
125
182
|
}),
|
|
126
|
-
})
|
|
183
|
+
});
|
|
127
184
|
return {
|
|
128
185
|
content: [{ type: "text", text: res.output }],
|
|
129
186
|
};
|
|
130
187
|
}
|
|
131
188
|
if (name === "sensegrep.index") {
|
|
132
|
-
const full = args.full === true;
|
|
133
189
|
const { core } = await loadTool();
|
|
134
|
-
const { Indexer, Instance
|
|
135
|
-
const
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
const result = (await withOverrides(() => Instance.provide({
|
|
190
|
+
const { Indexer, Instance } = core;
|
|
191
|
+
const mode = String(args.mode ?? "incremental").toLowerCase();
|
|
192
|
+
const full = mode === "full";
|
|
193
|
+
const result = (await Instance.provide({
|
|
139
194
|
directory: rootDir,
|
|
140
195
|
fn: () => (full ? Indexer.indexProject() : Indexer.indexProjectIncremental()),
|
|
141
|
-
}))
|
|
196
|
+
}));
|
|
142
197
|
const files = result.files ?? 0;
|
|
143
198
|
const chunks = result.chunks ?? 0;
|
|
144
199
|
const skipped = result.skipped ?? 0;
|
|
@@ -175,6 +230,14 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
175
230
|
async function main() {
|
|
176
231
|
const transport = new StdioServerTransport();
|
|
177
232
|
await server.connect(transport);
|
|
233
|
+
void startWatch();
|
|
234
|
+
// Setup cleanup handlers
|
|
235
|
+
const cleanup = async () => {
|
|
236
|
+
await stopWatch();
|
|
237
|
+
process.exit(0);
|
|
238
|
+
};
|
|
239
|
+
process.on("SIGINT", cleanup);
|
|
240
|
+
process.on("SIGTERM", cleanup);
|
|
178
241
|
}
|
|
179
242
|
main().catch((error) => {
|
|
180
243
|
console.error("Server error:", error);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAEvB,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,26 +1,30 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sensegrep/mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"main": "./dist/server.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"sensegrep-mcp": "
|
|
8
|
-
},
|
|
5
|
+
"main": "./dist/server.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"sensegrep-mcp": "dist/server.js"
|
|
8
|
+
},
|
|
9
9
|
"types": "./dist/server.d.ts",
|
|
10
10
|
"files": [
|
|
11
11
|
"dist"
|
|
12
12
|
],
|
|
13
|
-
"scripts": {
|
|
14
|
-
"build": "tsc -p tsconfig.json"
|
|
15
|
-
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "tsc -p tsconfig.json",
|
|
15
|
+
"prepublishOnly": "node ../../build.js"
|
|
16
|
+
},
|
|
16
17
|
"engines": {
|
|
17
18
|
"node": ">=18"
|
|
18
19
|
},
|
|
19
|
-
"dependencies": {
|
|
20
|
-
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
21
|
-
"@sensegrep/core": "^0.1.
|
|
22
|
-
"zod": "^4.2.1"
|
|
23
|
-
},
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
22
|
+
"@sensegrep/core": "^0.1.10",
|
|
23
|
+
"zod": "^4.2.1"
|
|
24
|
+
},
|
|
25
|
+
"publishConfig": {
|
|
26
|
+
"access": "public"
|
|
27
|
+
},
|
|
24
28
|
"license": "Apache-2.0",
|
|
25
29
|
"repository": {
|
|
26
30
|
"type": "git",
|