An MCP server that lets an LLM search kubesearch.dev
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http counts 11 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
kubesearch_get_release
-
kubesearch_grep_values
-
kubesearch_search_images
-
kubesearch_search_releases
-
kubesearch_status
-
repo_cleanup
-
repo_clone
-
repo_grep
-
repo_grep_all
-
repo_list_files
-
repo_read_file
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 13d9163 · analyzer v33 · 3d ago
danger signals1
- suspicious endpoint 169.254.169.254 (cloud metadata) perfectra1n-kubesearch-mcp-13d9163/test/urlGuard.test.ts :39
"https://169.254.169.254/latest",
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 65
filesystem 13
- fs perfectra1n-kubesearch-mcp-13d9163/src/data/db.ts :1
import fs from "node:fs"; - fs perfectra1n-kubesearch-mcp-13d9163/src/repo/clone.ts :1
import fs from "node:fs"; - fs perfectra1n-kubesearch-mcp-13d9163/src/repo/fsSafe.ts :1
import fs from "node:fs"; - fs perfectra1n-kubesearch-mcp-13d9163/src/repo/pool.ts :1
import fsp from "node:fs/promises"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/dataStore.test.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/fakeGit.ts :1
import fsp from "node:fs/promises"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/fixtures.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoFs.test.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoGrep.test.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoGrepAll.test.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoPool.test.ts :1
import fs from "node:fs"; - fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoStore.test.ts :1
import fs from "node:fs";
show 1 more
- fs (weak) perfectra1n-kubesearch-mcp-13d9163/test/toolsGrepAll.test.ts :1
import fs from "node:fs";
shell / exec 1
- shell perfectra1n-kubesearch-mcp-13d9163/src/repo/clone.ts :4
import { execFile } from "node:child_process";
network 4
- net perfectra1n-kubesearch-mcp-13d9163/src/data/releases.ts :66
const res = await fetch(url, { - net perfectra1n-kubesearch-mcp-13d9163/src/http.ts :1
import http from "node:http"; - net perfectra1n-kubesearch-mcp-13d9163/src/repo/urlGuard.ts :1
import net from "node:net"; - net (weak) perfectra1n-kubesearch-mcp-13d9163/test/http.test.ts :1
import type { AddressInfo } from "node:net";
database 13
- db perfectra1n-kubesearch-mcp-13d9163/src/data/db.ts :2
import Database from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/data/optimize.ts :1
import Database from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/data/stmtCache.ts :1
import type { Database, Statement } from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/domain/grep.ts :1
import type { Database } from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/domain/helmReleases.ts :2
import type { Database } from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/domain/images.ts :2
import type { Database } from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/domain/poolSelection.ts :1
import type { Database } from "better-sqlite3"; - db perfectra1n-kubesearch-mcp-13d9163/src/repo/pool.ts :3
import type { Database } from "better-sqlite3"; - db (weak) perfectra1n-kubesearch-mcp-13d9163/test/dataStore.test.ts :3
import Database from "better-sqlite3"; - db (weak) perfectra1n-kubesearch-mcp-13d9163/test/fixtures.ts :4
import Database from "better-sqlite3"; - db (weak) perfectra1n-kubesearch-mcp-13d9163/test/integration.test.ts :2
import type Database from "better-sqlite3"; - db (weak) perfectra1n-kubesearch-mcp-13d9163/test/poolSelection.test.ts :2
import type Database from "better-sqlite3";
show 1 more
- db (weak) perfectra1n-kubesearch-mcp-13d9163/test/repoPool.test.ts :4
import type Database from "better-sqlite3";
tool registrations 11
- repo_cleanup perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/cleanup.ts :7
- repo_clone perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/clone.ts :7
- repo_grep perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/grep.ts :7
- repo_grep_all perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/grepAll.ts :8
- repo_list_files perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/listFiles.ts :7
- repo_read_file perfectra1n-kubesearch-mcp-13d9163/src/tools/repo/readFile.ts :7
- kubesearch_get_release perfectra1n-kubesearch-mcp-13d9163/src/tools/search/getRelease.ts :83
- kubesearch_grep_values perfectra1n-kubesearch-mcp-13d9163/src/tools/search/grepValues.ts :9
- kubesearch_search_images perfectra1n-kubesearch-mcp-13d9163/src/tools/search/searchImages.ts :9
- kubesearch_search_releases perfectra1n-kubesearch-mcp-13d9163/src/tools/search/searchReleases.ts :9
- kubesearch_status perfectra1n-kubesearch-mcp-13d9163/src/tools/search/status.ts :7
install hooks 1
- prepublishOnly perfectra1n-kubesearch-mcp-13d9163/package.json :23
npm run build
declared dependencies 10
- @modelcontextprotocol/sdk@^1.29.0
- better-sqlite3@^12.10.0
- zod@^4.4.3
- @types/better-sqlite3@^7.6.13
- @types/node@^25.9.2
- prettier@3.9.6
- tsup@^8.5.1
- tsx@^4.22.4
- typescript@^6.0.3
- vitest@^4.1.8
perm:untrusted 1
- untrusted (weak) perfectra1n-kubesearch-mcp-13d9163/test/http.test.ts :80
const body = (await (await fetch(`${s.base}/readyz`)).json()) as { tag: string };