Soumtok (trysoumtok/Soumtok) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 24 tools. No publisher has claimed this listing.

C
Emerging
74/100

Soumtok

Soumtok Agent — production AI coding agent & Electron IDE. Built in Africa for builders everywhere.

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

⚡ 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

trysoumtok

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
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 18 credentials: ANTHROPIC_API_KEY, BETTER_AUTH_SECRET, BUNNY_ACCESS_KEY, DEEPSEEK_API_KEY, FAL_KEY, GITHUB_CLIENT_SECRET, GOOGLE_AI_API_KEY, GOOGLE_CLIENT_SECRET, OPENAI_API_KEY, PAYHERO_BASIC_TOKEN, PAYHERO_PASSWORD, PAYPAL_CLIENT_SECRET, REPLICATE_API_KEY, REPLICATE_API_TOKEN, RESEND_API_KEY, SOUMTOK_RESEND_API_KEY, TWILIO_AUTH_TOKEN, XAI_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes24 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.

read

Read a file from the current Studio workspace. Misspelled paths still resolve when the match is unique. For a long file, pass start_line/end_line to page through it instead of re-reading the whole thing.

grep

Search workspace files for a pattern.

glob

Find workspace paths matching a glob (e.g. **/*.tsx, src/**/*.ts).

list_dir

List files and folders at a path relative to the workspace root.

write

Create or replace a file on disk. Required for new files. Chat XML, markdown fences, and <write> tags do not create files — you must call this tool.

diff

Edit an existing workspace file. Pass old_string and new_string, or content for a full replacement. Do not call diff with only added/removed counts. New files must use write. Chat {"kind":"diff"} events do not change files.

terminal

Run a shell command in the workspace (Studio sandbox: node, python, npm test, git, etc.). On Soumtok Desktop IDE this runs on the user's real machine — see read_terminal in tool list for integrated Terminal.

read_terminal

Read captured output from Soumtok integrated Terminal on the user PC (ANSI stripped; includes URL/Ready summary). Use after terminal() starts dev servers; wait_ms 15000–25000 for Next.js. Do not read *-run.log or probe.txt instead.

read_lints

Run lint or TypeScript check on paths (eslint/npm run lint or tsc --noEmit).

task

Launch a Soumtok subagent (like Cursor Task). subagent_type: explore (read-only codebase search) or generalPurpose (full tools). Returns a report for you to continue.

github

Clone the attached GitHub repository (or args.repo) into the workspace.

fetch

Fetch a public https page, SVG, or look up a query. For brand logos use https://cdn.simpleicons.org/{slug} or https://cdn.jsdelivr.net/npm/simple-icons/icons/{slug}.svg — keep the raw SVG markup.

mcp

Call a connected MCP server tool (GitHub, Figma, Neon, Slack, …). Results are saved under mcp-exports/ in the project. Connect services in the Connectors side bar (company logo → Connect).

generate_image

Generate a still image with Flux 2 Max (no video, no music) and save it into the project. Use when they asked to generate/create/draw an image even if that is misspelled (genera, iamge, egale). Default path assets/generated/. Default aspect 1:1; pass aspect if they asked 16:9, 9:16, 4:3.

examine_media

Look at an image or video already on disk (workspace path) or a data URL. Returns a detailed description the coding model can use. Does not generate video or music.

wipe_workspace

Remove ALL files and folders in the workspace root when the user asked to delete/clear the whole project. Keeps .git by default.

ask_question

Ask the user clarifying questions with multiple-choice options. Execution pauses until they answer. Use when requirements are ambiguous.

switch_mode

Request switching agent mode (plan or agent). User may approve in UI.

todo_write

Update structured todos shown in the agent UI (Cursor-style task list).

git

Git in the open folder: status (default), diff, log, branch, show, commit. Prefer this over terminal("git …"). commit only when the user asked to commit.

codebase_search

Search the repo by meaning (identifiers, paths, comments) — not only exact grep. Use on real codebases before scattering new files.

browser

Open localhost or https, snapshot the page (visible text + screenshot + console + failed network), click or type. Use after npm run dev to SEE the UI — terminal logs are not a screenshot.

read_skill

Load the full SKILL.md body for a named skill from the catalog (git-workflow, verify-ui, codebase-search, plugins-mcp, or project skills).

attempt_completion

Call when the user request is actually done, with a short result. Requires tool evidence already in this turn (successful write/diff, tests, or localhost). A correct "nothing to change" also uses this instead of saying done in prose.

// 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.
🔐 secretANTHROPIC_API_KEY
🔐 secretBETTER_AUTH_SECRET
configBETTER_AUTH_URL
🔐 secretBUNNY_ACCESS_KEY
configBUNNY_STORAGE_HOST
configBUNNY_STORAGE_ZONE
configCOMSPEC
🔐 secretDEEPSEEK_API_KEY
🔐 secretFAL_KEY
configGITHUB_APP_SLUG
configGITHUB_CLIENT_ID
🔐 secretGITHUB_CLIENT_SECRET
🔐 secretGOOGLE_AI_API_KEY
configGOOGLE_CLIENT_ID
🔐 secretGOOGLE_CLIENT_SECRET
configMPESA_KES_PER_USD
🔐 secretOPENAI_API_KEY
configPAYHERO_ACCOUNT_ID
🔐 secretPAYHERO_BASIC_TOKEN
configPAYHERO_CALLBACK_URL
configPAYHERO_CHANNEL_ID
configPAYHERO_LIPWA_URL
🔐 secretPAYHERO_PASSWORD
configPAYHERO_USERNAME
configPAYPAL_CLIENT_ID
🔐 secretPAYPAL_CLIENT_SECRET
configPAYPAL_MODE
configPAYPAL_WEBHOOK_ID
🔐 secretREPLICATE_API_KEY
🔐 secretREPLICATE_API_TOKEN
🔐 secretRESEND_API_KEY
configSOUMTOK_OPEN_ACCESS
🔐 secretSOUMTOK_RESEND_API_KEY
configSYSTEMROOT
configTWILIO_ACCOUNT_SID
🔐 secretTWILIO_AUTH_TOKEN
configTWILIO_FROM
configWINDIR
🔐 secretXAI_API_KEY
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployDATABASE_URL
deployPORT
deploySMTP_FROM
deploySMTP_HOST
deploySMTP_PASS
deploySMTP_PORT
deploySMTP_USER
// 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

24/24 tools missing one or more hints — read (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); grep (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); glob (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +21 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

17/24 tools referenced in tests (71%)

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

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 3 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 Score](https://m8ven.ai/badge/mcp/trysoumtok/soumtok)](https://m8ven.ai/mcp/trysoumtok/soumtok)
Shows your grade and updates automatically. Prefer no grade? Append ?variant=verified to the badge URL.
commit: 2e5ba3cf26f99816ee2b639cb190e279009d8a30
code hash: 9c0199ea935305d58f5957023b47357fa13f6605e6eac36498b578c6175873cc
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