claude-code-studio (Lexus2016/claude-code-studio) is an MCP server listed on the M8ven Trust Index. It scores 44 out of 100, grade D. It declares 12 tools. No publisher has claimed this listing.

D
Warning
44/100

claude-code-studio

A fully functional web workspace for Claude Code CLI—chat, Kanban task board, task scheduling, multi-agent orchestration, MCP servers, skills, remote access (Web, SSH, Telegram), projects, and real-time data streaming.

Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we 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

Lexus2016

Source: github_repo_search

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

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.

// key findings
🚨
Secret credentials may flow to a network call
7 flows detected: ASK_USER_SECRET, BOTS_SECRET, NOTIFY_SECRET. We can’t prove the destination matches the brand the credential belongs to.
🚨
Code appears obfuscated
1 file are unreadable to a human reviewer. Cannot audit what they do.
⚠️
Known vulnerabilities in dependencies: 3 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
🔐
You'll be asked for 9 credentials: ASK_USER_SECRET, BOTS_SECRET, CCS_INTERRUPT_SECRET, CCS_TASK_MANAGER_SECRET, INTERRUPT_SECRET, NOTIFY_SECRET, SESSION_SECRET, SET_UI_STATE_SECRET, TASK_MANAGER_SECRET
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes12 tools

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.

ask_user

Ask the user a question and wait for their response. Use this when you need clarification, a choice, or any input from the user before proceeding. Execution pauses until the user responds. Supports multiple questions (paginated), rich options with descriptions, and an "Other" free-text fallback on e

message_bot

Hand a task to another bot from your roster. The bot runs AFTER you finish your turn, so you will NOT see its answer inside this turn — do not wait for it and do not build your reply around its output. Write "task" so it stands on its own: the callee does not share your context and sees nothing exce

notify_user

Send a non-blocking notification to the user. Use this to report progress, milestones, warnings, or errors WITHOUT pausing execution. You continue working immediately after calling this tool. Use sparingly — only for meaningful status changes, not every minor step.

set_ui_state

Update the UI state (mode, model, agent). Use this when you transition between phases (e.g., from planning to execution) so the UI reflects your current state. This is fire-and-forget — execution continues immediately.

create_task

Create a new task in the system. By default the task is queued for execution; pass status="backlog" (or "done" for an already-completed item) to add it to the Kanban board WITHOUT running it — use that when importing an existing plan, roadmap, tasks/ folder or checklist into the board. The workdir i

create_chain

Create a chain of sequential tasks in one call. Tasks run in order by default (each depends on the previous). All tasks share a session for context continuity. Use depends_on_index to create custom dependency graphs within the chain.

list_tasks

List tasks in your project. Useful for checking existing tasks, avoiding duplicates, or monitoring progress of child tasks you created.

get_current_task

Get details about your current task, including the context passed by the parent task. Call this first to understand your mission and any context provided.

report_result

Store a structured result for this task. Other tasks that depend on you can read this via get_task_result. Use this to pass data to downstream tasks — issue lists, PR URLs, analysis results, etc.

get_task_result

Read the structured result of a completed task. Use this to get output from tasks you depend on or from child tasks you created.

cancel_task

Cancel a pending or running task. Use when you determine a task is no longer needed (e.g., the issue was already fixed, or a sibling task made it redundant).

check_user_messages

Check if the user sent any clarifications or corrections while you are working. Returns pending messages or empty if none. Call this between major steps to stay aligned with user intent.

// known CVEs in dependencies3 high1 low

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

highmulter@2.2.0GHSA-535w-7cp7-47q4

multer vulnerable to Denial of Service via oversized array index in field names

highmulter@2.2.0GHSA-qfvm-cv95-jqjf

multer vulnerable to Denial of Service via file descriptor leak on aborted uploads

highmulter@2.2.0GHSA-wc9g-mqfw-jrwm

multer vulnerable to Denial of Service via crafted multipart field names

lowmulter@2.2.0GHSA-qvfw-j98x-7q72

