substreams-search-mcp 1.1.1 → 1.2.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.
package/README.md CHANGED
@@ -6,9 +6,13 @@
6
6
  <img width="380" height="200" src="https://glama.ai/mcp/servers/@PaulieB14/substreams-search-mcp-server/badge" />
7
7
  </a>
8
8
 
9
- MCP server that lets AI agents search the [substreams.dev](https://substreams.dev) package registry.
9
+ MCP server that lets AI agents search, inspect, and analyze [Substreams](https://substreams.dev) packages — from registry discovery to sink deployment.
10
10
 
11
- ## Tool: `search_substreams`
11
+ ## Tools
12
+
13
+ ### `search_substreams`
14
+
15
+ Search the substreams.dev package registry.
12
16
 
13
17
  | Parameter | Type | Default | Description |
14
18
  |-----------|------|---------|-------------|
@@ -16,7 +20,58 @@ MCP server that lets AI agents search the [substreams.dev](https://substreams.de
16
20
  | `sort` | string | `"most_downloaded"` | `most_downloaded`, `alphabetical`, `most_used`, `last_uploaded` |
17
21
  | `network` | string | — | Filter by chain: `ethereum`, `solana`, `arbitrum-one`, etc. |
18
22
 
19
- Returns JSON with package name, URL, creator, network, version, published date, and download count.
23
+ Returns package name, URL, creator, network, version, published date, and download count.
24
+
25
+ ### `inspect_package`
26
+
27
+ Inspect a Substreams package (.spkg) to see its full module graph, protobuf types, and metadata.
28
+
29
+ | Parameter | Type | Description |
30
+ |-----------|------|-------------|
31
+ | `url` | string (required) | Direct URL to a `.spkg` file |
32
+
33
+ Returns:
34
+ - Package metadata (name, version, documentation, network)
35
+ - All modules with their kind (map/store/blockIndex), output types, and update policies
36
+ - Full DAG: each module's `dependsOn` and `dependedBy` relationships
37
+ - Input chain for each module (source blocks, other maps, stores with get/deltas mode, params)
38
+ - List of all protobuf output types and proto files
39
+ - Mermaid diagram of the module graph
40
+
41
+ ### `list_package_modules`
42
+
43
+ Lightweight alternative to `inspect_package` — just the module names, types, and inputs/outputs.
44
+
45
+ | Parameter | Type | Description |
46
+ |-----------|------|-------------|
47
+ | `url` | string (required) | Direct URL to a `.spkg` file |
48
+
49
+ ### `get_sink_config`
50
+
51
+ Analyze a package's sink configuration and generate ready-to-run CLI commands.
52
+
53
+ | Parameter | Type | Description |
54
+ |-----------|------|-------------|
55
+ | `url` | string (required) | Direct URL to a `.spkg` file |
56
+
57
+ Returns one of three results:
58
+
59
+ - **`sink_configured`** — Package has an embedded sink config. Extracts the SQL schema (for SQL sinks), identifies the sink module and type, and generates `install`, `setup`, and `run` commands with the correct network endpoint.
60
+ - **`no_sink_config_but_compatible_modules_found`** — No embedded config, but modules output sink-compatible types (e.g. `DatabaseChanges`). Identifies them and suggests how to wire up sinking.
61
+ - **`no_sink_support`** — No sink-compatible modules. Lists all module output types so you know what custom consumer you'd need.
62
+
63
+ ## Workflow
64
+
65
+ ```
66
+ search_substreams("uniswap", network: "polygon")
67
+ → find package, get spkg.io URL
68
+
69
+ inspect_package("https://spkg.io/creator/package-v1.0.0.spkg")
70
+ → see module DAG, output types, what it produces
71
+
72
+ get_sink_config("https://spkg.io/creator/package-v1.0.0.spkg")
73
+ → get SQL schema + CLI commands to deploy
74
+ ```
20
75
 
21
76
  ## Quick Start (npx)
22
77
 
@@ -67,19 +122,8 @@ Add to `~/.claude/mcp.json`:
67
122
  }
68
123
  ```
69
124
 
70
- ## Next Step: Sink Data to PostgreSQL
71
-
72
- Found a package with `search_substreams`? Stream it into PostgreSQL with [create-substreams-sink-sql](https://www.npmjs.com/package/create-substreams-sink-sql):
73
-
74
- ```bash
75
- npm init substreams-sink-sql my-sink
76
- cd my-sink
77
- # Edit substreams.yaml with your .spkg URL, then:
78
- make up && make setup && make dev
79
- ```
80
-
81
- Scaffolds a complete project with Docker Postgres, pgweb UI, Makefile automation, and a step-by-step tutorial. No custom code needed.
82
-
83
125
  ## How it works
84
126
 
85
- The substreams.dev registry has no public API. This server scrapes the package listing pages, paginates through all results, deduplicates, and returns structured JSON. Multi-word queries search for the first word server-side and filter the rest client-side.
127
+ - **Search**: The substreams.dev registry has no public API. This server scrapes the package listing pages, paginates through all results, deduplicates, and returns structured JSON. Multi-word queries search for the first word server-side and filter the rest client-side.
128
+ - **Inspect**: Uses [`@substreams/core`](https://github.com/substreams-js/substreams-js) to fetch and parse `.spkg` files (protobuf-encoded Substreams packages), extracting module definitions, DAG relationships, and proto type information.
129
+ - **Sink config**: Reads the embedded `sinkConfig` (a `google.protobuf.Any` field) from the package, decodes it based on the type URL, and maps networks to Substreams endpoints for correct CLI commands.
package/build/index.js CHANGED
@@ -293,6 +293,161 @@ server.registerTool("list_package_modules", {
293
293
  }
294
294
  });
295
295
  // ---------------------------------------------------------------------------
296
+ // Sink type mappings
297
+ // ---------------------------------------------------------------------------
298
+ const SINK_TYPE_MAP = {
299
+ "sf.substreams.sink.sql.v1.Service": {
300
+ label: "SQL (PostgreSQL/ClickHouse)",
301
+ sinkBinary: "substreams-sink-sql",
302
+ dsnExample: "psql://user:password@localhost:5432/dbname?sslmode=disable",
303
+ },
304
+ "sf.substreams.sink.entity.v1.Service": {
305
+ label: "Subgraph Entities",
306
+ sinkBinary: "substreams-sink-entity-changes",
307
+ dsnExample: "",
308
+ },
309
+ "sf.substreams.sink.kv.v1.Service": {
310
+ label: "Key-Value Store",
311
+ sinkBinary: "substreams-sink-kv",
312
+ dsnExample: "badger3:///tmp/kv-store",
313
+ },
314
+ };
315
+ const OUTPUT_TYPE_TO_SINK = {
316
+ "proto:sf.substreams.sink.database.v1.DatabaseChanges": "sql",
317
+ "proto:sf.substreams.database.v1.DatabaseChanges": "sql",
318
+ "proto:sf.substreams.sink.entity.v1.EntityChanges": "subgraph",
319
+ "proto:sf.substreams.entity.v1.EntityChanges": "subgraph",
320
+ "proto:sf.substreams.sink.kv.v1.KVOperations": "kv",
321
+ };
322
+ // Network to endpoint mapping
323
+ const NETWORK_ENDPOINTS = {
324
+ mainnet: "mainnet.eth.streamingfast.io:443",
325
+ ethereum: "mainnet.eth.streamingfast.io:443",
326
+ polygon: "polygon.substreams.pinax.network:443",
327
+ "arbitrum-one": "arbone.substreams.pinax.network:443",
328
+ arbitrum: "arbone.substreams.pinax.network:443",
329
+ base: "base.substreams.pinax.network:443",
330
+ bsc: "bsc.substreams.pinax.network:443",
331
+ optimism: "optimism.substreams.pinax.network:443",
332
+ solana: "solana.substreams.pinax.network:443",
333
+ };
334
+ // ---------------------------------------------------------------------------
335
+ // Tool: get_sink_config
336
+ // ---------------------------------------------------------------------------
337
+ server.registerTool("get_sink_config", {
338
+ description: "Analyze a Substreams package's sink configuration. If the package has an embedded sink config (SQL schema, etc.), " +
339
+ "it extracts and displays it with ready-to-run CLI commands. If no sink is configured but sink-compatible modules exist, " +
340
+ "it identifies them and suggests how to set up sinking. Returns setup commands, schema, and endpoint info.",
341
+ inputSchema: {
342
+ url: z.string().describe("Direct URL to a .spkg file"),
343
+ },
344
+ annotations: { readOnlyHint: true },
345
+ }, async ({ url }) => {
346
+ try {
347
+ const pkg = await fetchSpkg(url);
348
+ const modules = pkg.modules?.modules ?? [];
349
+ const meta = pkg.packageMeta[0];
350
+ const packageName = meta?.name ?? "unknown";
351
+ const packageVersion = meta?.version ?? "unknown";
352
+ const network = pkg.network || "unknown";
353
+ const endpoint = NETWORK_ENDPOINTS[network] ?? `${network}.substreams.pinax.network:443`;
354
+ // Case 1: Package has an embedded sink config
355
+ if (pkg.sinkModule && pkg.sinkConfig) {
356
+ const sinkTypeUrl = pkg.sinkConfig.typeUrl;
357
+ const sinkInfo = SINK_TYPE_MAP[sinkTypeUrl];
358
+ let embeddedSchema;
359
+ if (sinkTypeUrl.includes("sql")) {
360
+ // SQL sink configs embed the schema as UTF-8
361
+ const raw = new TextDecoder().decode(pkg.sinkConfig.value);
362
+ // Strip leading non-printable bytes (protobuf framing)
363
+ const schemaStart = raw.indexOf("--");
364
+ const createStart = raw.indexOf("CREATE");
365
+ const start = schemaStart >= 0 ? schemaStart : createStart >= 0 ? createStart : -1;
366
+ if (start >= 0) {
367
+ embeddedSchema = raw.substring(start);
368
+ }
369
+ }
370
+ const sinkModule = modules.find((m) => m.name === pkg.sinkModule);
371
+ const sinkOutputType = sinkModule ? getModuleOutputType(sinkModule) : undefined;
372
+ const commands = {
373
+ install: sinkInfo
374
+ ? `brew install streamingfast/tap/${sinkInfo.sinkBinary}`
375
+ : `# Install the sink binary for ${sinkTypeUrl}`,
376
+ setup: sinkInfo
377
+ ? `${sinkInfo.sinkBinary} setup "${sinkInfo.dsnExample}" ${url}`
378
+ : `# Setup sink for ${sinkTypeUrl}`,
379
+ run: sinkInfo
380
+ ? `${sinkInfo.sinkBinary} run "${sinkInfo.dsnExample}" ${url} -e ${endpoint}`
381
+ : `# Run sink for ${sinkTypeUrl}`,
382
+ };
383
+ return textResult({
384
+ status: "sink_configured",
385
+ package: { name: packageName, version: packageVersion },
386
+ network,
387
+ endpoint,
388
+ sink: {
389
+ module: pkg.sinkModule,
390
+ outputType: sinkOutputType,
391
+ type: sinkTypeUrl,
392
+ label: sinkInfo?.label ?? sinkTypeUrl,
393
+ },
394
+ ...(embeddedSchema && { embeddedSchema }),
395
+ commands,
396
+ });
397
+ }
398
+ // Case 2: No sink config, but find sink-compatible modules
399
+ const sinkCompatible = modules
400
+ .filter((mod) => {
401
+ const out = getModuleOutputType(mod);
402
+ return out && OUTPUT_TYPE_TO_SINK[out];
403
+ })
404
+ .map((mod) => {
405
+ const outputType = getModuleOutputType(mod);
406
+ const sinkType = OUTPUT_TYPE_TO_SINK[outputType];
407
+ return { module: mod.name, outputType, sinkType };
408
+ });
409
+ if (sinkCompatible.length > 0) {
410
+ const primary = sinkCompatible[0];
411
+ const sinkTypeUrl = primary.sinkType === "sql"
412
+ ? "sf.substreams.sink.sql.v1.Service"
413
+ : primary.sinkType === "subgraph"
414
+ ? "sf.substreams.sink.entity.v1.Service"
415
+ : "sf.substreams.sink.kv.v1.Service";
416
+ const sinkInfo = SINK_TYPE_MAP[sinkTypeUrl];
417
+ return textResult({
418
+ status: "no_sink_config_but_compatible_modules_found",
419
+ package: { name: packageName, version: packageVersion },
420
+ network,
421
+ endpoint,
422
+ compatibleModules: sinkCompatible,
423
+ suggestion: `This package has ${sinkCompatible.length} module(s) that output sink-compatible types but no embedded sink config. ` +
424
+ `You can still sink "${primary.module}" to ${sinkInfo?.label ?? primary.sinkType} by providing your own SQL schema.`,
425
+ commands: sinkInfo
426
+ ? {
427
+ install: `brew install streamingfast/tap/${sinkInfo.sinkBinary}`,
428
+ run: `${sinkInfo.sinkBinary} run "${sinkInfo.dsnExample}" ${url} -e ${endpoint} --output-module ${primary.module}`,
429
+ }
430
+ : undefined,
431
+ });
432
+ }
433
+ // Case 3: No sink-compatible modules at all
434
+ return textResult({
435
+ status: "no_sink_support",
436
+ package: { name: packageName, version: packageVersion },
437
+ network,
438
+ message: "This package has no sink-compatible modules. Its modules output custom protobuf types " +
439
+ "that would need a custom consumer (not a standard SQL/subgraph/KV sink).",
440
+ modules: modules.map((m) => ({
441
+ name: m.name,
442
+ outputType: getModuleOutputType(m),
443
+ })),
444
+ });
445
+ }
446
+ catch (error) {
447
+ return errorResult(error);
448
+ }
449
+ });
450
+ // ---------------------------------------------------------------------------
296
451
  // Start server
