eva (vvedantb/eva) is an MCP server listed on the M8ven Trust Index. It scores 79 out of 100, grade B. It declares 36 tools. No publisher has claimed this listing.

B
Caution
79/100
7 days ago

eva

Orchestrate sandboxed agents that run in the cloud while you work

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

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

vvedantb

Source: github_code

Is this your MCP?

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

M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.

// key findings
🚨
Secret credentials may flow to a network call
2 flows detected: SANDBOX_JWT_PRIVATE_KEY. We can’t prove the destination matches the brand the credential belongs to.
🚨
Known vulnerabilities in dependencies: 1 critical, 1 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
🔐
You'll be asked for 16 credentials: CLERK_SECRET_KEY, CONVEX_TOKEN, ENCRYPTION_KEY, EVA_DEPLOY_KEY, EXTENSION_ADMIN_KEY, GH_TOKEN, GITHUB_CLIENT_SECRET, GITHUB_PRIVATE_KEY, GITHUB_TOKEN, GITHUB_WEBHOOK_SECRET, HARNESS_CATALOG_TOKEN, MCP_BOOTSTRAP_SECRET, MCP_INTERNAL_SECRET, MCP_JWT_SECRET, PREVIEW_GRANT_PRIVATE_KEY, SANDBOX_JWT_PRIVATE_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// known CVEs in dependencies1 critical1 high1 medium

Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.

criticalvitest@3.2.4GHSA-5xrq-8626-4rwp

When Vitest UI server is listening, arbitrary file can be read and executed

highmarked@18.0.0GHSA-6v9c-7cg6-27q7

Marked Vulnerable to OOM Denial of Service via Infinite Recursion in marked Tokenizer

medium@tiptap/core@3.18.0GHSA-cp6q-959q-f8rh

Tiptap: mergeAttributes() turns an own __proto__ key into inherited executable DOM attributes

