backchat (openma-ai/backchat) is an MCP server listed on the M8ven Trust Index. It scores 68 out of 100, grade C. It declares 66 tools. No publisher has claimed this listing.
Local-first desktop workspace for ACP agents—DeepSeek Harness, Claude Code, Codex, Gemini CLI, OpenCode, Hermes, and OpenClaw—with projects, tools, files, browser, and sessions.
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
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
openma-ai
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.
browser_tabsList, open, select, or close tabs in this task's visible Backchat browser window.
browser_navigateNavigate the active tab in this task's visible Backchat browser window.
browser_screenshotCapture the active in-app browser tab as PNG.
browser_clickClick a CSS selector, text= label, or :has-text() match in the active in-app tab.
browser_typeType into an editable element in the active in-app tab.
browser_get_textRead visible text from the active in-app tab or a matching element.
browser_evalEvaluate JavaScript in the active in-app browser tab and return its result.
browser_closeClose the active tab in this task's in-app browser window.
browser.listList available browser backends and their capabilities.
browser.documentationRead Backchat Browser tool contract, safety rules, and parity notes.
browser.getRead one browser backend descriptor by id, type, or alias.
browser.tabsList tabs for a browser backend.
browser.selected_tabRead the currently selected automation tab for a browser backend.
browser.user_open_tabsList read-only top-level tabs already open in the user browser.
browser.get_tabRead one browser tab by id without changing the selected automation tab.
browser.name_sessionName the current browser automation session for display and state snapshots.
browser.session_nameRead the current browser automation session name, if one was set.
browser.select_tabMark an existing browser tab as the selected automation tab.
browser.new_tabCreate a new tab in a browser backend.
browser.gotoNavigate an existing browser tab to an allowed URL.
browser.visibility_getRead whether a browser backend is visible to the user.
browser.visibility_setShow or hide a browser backend when it supports visibility.
browser.viewport_setResize a browser backend viewport when it supports viewport control.
browser.viewport_resetReset a browser backend viewport to its default size.
browser.reloadReload a browser tab.
browser.backMove a browser tab backward in history.
browser.forwardMove a browser tab forward in history.
browser.wait_for_urlWait until a browser tab reaches an exact URL.
browser.wait_for_load_stateWait until document.readyState reaches the requested load state.
browser.close_tabClose a browser tab.
browser.titleRead the current title of a browser tab.
browser.urlRead the current URL of a browser tab.
browser.screenshotCapture a screenshot of a browser tab.
browser.console_logsRead console log entries observed for a browser tab.
browser.dom_snapshotRead visible text from the page DOM.
browser.evaluateEvaluate JavaScript in the page context.
browser.clickClick an element matched by a CSS selector.
browser.typeSet text on an input or editable element matched by a CSS selector.
browser.keypressSend one keypress to the active page.
browser.cua_clickClick page coordinates using the browser CUA surface.
browser.dom_cua_snapshotRead compact visible interactable DOM for DOM CUA.
browser.dom_cua_clickClick a DOM CUA node by node_id.
browser.locator_countCount elements matched by a locator descriptor.
browser.locator_clickClick the first element matched by a locator descriptor.
browser.locator_fillSet text on the first input or editable element matched by a locator descriptor.
browser.locator_pressDispatch a keypress on the first element matched by a locator descriptor.
browser.locator_set_checkedSet checked state on the first checkbox or radio matched by a locator descriptor.
browser.locator_select_optionSelect an option on the first select element matched by a locator descriptor.
browser.locator_inner_textRead inner text from the first element matched by a locator descriptor.
browser.locator_attributeRead an attribute from the first element matched by a locator descriptor.
browser.dialogRead the currently active JavaScript dialog, if any.
browser.dialog_acceptAccept the currently active JavaScript dialog.
browser.dialog_dismissDismiss the currently active JavaScript dialog.
browser.page_assetsInventory page resource URLs discovered in a tab.
browser.bundle_assetsDownload page assets into a Backchat-managed local bundle.
browser.clipboard_read_textRead text from the host clipboard.
browser.clipboard_write_textWrite text to the host clipboard.
plugin_search_skillsSearch Codex-compatible plugin workflows before starting work that may match an installed skill. Read a matching skill before following it.
plugin_read_skillRead the complete SKILL.md instructions for a matching Codex-compatible plugin skill.
plugin_read_fileRead a relative reference, script, template, or asset text file from an installed plugin after its SKILL.md asks for it.
schedule_createCreate a one-time or recurring scheduled task using this task's harness and project.
schedule_listList schedules created by this task.
schedule_updateUpdate, pause, or resume one of this task's schedules.
schedule_deleteDelete one of this task's schedules and its run history.
openma_sessions_listList other local OpenMA sessions that can be referenced from the current task.
openma_sessions_readRead the user and assistant conversation from another local OpenMA session by its stable session ID.
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
Electron: Buffer performs incorrect byte length calculations resulting in heap buffer under/overflow
nanoid: non-secure generators can loop indefinitely with negative size
smol-toml: Denial of Service via malformed TOML documents
sharp: Vulnerabilities in libheif: GHSA-g89c-p67h-r497 and GHSA-2jg2-4ch7-h545
Electron: ProtocolResponse.url reuses the default session cache instead of the registering session
BACKCHAT_BROWSER_EXTENSION_PORTBACKCHAT_E2E_VISIBLEBACKCHAT_HOMEBACKCHAT_TEST_HOOKSELECTRON_RENDERER_URLNPM_CONFIG_REGISTRYOMA_PROFILEOPENMA_ACP_BIN_DIRSHELLTool annotations
8/66 tools have annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
66/66 tools missing one or more hints — browser_tabs (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); browser_navigate (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); browser_screenshot (missing: destructiveHint, idempotentHint, openWorldHint), +63 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.).
Shell command execution
1 call in production code run through a shell (src/main/session-cwd.ts:48)
Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.
Production dependencies are patched
0 critical, 2 high severity in production deps — nanoid@5.1.11 (high), smol-toml@1.6.1 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Dev dependencies
2 critical/high in dev-only deps (does not ship to users)
Upgrade dev dependencies when convenient.
Dependency freshness
1/35 production deps stale: rrule@2023-11-10 (2.9y)
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/openma-ai/backchat)?variant=verified from the 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