SassyMCP (sassyconsultingllc/SassyMCP) is an MCP server listed on the M8ven Trust Index. It scores 16 out of 100, grade F. It declares 272 tools. No publisher has claimed this listing.
One MCP server, 270 tools, replaces 75+ — files, shell, GitHub, Android, desktop vision, security & forensics, persistent memory. Smart context-saving tool loading, safe-delete guardrails, and an orphan-proof self-healing process supervisor. Works with Claude Desktop, Cursor, Windsurf, and any MCP client.
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
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
sassyconsultingllc
Source: Glama · also listed on 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.
sassy_setup_toolsManage external tool dependencies (tesseract, adb, nmap, plink, scrcpy, cloudflared).
sassy_adb_devicesList connected Android devices.
sassy_adb_shellRun shell command on Android device.
sassy_adb_packagesList installed packages.
sassy_adb_pullPull file from Android to local.
sassy_adb_pushPush file from local to Android.
sassy_adb_installInstall APK on Android device.
sassy_adb_logcatGet Android logcat output.
sassy_adb_screencapCapture Android screen to local PNG.
sassy_adb_app_infoGet detailed info about an installed Android app.
sassy_adb_wifi_connectConnect to Android device over WiFi.
sassy_launch_appLaunch an application by name.
sassy_launch_exeLaunch an executable directly by path.
sassy_focus_windowBring a window to the foreground by title substring.
sassy_close_windowClose a window by title. Graceful unless force=True (kills the process).
sassy_resize_windowMove and/or resize a window by title.
sassy_snap_windowSnap a window to a screen edge (like Win+Arrow).
sassy_audit_logRead recent audit log entries.
sassy_audit_searchSearch audit log for a keyword.
sassy_audit_false_positivesShow recent shell-interceptor pattern matches (blocks + bypasses).
sassy_audit_clearRotate the audit log to a timestamped archive.
sassy_bt_devicesList paired Bluetooth devices.
sassy_bt_scanList all Bluetooth devices.
sassy_bt_androidList Bluetooth devices from Android.
sassy_clipboard_getGet the system clipboard text.
sassy_clipboard_setSet the system clipboard text.
sassy_clipboard_to_androidSend the host clipboard to Android via base64 encoding.
sassy_clipboard_from_androidGet Android clipboard to the host.
sassy_combo_pr_reviewFetch PR metadata, diff, comments, and CI check status in one call.
sassy_combo_phone_observePhone state + UI tree + (optional) low-res screenshot in one call.
sassy_combo_codebase_grepRanked codebase search with context windows — one call replaces sassy_search_files + N x sassy_read_file.
sassy_peer_announceAnnounce/refresh this agent as a live peer in the coordination mesh.
sassy_peer_listList peers in the coordination mesh, newest heartbeat first.
sassy_peer_delegateHand a specific task to ONE peer (targeted handoff).
sassy_coordination_boardOne-call coordination snapshot for the Sassy Brain cockpit view.
sassy_crosslink_startStart the Crosslink HTTP API for LAN-accessible cross-device messaging.
sassy_crosslink_stopStop the Crosslink HTTP API server.
sassy_crosslink_sendSend a message to the crosslink queue.
sassy_crosslink_recvRead messages from the crosslink queue. Marks them as read for this session.
sassy_crosslink_statusCheck crosslink status: server running, sessions, message counts, channels.
sassy_crosslink_registerRegister a session. session_id auto-generated if empty. name/platform for identification.
sassy_crosslink_broadcastBroadcast a message to ALL known channels.
sassy_edit_blockSurgical file edit: find old_text and replace with new_text.
sassy_edit_multiApply multiple edits to a file in one call.
sassy_eventlogRead the system log. Windows: log_name = System/Application/Security (Get-WinEvent). macOS: unified log (`log show`). Linux: journald (`journalctl`). level: error/warning/information. source: provider / process / subsystem name. log_name is Windows-only; ignored elsewhere.
sassy_eventlog_searchSearch the system log for a keyword across hosts (Get-WinEvent / `log show` predicate / `journalctl -g`).
sassy_android_logcatRead Android logcat.
sassy_safe_deleteMove a file or directory to a _DELETE_ staging folder for review.
sassy_read_fileRead file contents with line-based pagination.
sassy_read_multipleRead multiple files at once. paths = JSON array of file paths.
sassy_write_fileWrite or append to a file. mode: rewrite | append.
sassy_list_dirList directory contents. [FILE]/[DIR] prefixes. depth controls recursion.
sassy_search_filesSearch for files by name or content.
sassy_moveMove or rename a file/directory.
sassy_copyCopy a file or directory tree.
sassy_file_infoGet detailed file/directory metadata.
sassy_mkdirCreate a directory (and any missing parents).
sassy_gh_get_meGet the authenticated GitHub user's profile.
sassy_gh_get_teamsList teams for an organization.
sassy_gh_get_team_membersList members of a team.
sassy_gh_search_reposSearch GitHub repositories.
sassy_gh_get_file_contentsGet file or directory contents. Returns decoded content + SHA.
sassy_gh_create_fileCreate a NEW file. Use push_files or update_file for existing files.
sassy_gh_update_fileUpdate EXISTING file. Auto-fetches blob SHA if not provided.
sassy_gh_delete_fileDelete a file from a repository.
sassy_gh_push_filesPush multiple files atomically via Git Data API. PREFERRED for all ops. files: JSON array of {"path": "...", "content": "..."} objects.
sassy_gh_create_repoCreate a new GitHub repository.
sassy_gh_fork_repoFork a repository.
sassy_gh_update_repoUpdate repo settings. settings: JSON e.g. {"visibility":"public"}
sassy_gh_get_commitGet details for a specific commit.
sassy_gh_list_commitsList commits on a branch.
sassy_gh_list_branchesList branches in a repository.
sassy_gh_create_branchCreate a new branch.
sassy_gh_list_tagsList tags in a repository.
sassy_gh_get_tagGet details for a specific tag.
sassy_gh_list_releasesList releases.
sassy_gh_get_latest_releaseGet latest release.
sassy_gh_get_release_by_tagGet release by tag name.
sassy_gh_list_starredList starred repos. Empty username = authenticated user.
sassy_gh_star_repoStar a repository.
sassy_gh_unstar_repoUnstar a repository.
sassy_gh_get_treeGet a Git tree. recursive=True for full listing.
sassy_gh_get_issueGet issue details.
sassy_gh_list_issuesList issues.
sassy_gh_create_issueCreate issue. labels/assignees: comma-separated.
sassy_gh_update_issueUpdate an issue.
sassy_gh_add_issue_commentAdd a comment to an issue.
sassy_gh_search_issuesSearch issues and PRs across GitHub.
sassy_gh_get_prGet PR details.
sassy_gh_list_prsList pull requests.
sassy_gh_create_prCreate a pull request.
sassy_gh_update_prUpdate a PR.
sassy_gh_merge_prMerge a PR. merge_method: merge, squash, rebase.
sassy_gh_pr_filesGet files changed in a PR.
sassy_gh_pr_reviewsGet reviews on a PR.
sassy_gh_pr_review_commentsGet review comments on a PR.
sassy_gh_create_pr_reviewCreate PR review. event: APPROVE, REQUEST_CHANGES, COMMENT.
sassy_gh_update_pr_branchUpdate PR branch with latest from base.
sassy_gh_pr_statusGet combined status checks for a PR.
sassy_gh_search_codeSearch code across GitHub.
171 further tools are not listed here. The complete surface is in the source.
SASSYMCP_HOMECrash-survivable control. A pidfile + on-disk registry under $ mean supervise status/stop work even when the bridge is down, so an operator or agent can recover a wedged system.SASSYMCP_NO_AUTHSASSYMCP_AUTH_TOKENRun the server in HTTP mode (sassymcp.exe --http, default 127.0.0.1:21001) and point your client at http://127.0.0.1:21001/mcp/. Set if the bind is non-loopback.SASSYMCP_ALLOWED_HOSTSSASSYMCP_LOAD_ALLLoad every tool groupSASSYMCP_GROUPSLoad specific groupsSASSYMCP_DEVEnable live reload (dev mode)SASSYMCP_NO_UPDATE_CHECKDisable the startup update check (no GitHub API call)SASSYMCP_PANELpanel.enabled / =1 to launch it at boot), then open theINCEPTION_API_KEYSASSYMCP_REPOOverride the auto-detected repo root in tools/mercury_audit_sassymcp.py (dev tool only)LEMONSQUEEZY_API_BASELEMONSQUEEZY_API_KEYSSH_HOSTRemote Linux hostname/IPSSH_USERRemote Linux usernameSSH_KEYSSH_PASSRemote Linux passwordJOINT_CHANNELHERMES_MODELOLLAMA_URLMAX_TURNSPOLL_SECONDSHERMES_AUTORUNHERMES_TOOLSHERMES_TOOL_HOPSLLM_API_KEYOPENROUTER_API_KEYNO_COLORTERMSASSYMCP_BILLING_BASESASSYMCP_LS_BASESASSYMCP_LS_VARIANT_MAPSASSYMCP_NET_PROBE_TIMEOUTSASSYMCP_OFFLINE_GATESASSYMCP_ADBSHELLSASSYMCP_RESOURCE_URLSASSYMCP_OAUTH_ISSUERSASSYMCP_PANEL_TOKENXDG_CONFIG_HOMESASSYMCP_LICENSE_SECRETSASSYMCP_TUNNEL_NAMEGITHUB_TOKENValidates an existing GITHUB_TOKEN, or opens [github.com/settings/tokens](https://github.com/settings/tokens?type=beta), walks you through scope selection, then saves and re-validates.GITHUB_PERSONAL_ACCESS_TOKENSASSYMCP_CROSSLINK_TOKENSSH_SESSIONSSH_AUTH_SOCKPLINK_PATHSSH_CLIENT_PATHHERMES_NODE_PATHTool 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
272/272 tools missing one or more hints — sassy_setup_tools (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); sassy_adb_devices (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); sassy_adb_shell (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +269 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.
Descriptions match behaviour
1 tool describes read intent but its handler mutates — sassy_edit_block (line 157: p.write_text(new_content, encoding="utf-8"))
Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.
Tool test coverage
Only 50/272 tools referenced in tests (18%)
Write tests that reference each tool by name so every tool has at least one test.
No access to sensitive paths
Reads sensitive paths: /Library/Keychains
Remove reads of sensitive system paths. If you genuinely need them, document why in the README.
Secrets not logged
2 secret values sent to print/logger.info
Redact or omit secret values from log output.
Tool description accuracy
sassy_edit_block: description implies read-only but handler writes/deletes/executes
Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.
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/sassyconsultingllc/sassymcp)?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