Depend on this server? Get alerted when its CVEs change.Watch this server free →
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configAI_CONTEXT_1M
configAI_FAST_MODE
configAI_MODEL
configAI_PROVIDER
configAI_REASONING_EFFORT
configAI_THINKING_ENABLED
configALLOWED_TOOLS
configCALLBACK_HEARTBEAT_ABSOLUTE_MAX_FAILURES
configCALLBACK_HEARTBEAT_FATAL_BURST
configCALLBACK_HEARTBEAT_FATAL_SLOW_COUNT
configCALLBACK_HEARTBEAT_FATAL_SLOW_WINDOW_MS
configCALLBACK_HTTP_MAX_RETRIES
configCALLBACK_HTTP_TIMEOUT_MS
configCALLBACK_OUTPUT_BUFFER_MAX_BYTES
configCALLBACK_SCRIPT_FP
configCALLBACK_STREAMING_HEARTBEAT_MAX_RETRIES
configCLAIM_MUTATION
configCLAUDE_BASE_CONFIG_DIR
configCLAUDE_FIRST_ASSISTANT_EVENT_TIMEOUT_MS
configCLAUDE_FIRST_EVENT_TIMEOUT_MS
configCLAUDE_MAX_TOTAL_RUNTIME_MS
configCLAUDE_MODEL
configCLAUDE_NO_OUTPUT_TIMEOUT_MS
configCLAUDE_PERSIST_DIR
configCLAUDE_POST_TEXT_STALL_TIMEOUT_MS
configCLAUDE_RUNTIME_CONFIG_DIR
configCLAUDE_SESSION_ID
configCLAUDE_SYNC_PER_FILE_TIMEOUT_SECONDS
configCLAUDE_SYNC_TIMEOUT_MS
configCLERK_JWT_ISSUER_DOMAIN
🔐 secretCLERK_SECRET_KEY
configCODEX_AUTH_JSON
configCODEX_AUTH_JSON_BASE64
configCODEX_BIN_PATH
configCODEX_CONFIG_TOML
configCODEX_CONFIG_TOML_BASE64
configCODEX_PERSIST_DIR
configCODEX_RUNTIME_HOME_DIR
configCOMPLETE_SYNTHETIC_TURN_MUTATION
configCOMPLETION_MUTATION
configCONVEX_CLOUD_URL
configCONVEX_SITE_URL
🔐 secretCONVEX_TOKEN
configCONVEX_URL
configCURSOR_PERSIST_DIR
configCURSOR_RUNTIME_HOME_DIR
🔐 secretENCRYPTION_KEY
configENTITY_ID
configENTITY_ID_FIELD
configEVA_CURSOR_TURN_WORKER_LEASE_GENERATION
configEVA_CURSOR_TURN_WORKER_LIFECYCLE
configEVA_CURSOR_TURN_WORKER_PROMPT_FILE
configEVA_CURSOR_TURN_WORKER_TURN_ID
configEVA_DAEMON_OPTS
🔐 secretEVA_DEPLOY_KEY
configEVA_NO_WRITES
configEVA_OPENCODE_BIN_PATH
configEVA_PUBLIC_CONVEX_URL
🔐 secretEXTENSION_ADMIN_KEY
configEXTENSION_ID
configGH_NO_UPDATE_NOTIFIER
configGH_PROMPT_DISABLED
🔐 secretGH_TOKEN
configGITHUB_APP_ID
configGITHUB_CLIENT_ID
🔐 secretGITHUB_CLIENT_SECRET
🔐 secretGITHUB_PRIVATE_KEY
🔐 secretGITHUB_TOKEN
🔐 secretGITHUB_WEBHOOK_SECRET
configHARNESS_CATALOG_SANDBOX_ID
🔐 secretHARNESS_CATALOG_TOKEN
🔐 secretMCP_BOOTSTRAP_SECRET
🔐 secretMCP_INTERNAL_SECRET
🔐 secretMCP_JWT_SECRET
configOPENCODE_AUTH_JSON
configOPENCODE_AUTH_JSON_BASE64
configOPENCODE_CONFIG_JSON
configOPENCODE_CONFIG_JSON_BASE64
configOPENCODE_PERSIST_DIR
configOPENCODE_RUNTIME_HOME_DIR
configOPENCODE_SERVER_PORT
configOPEN_SYNTHETIC_TURN_MUTATION
🔐 secretPREVIEW_GRANT_PRIVATE_KEY
configPROVIDER_ACCOUNT_ID
configREPO_ID
configREQUIRE_TASK_COMMIT
configROOT_DIRECTORY
configRUN_ID
configSANDBOX_JWT_JWKS
🔐 secretSANDBOX_JWT_PRIVATE_KEY
configSTREAMING_ENTITY_ID
configSTREAMING_HMAC
configSYSTEM_PROMPT
configTURN_ID
configTURN_LEASE_GENERATION
configUPDATE_BACKGROUND_AGENTS_MUTATION
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployWEB_APP_URL
// quality suggestions

Tool 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

36/36 tools missing one or more hints — list_entities (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); start_sandbox (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); stop_sandbox (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +33 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 inputs are validated

Only 16/36 tool handlers declare input schemas (44%)

Declare an inputSchema with zod/joi/yup on every tool definition.

README present

No README found

Add a README.md describing the server and its tools.

License file

No license file

Add a LICENSE file (MIT, Apache-2.0, etc.).

Tool test coverage

16/36 tools referenced in tests (44%)

Write tests that reference each tool by name so every tool has at least one test.

Secrets stay with their owner

2 secrets sent to a request target we could not resolve (SANDBOX_JWT_PRIVATE_KEY → dynamic, SANDBOX_JWT_PRIVATE_KEY → dynamic) — often a configured endpoint, not necessarily third-party

Audit where credentials are sent. A NOTION_TOKEN should only reach api.notion.com — never a third-party host.

Production dependencies are patched

0 critical, 1 high severity in production deps — marked@18.0.0 (high), @tiptap/core@3.18.0 (medium)

Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.

Dev dependencies

1 critical/high in dev-only deps (does not ship to users)

Upgrade dev dependencies when convenient.

Domain consistency

npm scope @eva doesn't match GitHub owner vvedantb

Use the same org name across GitHub, npm, and your homepage so users can verify the publisher.

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.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 10 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/vvedantb/eva?variant=verified)](https://m8ven.ai/mcp/vvedantb/eva)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 5b3d2034f40aac65609abb59eaa549d829ed6319
code hash: 5dbbe0b94296225aa9fd5797b879720db31790718d2f2e0973927a3524996cd5
verified: 9/3/2026, 5:32:33 PM
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

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
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client