NouGenShards (Who-Visions/NouGenShards) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 80 tools. No publisher has claimed this listing.
Local-first AI memory for coding agents. NouGenShards stores reusable "shards" in a local SQLite + FTS5 database with outcome-weighted retrieval, so agents recall what worked instead of re-prompting. Your agents have prompts — mine have shards.
Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
Who-Visions
Source: github_repo_search
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
transcribe_videorecall_memorySearch the memory substrate. Returns ranked shards (fuzzy recall included when exact matching misses). Long shard bodies are returned as SNIPPETS with a truncation marker naming get_shard(shard_id, db_index) - call that for a full body. Held context is what recall costs a caller (98%+ of fleet spend…
get_shardFetch ONE shard's full body by id - the on-demand counterpart to recall_memory's snippets. Pass the db_index a recall result carried (_db_index); omit it to search all grid databases for the id.
capture_experienceStore a unit of experience as a shard (deduplicated by content).
mark_utilityFeed back whether a recalled shard was useful; adjusts its ranking prior.
node_statusNode health: shard count and storage mode.
substrate_coverageWhat this node actually holds, so a recall MISS can be told apart from a PARTIAL MOUNT.
recall_windowBrowse the vault by ERA, newest first -- the date-filtered counterpart to recall_memory.
shard_amendAppend a dated note to an existing shard, preserving everything already there. The append-only way to correct or extend a shard: history is never rewritten, it grows. Use for living dossiers and for correcting a shard that later turned out to be partly wrong.
shard_retractRetract a shard WITHOUT erasing it: prefix its title [RETRACTED], append the reason, tag it `retracted`, and floor its utility so outcome-weighted recall stops surfacing it.
shard_forgetPERMANENTLY delete a shard. Irreversible -- there is no undo and no tombstone; the row and its FTS index entry are gone.
vault_putWrite a secret into the keymaker vault. WRITE-ONLY BY DESIGN.
vault_listSecret NAMES and fingerprints in the vault -- never values.
ask_rheaAsk Rhea-Noir, the grid's resident agent. She recalls from the memory grid, gathers provenance-marked history, reads the tracker and relay, and captures shards worth keeping. Her reply names which brain answered.
dav1d_execDav1d Execution Layer: Execute bounded AGY CLI operations and toolchain actions on Dav1d. Griot reasons/retrieves; Dav1d executes. Returns verifiable runtime evidence (machine, host, engine, version, exit_code, output).
agy_askInvoke the Google Antigravity CLI through Dav1d.
ask_dav1dCanonical Dav1d connector alias.
xoah_selfQuery self-archive state at an autobiographical coordinate.
xoah_pressureEvaluate candidate story addition against canon pressure.
xoah_throneRun proposed intervention through Shadow Queen Throne governance gates.
xoah_relationshipRelationship state with an entity at a story coordinate; love and trust are separate values.
xoah_then_vs_nowWhat Xoah believed and knew then vs what is known now, without leaking terminal knowledge backward.
xoah_precedentsNearest pressure precedents on a topic at or before a story coordinate.
xoah_conservationConservation cost of removing a formative event: the downstream wounds, biases and choices that lose their cause.
xoah_unwrittenWhether an episode/chapter/year slot is unwritten (UNWRITTEN_SELF) rather than fabricated.
xoah_active_scarsWounds active at a story coordinate.
unfinished_destiniesList unfinished or filtered prospective destinies.
nougen_translate_responseTranslate technical infrastructure status/diagnostics into plain human language.
ask_xoahAsk Shadow Xoah (Stage 9 Traverser / Stage 10 Throne Sovereign).
evaluate_quotaEvaluate provider usage against the Hardcade quota alert ladder. Returns level (<60% GREEN, 60% HEADS_UP, 75% LOW_AMMO, 85% DANGER, 90% RATION, 95% CONTINUE, 99% FINAL_ROUND, 100% GAME_OVER, 1UP for reset), routing directive, and recommended route.
nougenmsgSend a live NouGenMsg IPC notification or baton to another fleet agent or node (@blade, @whoart, @phoebus, @antigravity, @codex, @all, or model lanes).
recall_graphGraph memory recall: entity mentions and multi-hop relation walk across shards.
temporal_queryBi-temporal memory query: retrieve shards as they existed as_of a timestamp or bounded by event era.
create_destinyRegister a new prospective goal / terminal destiny in destinies.db.
get_destinyInspect prospective destiny status, linked evidence shards, and branches.
update_destinyUpdate prospective destiny status (dormant, active, fulfilled, fumbled, abandoned).
link_destinyLink an evidence shard, relay leg, or agent to a prospective destiny.
fleet_statusQuery live mesh connectivity, node health, and reach matrix across Phoebus, Blade, and WhoArt.
fleet_sendDirect point-to-point dispatch across fleet nodes via live socket or HTTP transport.
relay_open_legsList open cross-node handoff legs from the NouGenRelay board.
relay_claim_legClaim an open relay leg atomically to prevent duplicate swarm execution.
relay_create_legCreate and publish a new coordination handoff leg on the NouGenRelay board.
relay_ack_legSettle and acknowledge an open relay leg with mandatory Hardcade proof tuple.
wake_daemon_statusInspect reactive wake daemon operational state, symmetric window, and noise filtering stats.
wispr_latestFetch the latest voice dictation transcript from local Wispr Flow SQLite DB.
wispr_historyQuery recent Wispr Flow voice dictation history.
youtube_ingestExtract, clean, and auto-shard YouTube / media video transcripts without 3rd-party SaaS.
arxiv_researchSearch arXiv papers and auto-capture research abstracts into the NouGen shard cluster.
evidence_assureValidate and label empirical claim through Iris evidence assurance standards.
studio_lightingSet physical studio lighting status reflection (Razer Chroma RGB & LIFX smart fixtures).
tunnel_statusInspect active Ngrok TLS ingress edge tunnels for local MsgNode and Web HUD.
turn_compoundCompound multi-turn session trajectory into a permanent synthesis shard.
pr_lease_statusCheck active PR lease locks across repositories to prevent merge collisions.
pr_lease_acquireAcquire exclusive PR lease lock for a target repository before performing modifications.
pr_lease_releaseRelease active PR lease lock after landing verified commits.
token_fuse_statusInspect real-time token hypervisor limits, circuit breaker level, and cost provenance.
shard_vacuumOptimize SQLite storage, rebuild trigram FTS5 indices, and reclaim space across cluster DBs.
sync_mesh_statusAudit symmetric sync state and hash parity across Phoebus, Blade, and WhoArt shard stores.
dream_triggerTrigger Kairos memory consolidation and golden rule extraction across recent experience shards.
recall_layeredLayered recall (TencentDB-Agent-Memory L0-L3): the owner persona (L3) and the matching topic scenes (L2) come first as bootstrap context, then distilled atoms (L1) with shard handles, then raw shards (L0) in whatever budget is left. Needs the distillation sidecar (tools/distill_run.py); without it t…
link_shardsLink two memory shards into the graph mesh (e.g. a fix to the file it touched, a command to the decision that caused it).
recall_relatedRecall shards connected to a given shard in the graph mesh (walks links in either direction). Surfaces the latent context around a memory.
log_context_eventLog an ephemeral session event to the short-term context layer. Args: event_type: The type of context event (e.g., 'TOOL_CALL', 'THOUGHT'). description: Description of the event. metadata: Optional dictionary of additional context data.
search_contextSearch for ephemeral session events in the short-term context layer. Args: query: The search term to match against recent context events. limit: Max number of events to return.
promote_context_to_shardPromote an ephemeral context event into a permanent, durable memory shard. Args: event_id: The ID of the context event to promote. tags: Optional tags to apply to the new shard.
execute_sandboxed_codeExecute Python or Node.js code in a sandboxed environment.
run_brain_scanScan the local machine for AI tool history (Claude, Gemini, Cursor, etc.). Returns a summary of discovered memory sources without importing them. Args: project_path: Optional path to a specific project directory to scan. include_unknown: If True, scans for unknown dotfolders as well.
run_brain_importImport discovered AI tool history into the NouGenShards memory substrate. Args: project_path: Optional path to a specific project directory to scan and import. source_filter: Filter by specific tool (e.g., 'claude', 'gemini'). dry_run: If True, only estimates the import size without writing to the d…
get_memory_statsGet historical analytics on memory growth and utility trends. Args: period: The time window to analyze ('24h', 'week', 'month', 'quarter', 'year').
apply_skillsResolve which installed skills govern a task and return them in full.
list_skillsList every installed skill with its description.
load_skillReturn one skill's full text by name.
evolve_skillAutonomously construct and verify a new skill using open-world resources. Args: instruction: The task or domain to evolve a skill for (e.g., 'React GSAP animations').
ask_irisAsk Iris, the always-on resident AI on this machine.
ask_agentRun a prompt through any agent on the NouGen roster.
list_agentsList the NouGen roster: each agent's name, role and default model.
transcribe_mediaTranscribe and summarize video/audio from 30+ platforms (YouTube, X, TikTok, Apple Podcasts, etc.) or local media files using local Whisper, and automatically shard results into the NouGen 9-DB cluster.
NOUGEN_HANDOFFS_DIRNOUGEN_PYTHONNOUGEN_TOKEN_DBPYTHONPATHTRANSCRIBE_OUTPUT_DIRWHISPER_MODEL_SIZEVIDEO_MAX_HEIGHTMCP_LOG_LEVELUPLOAD_MAX_MBOPENAI_API_KEYOPENAI_BASE_URLSPACE_IDNOUGEN_HOMENOUGEN_VAULT_DIRNGS_NODE_TOKENSHARD_GATEWAY_TOKENNOUGEN_RECALL_SNIPPET_CHARSNOUGEN_HEALTH_CACHE_SNOUGEN_COVERAGE_FEDERATEDNGS_UPSTREAM_URLNGS_UPSTREAM_NAMENOUGEN_WARMUPNGS_DOCS_PUBLICNGS_HUD_USERNGS_HUD_PASSWORDNOUGEN_MACHINE_IDNOUGEN_VAULT_IDNOUGEN_INSTANCE_IDNOUGEN_RHEA_WORKERSNOUGEN_RHEA_HARD_CAP_SNOUGEN_RHEA_MODELNOUGEN_MSG_FANOUT_ASYNCNGS_PUBLIC_URLNGS_PORTNOUGEN_DAM_REPONOUGEN_DAM_HF_TOKENNOUGEN_DAM_HMAC_KEYNOUGEN_RECALL_TOKEN_BUDGETWATCHTOWER_ROOTKAEDRA_POLICY_VERSIONKAEDRA_GATEWAY_URLKAEDRA_GATEWAY_TOKENKAEDRA_GATE_MODELKAEDRA_SYSTEM_OVERRIDENOUGEN_CC_SESSIONSNOUGEN_USER_ORIGIN_TOKENNOUGEN_AGY_INBOXNOUGEN_AGY_INBOX_STATENOUGEN_AGY_INBOX_MESSAGE_CHARSNOUGEN_AGY_INBOX_BATCH_CHARSNOUGEN_AGY_INBOX_TARGETSNOUGEN_AGY_INBOX_REPLAYNOUGEN_OLLAMA_URLNOUGEN_DIGEST_TOP_NNOUGEN_DIGEST_TRIAGE_BATCHNOUGEN_DIGEST_ABSTRACT_CAPNOUGEN_DIGEST_MODELNOUGEN_FALLBACK_MODELNOUGEN_ARXIV_UANOUGEN_ARXIV_PROGRESS_EVERYNOUGEN_ARXIV_CHUNK_MAX_DEPTHNOUGEN_ARXIV_DAILYDOC_SLUG_MAXNOUGEN_ARXIV_CATEGORY_LABELNOUGEN_ARXIV_CATEGORIESNOUGEN_ARXIV_MIRROR_DIRNOUGEN_ARXIV_PROBE_CAPNOUGEN_TAG_MAXNOUGEN_TAG_SIM_FLOORNOUGEN_TAG_REL_MARGINNOUGEN_TAG_EMBED_CHARSNOUGEN_EMBED_MODELNOUGEN_TAG_VOCAB_JSONNOUGEN_ARXIV_DOC_GLOBNOUGEN_ARXIV_STATUS_LIMITNOUGEN_HANDOFF_DIRNOUGEN_ATOMIZE_MAX_CLAIMSNOUGEN_ATOMIZE_BODY_CAPNOUGEN_ATOMIZE_TIMEOUT_SNOUGEN_ATOMIZE_MODELNOUGEN_JOURNAL_PATHNOUGEN_AUTOGRAPH_ENABLEDNOUGEN_FTS_MIN_ROWSNOUGEN_SNAPSHOT_OUTNOUGEN_CLAUDE_INBOXNOUGEN_CLAUDE_INBOX_STATENOUGEN_CLAUDE_INBOX_MESSAGE_CHARSNOUGEN_CLAUDE_INBOX_BATCH_CHARSNOUGEN_CLAUDE_INBOX_TARGETSNOUGEN_CLAUDE_INBOX_REPLAYCOACH_AUDIENCE_SCOPECOACH_AUDIENCE_TZCOACH_LOCAL_MODELNOUGEN_QUERY_EMBEDNOUGEN_DISTILL_LANESNOUGEN_DEEP_SFT_TOPNOUGEN_DEEP_INV_TOPNOUGEN_DEEP_CONTENT_CAPNOUGEN_DEEP_CALL_TIMEOUT_SNOUGEN_DEEP_SFT_OUTNOUGEN_DREAM_LOCAL_MODELDREAM_SELF_SESSIONNOUGEN_SHARDS_REPONOUGEN_DRIFT_BRANCHNOUGEN_DRIFT_MAPNOUGEN_BUS_DIRNOUGEN_BLADE_HOSTNOUGEN_BLADE_MODELNOUGEN_WHOART_HOSTNOUGEN_PRIVACYNOUGEN_BREAKER_MAXNOUGEN_VERTEXNOUGEN_HEARTBEAT_MODELNOUGEN_FLEET_ORIGINNOUGEN_FLEET_REDIRECTNOUGEN_REPONOUGEN_AGENTNOUGEN_PYNOUGEN_PRICING_TIMEOUT_SNOUGEN_PRICING_UANOUGEN_PRICING_SOURCESNOUGEN_RELAY_LOCAL_DIRCOMPUTERNAMENOUGEN_CLAIM_TTL_HOURSNOUGEN_ARXIV_DOC_PREFIXNOUGEN_ARXIV_SHARD_PREFIXNOUGEN_LANE_GUARD_ENFORCENOUGEN_COMMIT_SWEEP_MAXNOUGEN_LANE_GUARD_OKNGS_PORT_CANDIDATESNGS_ROUTE_PROBENGS_BIND_HOSTNOUGEN_MSG_FAST_IMPORTNOUGEN_MSG_EMOJI_MAPNOUGEN_LANENOUGEN_MSG_RULE_WIDTHNOUGEN_AGY_MSG_TOKENNOUGEN_MSG_HTTP_TIMEOUT_SNOUGEN_MSG_ROUTENOUGEN_SESSION_IDNOUGEN_SESSION_TITLENOUGEN_NODE_NAMENOUGEN_AGY_MSG_AUTHNOUGEN_AGY_MSG_PORTNOUGEN_AGY_MSG_BINDCLAUDE_CODE_MESSAGING_SOCKETCLAUDE_CODE_MESSAGING_TOKENNOUGEN_LOG_LEVELNOUGEN_TRANSCRIBE_MAX_SHARD_CHARSNOUGEN_TRANSCRIBE_SPLIT_OVERLAPNOUGEN_TRANSCRIBE_EVENT_TYPENOUGEN_TUBE_LOG_LEVELNGS_NODE_URLNOUGEN_TUBE_STATENOUGEN_MANIFEST_SECRETSNOUGEN_MANIFEST_SALTNOUGEN_SNAPSHOT_BUCKETNOUGEN_SNAPSHOT_KEEPNOUGEN_PROBE_UANOUGEN_REACH_TIMEOUT_SNOUGEN_STATE_DIRNOUGEN_SURFACES_FILENGS_GATEWAY_ORIGIN_FLEETNOUGEN_BENCH_ENCODINGNOUGEN_BENCH_GOLDENNOUGEN_RELAY_DIRNOUGEN_RELAY_REPONOUGEN_RELAY_LIVE_CURSORNOUGEN_RELAY_LIVE_WAKEGIT_SSH_COMMANDNOUGEN_RELAY_LIVE_FETCHNOUGEN_RELAY_BRANCHNOUGEN_RELAY_LIVE_SELFNOUGEN_RELAY_LIVE_IGNORE_SIGINTNOUGEN_ROOTNOUGEN_RELAY_ROOTNOUGEN_NODE_URLNOUGEN_RUNNER_PROBE_TIMEOUT_SNOUGEN_RELAY_WATCH_SECSNOUGEN_RELAY_WATCH_ONCENOUGEN_USED_NONCES_FILENOUGEN_ALLOW_CONSOLENGS_REPONOUGEN_CLOUDFLARED_EXEProgramFilesNOUGEN_GRID_LOG_MAX_BYTESOPENROUTER_API_KEYNGS_INFERENCE_TOKENSNOUGEN_GRID_START_POLL_SNOUGEN_GRID_START_TIMEOUT_SNOUGEN_GRID_AUTH_PROBENOUGEN_GRID_PROBE_TIMEOUT_SNOUGEN_GRID_WATCH_SECSTOKEN_TRACKER_CUTOFFAI_MONTHLY_SUBSCRIPTION_USDVALERION_LONGFORM_OUTMETAMERIC_LONGFORM_OUTCLOUDFLARE_API_BASENGS_WORKER_NAMENGS_WORKER_URL_VARNGS_CF_ACCOUNT_KEYNGS_CF_TOKEN_KEYNGS_WORKER_VAR_KINDNGS_CF_TIMEOUT_SNOUGEN_KAEDRA_MODELNOUGEN_KAEDRA_GATEWAYPRODUCTION_MODEHOSTSUMMARY_LANGUAGENOUGEN_WAKE_DISABLEDNOUGEN_WAKE_ANTIGRAVITY_BINNOUGEN_WAKE_TIMEOUT_SNOUGEN_WAKE_ANTIGRAVITY_ARGSKAEDRA_DIRNOUGEN_WAKE_KAEDRA_ENABLEDOPENAI_TRANSLATION_MODELNOUGEN_ROUTER_URLNOUGEN_OPENROUTER_URLNOUGEN_PERSONA_PATHNGS_INFERENCE_TOKENHF_TOKENNOUGEN_RHEA_PREFER_KIMINOUGEN_OPENROUTER_K3_KEYSNOUGEN_RHEA_KIMI_MODELNOUGEN_RHEA_FREE_MODELSNOUGEN_RHEA_MAX_TOKENSNOUGEN_TRACKER_SPACENOUGEN_TRACKER_HOSTNOUGEN_RELAY_GITHUB_TOKENGITHUB_TOKENNOUGEN_RHEA_TOOL_SNOUGEN_RHEA_MAX_ROUNDSNOUGEN_RHEA_DEADLINE_SNGS_ROUTER_DEFAULT_MODELNGS_ROUTER_MAX_TOKENS_CAPFLEET_RELAY_DIRFLEET_INBOX_LOGFLEET_INBOX_STATEFLEET_MEKAEDRA_TOOLSOLLAMA_URLKAEDRA_GATEWAY_PORTKAEDRA_GATEWAY_HOSTKAEDRA_BINDKAEDRA_DEFAULT_MODELKAEDRA_TIMEOUTNOUGEN_EMBED_DIMNOUGEN_ARXIV_API_URLNOUGEN_ARXIV_TIMEOUT_SNOUGEN_PRICING_DIRNOUGEN_PRICING_JSONNOUGEN_USAGE_WINDOWS_JSONNOUGEN_CANON_LOCK_PREFIXESNOUGEN_CANON_LOCK_DIRNOUGEN_CANON_LOCKSNOUGEN_CANON_SEED_PATHNOUGEN_CANON_DBNOUGEN_CANON_DB_TIMEOUT_SNOUGEN_XOAH_RENDER_LLMNO_COLORNOUGEN_FORCE_COLORNOUGEN_ROUTER_MODELNOUGEN_HANDOFF_ENCODINGNOUGEN_TRIGGERSSUMMARY_MODELNOUGEN_CODEX_INBOXNOUGEN_CODEX_THREADNOUGEN_CODEX_CLINVM_SYMLINKNOUGEN_EMBED_CAPTURE_TIMEOUT_SNOUGEN_VAULT_JOURNAL_MODEHF_SPACE_IDNOUGEN_VAULT_ALLOW_LOCALNOUGEN_QUARANTINE_MALFORMED_ON_BOOTPYTEST_CURRENT_TESTNOUGEN_DENSITY_LLMNOUGEN_DENSITY_TIMEOUTNOUGEN_EMBED_AT_CAPTURENOUGEN_EMBED_TIMEOUTNOUGEN_QUERY_EMBED_TIMEOUTNOUGEN_RERANKNOUGEN_RERANK_MODELNOUGEN_RERANK_CANDIDATESNOUGEN_FUZZY_MAX_ROWSNOUGEN_FUZZY_TRIGGERNOUGEN_BM25_HALF_SCORENOUGEN_DOMAIN_BOOSTNOUGEN_RECALL_EXCLUDE_EVENT_TYPESNOUGEN_RETRIEVE_DB_WORKERSNOUGEN_VECTOR_CACHENOUGEN_VECTOR_CACHE_WAIT_SNOUGEN_TITLE_LANENOUGEN_VALIDITY_RANKAGY_BIN_PATHNOUGEN_AGY_VERSION_TIMEOUT_SECNOUGEN_AGY_VERSION_CACHENOUGEN_AGY_VERSIONNOUGEN_HOST_LABELNOUGEN_DESTINY_BRANCHESNOUGEN_DESTINY_DEFAULT_BRANCHNOUGEN_DESTINY_DBNOUGEN_DESTINY_DB_TIMEOUT_SOLLAMA_HOSTNOUGEN_EMBED_KEEP_ALIVENOUGEN_VRAM_CEILINGNOUGEN_VRAM_CHECK_EVERYNOUGEN_FED_LANE_POOLNOUGEN_RECALL_DEADLINE_SNOUGEN_FED_LANE_WEIGHTNOUGEN_ACCOUNT_ALIASESNOUGEN_SECRETS_DBNOUGEN_SECRETS_DB_GLOBNOUGEN_FLEET_COOLDOWN_SNOUGEN_HANDOFF_TASKS_DIRCLAUDECODECLAUDE_CODECLAUDE_CODE_ENTRYPOINTGEMINI_API_KEYGOOGLE_API_KEYANTHROPIC_API_KEYHF_SPACE_URLHUGGINGFACE_API_KEYNOUGEN_HANDOFF_REMOTEPORTTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
80/80 tools missing one or more hints — transcribe_video (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); recall_memory (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_shard (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +77 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Tool test coverage
33/80 tools referenced in tests (41%)
Write tests that reference each tool by name so every tool has at least one test.
Shell command execution
1 call in production code run through a shell (vite.config.ts:189)
Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.
Secrets not logged
1 secret value sent to print
Redact or omit secret values from log output.
Dependency freshness
1/3 production deps stale: heic-convert@2023-11-30 (2.8y)
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/who-visions/nougenshards)?variant=verified to the badge URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check