Search the HeyClaude directory of Claude Code agents, MCP servers, skills, and tools.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http
verified
reported
listed in the official MCP registry counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 372672b · analyzer v33 · 4w ago
skills & prompt files 4
danger signals4
- suspicious endpoint discord.com JSONbored-awesome-claude-372672b/tests/notifications-truncate.test.ts :106
webhookUrl: "https://discord.com/api/webhooks/123/token", - suspicious endpoint discord.com JSONbored-awesome-claude-372672b/tests/submission-gate-worker.test.ts :1941
webhookUrl: "https://discord.com/api/webhooks/123/token", - committed secret OpenAI key JSONbored-awesome-claude-372672b/tests/mcp-config-validator.test.ts :42
sk-liv…(27 chars, redacted) - committed secret Anthropic key JSONbored-awesome-claude-372672b/tests/submission-risk-invariants.test.ts :929
sk-ant…(45 chars, redacted)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 1964
filesystem 113
- fs (weak) JSONbored-awesome-claude-372672b/apps/web/scripts/build-og-fonts.mjs :7
import { readFileSync, writeFileSync } from "node:fs"; - fs JSONbored-awesome-claude-372672b/apps/web/src/lib/content.server.ts :2
import { readFile } from "node:fs/promises"; - fs JSONbored-awesome-claude-372672b/apps/web/src/lib/download-assets.server.ts :1
import { readFile } from "node:fs/promises"; - fs JSONbored-awesome-claude-372672b/integrations/raycast/src/mcp-installer.ts :9
} from "node:fs/promises"; - fs (weak) JSONbored-awesome-claude-372672b/integrations/raycast/test/feed.test.ts :3
import fs from "node:fs"; - fs JSONbored-awesome-claude-372672b/packages/mcp/src/registry-artifact-loader-lib.js :1
import { readFile } from "node:fs/promises"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/analyze-submission-risk.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/audit-comparison-candidates.ts :12
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/audit-content.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/audit-coverage-gaps.mjs :12
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/audit-seo-snippets.mjs :17
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/build-content-index.mjs :1
import fs from "node:fs";
show 28 more
- fs (weak) JSONbored-awesome-claude-372672b/scripts/build-readme-refresh-body.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/check-d1-job-sources.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/check-mcp-release-due.mjs :3
import { readFileSync, writeFileSync } from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/check-raycast-release-due.mjs :3
import { readFileSync, writeFileSync } from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/check-submission-gate-prod-config.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/ci/classify-pr-changes.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/ci/fail-critical-risk-report.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/ci/fail-provenance-report.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/ci/validate-content-policy.mjs :3
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/enrich-brand-assets.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/generate-lib-extraction-tests.mjs :6
import { writeFileSync } from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/generate-openapi.ts :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/generate-readme.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/generate-weekly-brief.mjs :3
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/gittensor-impact-card.mjs :11
import { readFileSync, writeFileSync } from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/growth-dashboard.mjs :15
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/lib/enumerate-content-vote-keys.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/lib/release-watch-core.mjs :1
import { readFileSync } from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/manage-d1-jobs.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/report-thin-content.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/report-trust-coverage.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/resolve-pr-preview-url.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/scan-download-packages.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/submit-indexnow.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/summarize-job-source-check.mjs :2
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/validate-category-spec.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/validate-codebase-clean.mjs :1
import fs from "node:fs"; - fs (weak) JSONbored-awesome-claude-372672b/scripts/validate-content.mjs :1
import fs from "node:fs";
73 more not shown — this panel samples each group; the count above is the real total.
shell / exec 28
- shell JSONbored-awesome-claude-372672b/integrations/raycast/src/mcp-installer.ts :1
import { execFile } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/build-content-index.mjs :4
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/build-readme-refresh-body.mjs :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/check-mcp-release-due.mjs :2
import { execFileSync, spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/check-raycast-release-due.mjs :2
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/ci/classify-pr-changes.mjs :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/ci/validate-content-policy.mjs :2
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/scan-download-packages.mjs :1
import { execFileSync, spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/sync-votes-to-d1.mjs :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/validate-content.mjs :3
import { spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/validate-d1-jobs.mjs :2
import { spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/validate-download-packages.mjs :3
import { execFileSync } from "node:child_process";
show 16 more
- shell (weak) JSONbored-awesome-claude-372672b/scripts/validate-mcp-package.mjs :3
import { execFile as execFileCallback } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/scripts/verify-d1-votes.mjs :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/audit-seo-snippets.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/classify-pr-changes.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/content-policy-validation.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/content-validation.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/d1-vote-sync.test.ts :1
import { spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/generated-churn-policy.test.ts :3
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/helpers/registry-fixtures.ts :3
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/private-reviewer-boundary.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/readme-generation.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/registry-artifacts.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/statusline-scripts.test.ts :1
import { execFileSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/submission-workflows.test.ts :1
import { execFileSync, spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/trust-coverage-script.test.ts :5
import { spawnSync } from "node:child_process"; - shell (weak) JSONbored-awesome-claude-372672b/tests/weekly-brief.test.ts :1
import { spawnSync } from "node:child_process";
network 50
- net JSONbored-awesome-claude-372672b/apps/submission-gate/src/github.ts :213
const response = await fetch(url, { - net JSONbored-awesome-claude-372672b/apps/submission-gate/src/index.ts :2054
const response = await fetch(url.toString(), { - net JSONbored-awesome-claude-372672b/apps/web/plugins/indexnow-scheduled.ts :99
const response = await fetch(INDEXNOW_ENDPOINT, { - net JSONbored-awesome-claude-372672b/apps/web/src/components/entry-signals-panel.tsx :37
const response = await fetch(path, { - net JSONbored-awesome-claude-372672b/apps/web/src/components/feed-health-panel.tsx :43
fetch("/api/public/feeds/health", { headers: { Accept: "application/json" } }) - net JSONbored-awesome-claude-372672b/apps/web/src/components/live-version-badge.tsx :21
const res = await fetch(`/api/public/npm/${pkg}`); - net JSONbored-awesome-claude-372672b/apps/web/src/components/openapi.tsx :186
const result = await fetch(url, { headers: { accept: "*/*" } }); - net JSONbored-awesome-claude-372672b/apps/web/src/components/sponsors-section.tsx :298
const response = await fetch("/api/listing-leads", { - net JSONbored-awesome-claude-372672b/apps/web/src/components/umami-tracker.tsx :96
void fetch(COLLECTOR_URL, { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/api/newsletter.ts :27
const res = await fetch("/api/newsletter/subscribe", { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/content-loader-lib.ts :72
const response = await assets.fetch(new Request(url)); - net JSONbored-awesome-claude-372672b/apps/web/src/lib/download-assets.server.ts :20
const response = await assets.fetch(new Request(new URL(asset, requestUrl)));
show 28 more
- net JSONbored-awesome-claude-372672b/apps/web/src/lib/intent-event-client.ts :35
const response = await fetch(INTENT_EVENTS_API_PATH, { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/listing-lead-client.ts :14
const response = await fetch("/api/listing-leads", { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/mcp-artifact-readers-lib.ts :14
const response = await (assets?.fetch(assetRequest(origin, fileName)) ?? - net JSONbored-awesome-claude-372672b/apps/web/src/lib/newsletter-send.server.ts :20
const response = await fetch(`${RESEND_BASE}/emails`, { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/notify.server.ts :19
const response = await fetch(webhookUrl, { - net JSONbored-awesome-claude-372672b/apps/web/src/lib/watch.tsx :70
const response = await fetch(href, { headers: { accept: "application/json" } }); - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/brand-assets/$kind/$domain.ts :34
const searchResponse = await fetch(searchUrl, { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/github-stats.ts :37
const response = await fetch(`https://api.github.com/repos/${owner}/${repo}`, { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/newsletter/subscribe.ts :41
response = await fetch("https://api.resend.com/contacts", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/newsletter/webhook.ts :76
notificationResponse = await fetch(discordWebhookUrl, { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/public/newsletter/unsubscribe.ts :44
const res = await fetch( - net JSONbored-awesome-claude-372672b/apps/web/src/routes/api/public/npm/$.ts :42
fetch(`https://registry.npmjs.org/${encodeURIComponent(pkg)}/latest`, { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/claim.tsx :194
const response = await fetch("/api/listing-leads", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/jobs.index.tsx :232
const response = await fetch("/api/jobs?limit=100", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/jobs.post.tsx :90
const response = await fetch("/api/listing-leads", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/submit.tsx :149
const response = await fetch("/api/submissions/preflight", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/trending.tsx :153
const response = await fetch("/api/registry/trending?limit=50", { - net JSONbored-awesome-claude-372672b/apps/web/src/routes/u.api.send.ts :91
response = await fetch(joinAnalyticsUpstreamUrl(upstream, "/api/send"), { - net JSONbored-awesome-claude-372672b/apps/web/src/server.ts :54
async fetch(request: Request, env: unknown, ctx: unknown) { - net JSONbored-awesome-claude-372672b/content/mcp/asana-mcp-server.mcpb!/server/index.js :31
const response = await fetch(`${HTTP_ENDPOINT}/tools/list`, { - net JSONbored-awesome-claude-372672b/content/mcp/box-mcp-server.mcpb!/server/index.js :31
const response = await fetch(`${HTTP_ENDPOINT}/tools/list`, { - net JSONbored-awesome-claude-372672b/content/mcp/canva-mcp-server.mcpb!/server/index.js :31
const response = await fetch(`${HTTP_ENDPOINT}/tools/list`, { - net JSONbored-awesome-claude-372672b/content/mcp/cloudinary-mcp-server.mcpb!/server/index.js :31
const response = await fetch(`${HTTP_ENDPOINT}/tools/list`, { - net (weak) JSONbored-awesome-claude-372672b/packages/mcp/scripts/validate-endpoint.mjs :86
const options = await fetch(endpointUrl, { method: "OPTIONS" }); - net JSONbored-awesome-claude-372672b/packages/mcp/src/registry-fetch-lib.js :23
* fetcher via `options.fetchPublicApi`; production uses `fetch()` with a - net JSONbored-awesome-claude-372672b/packages/mcp/src/remote-proxy-lib.js :56
return await fetch(url, { - net (weak) JSONbored-awesome-claude-372672b/scripts/build-content-index.mjs :102
const response = await fetch( - net (weak) JSONbored-awesome-claude-372672b/scripts/build-readme-refresh-body.mjs :187
const response = await fetch(
10 more not shown — this panel samples each group; the count above is the real total.
secrets 10
- secrets JSONbored-awesome-claude-372672b/apps/web/src/lib/config.server.ts :24
// stripeSecretKey: process.env.STRIPE_SECRET_KEY, - secrets (weak) JSONbored-awesome-claude-372672b/scripts/build-content-index.mjs :98
if (process.env.GITHUB_TOKEN) { - secrets (weak) JSONbored-awesome-claude-372672b/scripts/build-readme-refresh-body.mjs :302
token: options.token ?? process.env.GITHUB_TOKEN, - secrets (weak) JSONbored-awesome-claude-372672b/scripts/check-mcp-release-due.mjs :92
const token = process.env.GITHUB_TOKEN; - secrets (weak) JSONbored-awesome-claude-372672b/scripts/check-raycast-release-due.mjs :80
const token = process.env.GITHUB_TOKEN; - secrets (weak) JSONbored-awesome-claude-372672b/scripts/submit-indexnow.mjs :78
const key = process.env.INDEXNOW_KEY || DEFAULT_INDEXNOW_KEY; - secrets (weak) JSONbored-awesome-claude-372672b/tests/admin-auth-token-match.test.ts :48
process.env.ADMIN_API_TOKEN = "primary-token"; - secrets (weak) JSONbored-awesome-claude-372672b/tests/api-router-security.test.ts :590
const previousAdmin = process.env.ADMIN_API_TOKEN; - secrets (weak) JSONbored-awesome-claude-372672b/tests/job-source-check-script.test.ts :143
const previousToken = process.env.ADMIN_API_TOKEN; - secrets (weak) JSONbored-awesome-claude-372672b/tests/source-repo-signals.test.ts :254
const previousToken = process.env.GITHUB_TOKEN;
install hooks 1
- prepare JSONbored-awesome-claude-372672b/package.json :71
husky
declared dependencies 15
- @asteasolutions/zod-to-openapi@8.5.0
- @heyclaude/registry@workspace:*
- gray-matter@4.0.3
- yaml@2.9.0
- zod@4.4.3
- @commitlint/cli@21.0.1
- @commitlint/config-conventional@21.0.1
- @vitest/coverage-v8@4.1.7
- husky@9.1.7
- prettier@3.8.3
- react@19.2.6
- react-dom@19.2.6
show 3 more
- safety-agent-cli@0.1.6
- tsx@4.22.3
- vitest@4.1.7
perm:untrusted 1
- untrusted (weak) JSONbored-awesome-claude-372672b/scripts/gittensor-impact-card.mjs :149
fetch("https://gittensor.io/gt-logo.svg").then((r) => r.text()),
transport_posture 1
- punycode (IDN homograph) host in endpoint JSONbored-awesome-claude-372672b/tests/mcp-public-url-lib.test.ts :250
expect(publicUrlHostname("https://www.xn--bcher-kva.example")).toBe(