github TypeScript analyzed ff5b5cd

Soul-Brews-Studio/digger-node

github

A Drupal-shaped content store — title, body, datetime, taxonomy — that models write to over MCP. One Cloudflare Worker, one D1, one click. OAuth for claude.ai.

maintainer
Soul-Brews-Studio
licence
MIT
first seen
2026-09-04
last seen
2026-09-05
releases · 30d
3
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 19 tools
transport counts 19 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • call_log
  • call_stats
  • node_create
  • node_delete
  • node_embed
  • node_get
  • node_list
  • node_search
  • node_tag
  • node_types
  • node_untag
  • node_update
  • status
  • term_create
  • term_list
  • term_weight
  • vocabulary_create
  • vocabulary_delete
  • vocabulary_list
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit ff5b5cd · analyzer v33 · 1d ago

danger signals1

code evidence vv26.9.4 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 22

filesystem 3

  • fs Soul-Brews-Studio-digger-node-ff5b5cd/src/server.ts :28 import { readdirSync, readFileSync } from "node:fs";
  • fs (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/app.test.ts :12 import { readdirSync, readFileSync } from "node:fs";
  • fs (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/auth.test.ts :17 import { readdirSync, readFileSync } from "node:fs";

shell / exec 1

  • shell Soul-Brews-Studio-digger-node-ff5b5cd/src/store/sqlite.ts :85 Database: new (path: string) => SqliteLike & { exec(sql: string): void };

network 4

  • net Soul-Brews-Studio-digger-node-ff5b5cd/src/index.ts :55 async fetch(request: Request, env: Env): Promise<Response> {
  • net Soul-Brews-Studio-digger-node-ff5b5cd/src/server.ts :91 fetch(request, server) {
  • net (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/app.test.ts :38 const response = await app.fetch(
  • net (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/auth.test.ts :53 const response = await app.fetch(

secrets 1

  • secrets Soul-Brews-Studio-digger-node-ff5b5cd/src/server.ts :71 apiToken: process.env.API_TOKEN,

tool registrations 19

  • node_create Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :53
  • node_get Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :75
  • node_update Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :80
  • node_delete Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :96
  • node_list Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :101
  • node_types Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :132
  • vocabulary_delete Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :138
  • node_search Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :151
  • node_embed Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :165
  • node_tag Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :174
  • node_untag Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :187
  • vocabulary_create Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :196
show 7 more
  • vocabulary_list Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :211
  • term_create Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :216
  • term_weight Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :237
  • term_list Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :246
  • call_log Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :251
  • call_stats Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :264
  • status Soul-Brews-Studio-digger-node-ff5b5cd/src/mcp.ts :269

declared dependencies 5

  • elysia@^1.4.29
  • @cloudflare/workers-types@^4.20250109.0
  • @types/bun@^1.4.0
  • typescript@^5.9.0
  • wrangler@^4.128.0

perm:untrusted 2

  • untrusted (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/app.test.ts :67 const body = (await (await app.fetch(new Request("http://localhost/health"))).json()) as any;
  • untrusted (weak) Soul-Brews-Studio-digger-node-ff5b5cd/test/auth.test.ts :104 const health = (await (await app.fetch(new Request("http://localhost/health"))).json()) as any;