Pincushion Plugin vs Ssh MCP

A side-by-side look at the Pincushion Plugin and Ssh MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Pincushion Plugin logoPincushion PluginCoding Agents · Local subprocess (stdio)Visual feedback as agent work packets. Stakeholders drop pins on your live app; your AI coding agent reads each pin (selector, screenshot, DOM snippet, thread, acceptance criteria) via MCP and ships the fix, recording the commit/branch/PR on resolve. Install: npx pincushion-mcp.64GoodAuth: no auth requiredSsh MCP logoSsh MCPCoding Agents · Local subprocess (stdio)MCP server exposing SSH control for Linux and Windows servers via Model Context Protocol. Securely execute remote shell commands with password or SSH key authentication.68GreatAuth: other

Verdict: choose Pincushion Plugin for coding agents work as a local process; choose Ssh MCP for coding agents as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Pincushion Plugin logoChoose Pincushion Plugin when

  • You need dedicated capabilities in the Coding Agents domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
  • You want tools like get_annotations, search_annotations, get_feedback_summary.
Explore Pincushion Plugin

Ssh MCP logoChoose Ssh MCP when

  • You need dedicated capabilities in the Coding Agents domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: other.
  • You have the keys it needs: SSH_MCP_PASSWORD, SSH_AUTH_SOCK.
  • You want tools like list-connections, list-sessions, open-session.
Explore Ssh MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecPincushion Plugin logoPincushion PluginSsh MCP logoSsh MCP
CategoryCoding AgentsCoding Agents
Quality signal64/100 · Good68/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNo auth requiredother
PricingFreemiumFree
Required env varsNone listedSSH_MCP_PASSWORDSSH_AUTH_SOCK
Verified ownerCommunity listingCommunity listing
GitHub stars1816
Directory activity 1 views 0 installs 0 upvotes 3 views 0 installs 0 upvotes
Tools6514

Tools & capabilities

Pincushion Plugin tools 65

  • get_annotationsRetrieve annotation pins from the .feedback/ directory. Filter by page URL, LWC component name, or status. Use this to understand what feedback exists before making changes.
  • search_annotationsFull-text search across all annotation comments, selectors, component names, and tags.
  • get_feedback_summaryGet a high-level rollup of all open feedback: counts by status, page, and component. Use this to plan what to address first.
  • get_component_feedbackGet all feedback pins targeting a specific LWC component, with a plain-language summary ready for implementation. Returns element selectors, comments, and thread history.
  • resolve_annotationMark an annotation as resolved after addressing the feedback. Optionally add a resolution comment explaining what was changed.
  • add_agent_replyAdd a reply to an annotation thread (e.g. to ask a clarifying question or note a finding).
  • get_reply_candidatesUsed by /pincushion-replies. Returns pins where Pincushion AI should respond, with each candidate tagged by trigger reason. Two triggers: (a) "mention" — the latest thread message contains @pincushion AND was authored by a human; (b) "reply-on-bot-pin" — the pin was originally authored by Pincushion AI and the latest message is from a human. Skips resolved/archived pins and any pin where the latest message is already bot-authored (idempotency). Newest-first ordering so the slash command can pace replies.
  • add_bot_replyPost a Pincushion AI reply to a pin's thread. Hardcodes author="Pincushion AI" and authorEmail="pincushion-bot@pincushion.io" so the Chrome extension applies bot styling. ONLY call from the /pincushion-replies flow — never as a generic reply. Refuses to post if the latest thread message is already bot-authored (defense-in-depth idempotency).
  • get_pending_critiquesUsed by /critique-latest-deploy. Lists pending critique requests queued by the deploy-hook for the current license. Newer receipts also include a deployment event, prior page outcomes, project-page inventory, and latest per-device capture receipts for truthful local reconciliation before Crit runs. Newest-first. Free on all plans (the gating happened at enqueue time on the deploy-hook side: Pro/Team — including trial-Pro — always enqueue; free licenses enqueue while their monthly AI-action pool has headroom).
  • get_pending_deployment_frame_refreshesLists production deployment frame-refresh work independently of the Critique queue. Use this even when autoCritique is false. The result is redacted: it contains no deployment URL/hash, browser state, storage path, or capture proof. Start a selected run before capturing.
  • start_deployment_capture_runStarts one short-lived local frame-refresh run for an exact deployment and returns its opaque proof once. Keep the proof only in process and pass it to authenticated upload_page_snapshot/record_deployment_page_result/complete_deployment_capture_run calls; never put it in capture-snapshot, shell argv, a report, pin, status message, or file.
  • complete_deployment_capture_runRequests server-side frame-refresh completion after all exact page/device receipts have been recorded. The server rejects missing, stale, replayed, cross-deployment, or expired capture-run evidence and never treats a queue state as a current frame.
  • +53 more on the listing page

Ssh MCP tools 14

  • list-connectionsDiscover available hosts and connection status
  • list-sessionsList active sessions per host
  • open-sessionCreate a named interactive (stateful) or background session
  • close-sessionClose a session. A background session's command is signalled (INT/TERM/KILL) before its channel is dropped
  • read-session-outputRead output from background sessions (e.g., `tail -f`)
  • read-commandExecute allowlisted read-only commands (`ls`, `cat`, `grep`, ...)
  • run-commandExecute arbitrary commands (destructive/privileged need approval, unless `approvalPolicy = "auto"`)
  • privileged-commandExecute with sudo (needs approval, unless `approvalPolicy = "auto"`)
  • sftp-uploadUpload a file via SFTP (replaces the destination unconditionally)
  • sftp-downloadDownload a file via SFTP
  • sftp-listList a remote directory, bounded in entries and bytes
  • sftp-upload-fileStream a local file to the remote host, never through model context
  • +2 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Pincushion Plugin

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "jcooley8-pincushion-plugin": {
      "command": "npx",
      "args": [
        "-y",
        "pincushion-mcp"
      ]
    }
  }
}

Ssh MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "tufantunc-ssh-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ssh-mcp"
      ],
      "env": {
        "SSH_MCP_PASSWORD": "YOUR_SSH_MCP_PASSWORD_HERE",
        "SSH_AUTH_SOCK": "YOUR_SSH_AUTH_SOCK_HERE"
      }
    }
  }
}

Frequently asked questions

Pincushion Plugin is categorized under Coding Agents and uses a local stdio subprocess. Ssh MCP belongs to Coding Agents and uses a local stdio subprocess. Pick Pincushion Plugin for coding agents work and Ssh MCP for coding agents.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Pincushion Plugin is listed as freemium — a free tier with paid plans. Auth: no auth required. Ssh MCP is listed as free. Auth: other. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add jcooley8-pincushion-plugin and tufantunc-ssh-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Pincushion Plugin has a quality signal of 64/100 (Good) with 1 views, 0 installs and 1 GitHub stars. Ssh MCP has 68/100 (Great) with 3 views, 0 installs and 816 GitHub stars.