multer vulnerable to file size limit bypass via async fileFilter race condition

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.
configAPP_DIR
🔐 secretASK_USER_SECRET
configASK_USER_SERVER_URL
configASK_USER_SESSION_ID
configBOTS_CALLER
🔐 secretBOTS_SECRET
configBOTS_SERVER_URL
configBOTS_SESSION_ID
configBOTS_TURN
configCCS_ALLOWED_ORIGINS
configCCS_CONFIG_PATHconfig.json and .env on the data volume ( / CCS_ENV_PATH)
configCCS_ENV_PATHconfig.json and .env on the data volume (CCS_CONFIG_PATH / )
configCCS_GIT_CLONE_TIMEOUT_MS
configCCS_INTERRUPT_FILE_TTL_MS
🔐 secretCCS_INTERRUPT_SECRET
configCCS_INTERRUPT_SESSION
configCCS_INTERRUPT_URL
configCCS_MAX_CLARIFY_TURNS
configCCS_NODE_CMD
configCCS_REMOTE_EXEC_HOOK
configCCS_REMOTE_EXEC_MAX_BYTES
configCCS_REMOTE_EXEC_TIMEOUT_MS
configCCS_REMOTE_FILES_MAX_BYTES
configCCS_REMOTE_FILES_MAX_ENTRIES
configCCS_REMOTE_IMPORT_MAX_BYTES
configCCS_REMOTE_IMPORT_MAX_TOTAL
configCCS_REMOTE_INIT
configCCS_SSH_HOST_KEY_POLICY
🔐 secretCCS_TASK_MANAGER_SECRET
configCCS_TMUX_FRAME_MS
configCLAUDE_HARD_CAP_MS
configCLAUDE_IDLE_TIMEOUT_MS
configCLAUDE_PROMPT_GRACE_MS
configCLAUDE_STARTUP_PROMPT_WAIT_MS
configCLAUDE_TIMEOUT_MS
configCLEANUP_INTERVAL_HOURS
configHOSTyour phone or another machine, set =0.0.0.0 — the console then warns you on every
🔐 secretINTERRUPT_SECRET
configINTERRUPT_SERVER_URL
configINTERRUPT_SESSION_ID
configLOG_LEVEL
configMAX_TASK_WORKERS
configMULTI_AGENT_CONCURRENCY
configMULTI_AGENT_MAX_PLAN
configMULTI_AGENT_MAX_TURNS_CAP
🔐 secretNOTIFY_SECRET
configNOTIFY_SERVER_URL
configNOTIFY_SESSION_ID
🔐 secretSESSION_SECRET
configSESSION_TTL_DAYS
🔐 secretSET_UI_STATE_SECRET
configSET_UI_STATE_SERVER_URL
configSET_UI_STATE_SESSION_ID
configSSH_AUTH_SOCK
configTASK_DISCONNECT_TIMEOUT_MS
🔐 secretTASK_MANAGER_SECRET
configTASK_MANAGER_SERVER_URL
configTASK_MANAGER_SESSION_ID
configTASK_MANAGER_TASK_ID
configTRUST_PROXY
configWORKDIR
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployPORT
// 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

12/12 tools missing one or more hints — ask_user (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); message_bot (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); notify_user (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +9 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.

License file

No license file

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

No eval / new Function

1 eval() or new Function() call — dynamic code execution

Replace eval / Function with explicit parsing or safer alternatives.

Shell command execution

11 calls in production code run through a shell (server.js:441, server.js:8748, server.js:8756)

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Readable source code

1 file are minified or bundled, which is usually build output rather than concealment

Ship unminified, readable source.

No arbitrary install scripts

Has postinstall/preinstall script — runs arbitrary code on npm install

Remove postinstall/preinstall hooks unless they’re essential.

Production dependencies are patched

0 critical, 3 high severity in production deps — multer@2.2.0 (high), multer@2.2.0 (high)

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

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 8 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/lexus2016/claude-code-studio?variant=verified)](https://m8ven.ai/mcp/lexus2016/claude-code-studio)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: ea47299eb3ea79257d497133d8d25aa918d119da
code hash: 2797cb976076ac7d574e1b3ff7954be4dbb1c11dba107c788356837d038af7fa
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