297
452
  // ---------------------------------------------------------------------------
298
453
  async function main() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "substreams-search-mcp",
3
- "version": "1.1.1",
3
+ "version": "1.2.1",
4
4
  "description": "MCP server to search and inspect Substreams packages — browse the registry and introspect .spkg module graphs, protobuf types, and DAG dependencies",
5
5
  "type": "module",
6
6
  "bin": {
@@ -17,11 +17,33 @@
17
17
  ],
18
18
  "keywords": [
19
19
  "mcp",
20
+ "mcp-server",
21
+ "model-context-protocol",
20
22
  "substreams",
23
+ "substreams-dev",
24
+ "spkg",
21
25
  "blockchain",
26
+ "blockchain-data",
27
+ "streaming",
28
+ "indexer",
29
+ "the-graph",
30
+ "streamingfast",
31
+ "ethereum",
32
+ "solana",
33
+ "polygon",
34
+ "arbitrum",
35
+ "base",
36
+ "defi",
37
+ "web3",
22
38
  "ai",
23
39
  "claude",
24
- "the-graph"
40
+ "cursor",
41
+ "ai-agent",
42
+ "protobuf",
43
+ "module-graph",
44
+ "sink",
45
+ "sql-sink",
46
+ "data-pipeline"
25
47
  ],
26
48
  "author": "PaulieB14",
27
49
  "license": "MIT",