io.github.Kyzenkms/solisk-pc-mcp

Registre officiel Médias et design

Approval-gated PC control for AI clients: 97 tools for files, shell, GUI input, clipboard and audio.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package solisk
Claude Code
claude mcp add solisk-pc-mcp -- npx -y solisk@1.0.1
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "solisk-pc-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "solisk@1.0.1"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Install
  2. Windows GUI
  3. Connect an AI in 60 seconds
  4. Security model
  5. Everything, live
  6. Architecture
  7. OS support
  8. Self-host the relay
  9. CLI reference
  10. Verify
  11. FAQ



Install · Windows GUI · Connect an AI · Security · Self-host · CLI · FAQ

[!TIP] One product, three faces, one runtime per machine. Connect any MCP client by URL, approve once, call 97 tools — and watch every session, toggle every path, revoke anything. CLI on every OS, desktop control room on Windows, web dashboard (/app) anywhere.

Install

npm install -g solisk      # Node 22.5+ · or run without installing: npx solisk
solisk setup               # room name, owner key, approval mode — step by step
solisk --mode=http         # MCP server on 127.0.0.1:3000 (default)
solisk dashboard           # web control room at /app

Windows, Linux and macOS servers run the same command. Off-Windows serves the 45 portable tools + shell_exec; Windows-only automation stays off. The /app dashboard is the control room on every OS.

Windows GUI

  1. Download PC Control MCP 1.0.0.msi from Releases — the classic Setup .exe rides along.
  2. Run it: point-and-click control room, same engine as the CLI.
  3. Already have the CLI? solisk gui setup --installer <path-to-.msi> installs it silently.
  4. On Linux/macOS, solisk gui refuses by design and points you to the web dashboard.

[!WARNING] The build is unsigned, so SmartScreen asks once: More info → Run anyway. An EV certificate ends this; it is budgeted, not done.

Connect an AI in 60 seconds

flowchart LR
    A[Copy MCP URL<br/>from Setup] --> B[Paste as connector<br/>in Claude / ChatGPT]
    B --> C[Approve once<br/>consent + room key]
    C --> D[Calling tools.<br/>Reconnects need no re-auth.]
    style D fill:#4fd1b5,color:#03211b
ConnectAuthorizeControl

[!NOTE] First connect fails but a retry works? Claude cached a failed discovery — remove and re-add the connector once, consent then appears directly.

Security model

#GuaranteeHow
1Bearer-onlyOwner key, scoped key, OAuth token, or device cookie on every data route. Shells public, data never.
2Zero-trust relayAuthenticates before forwarding one byte. Takeovers logged and blocked.
3PKCE + exact redirects + bound tokensNo cross-room token reuse, ever.
4Hashed at restscrypt with unique salts. Secrets never hit logs or disk plaintext.
5Fail closedUnknown session → re-init. Offline → local keeps working, remote redials. 300/min relay, 400/min local, 5 sessions, idle expiry.
6Deliberate destructionFunnel, turbo, URL regen all confirm first and state what happens.

Full policy: SECURITY.md · found something? Security advisory — not a public issue.

Everything, live

Four paths inHosted relay · Cloudflare tunnel (quick or your own domain) · tailnet · web dashboard. Each toggles live; killing the dashboard returns 404 on /app — not just tailnet.
Honest sessionsOne live AI reads 1. Ghost sessions expire after 10 idle minutes; every surface (GUI, CLI, API) reads the live count.
Keys that fitScoped client keys, fail-closed defaults, zero-downtime rotation, 30-day remembered devices.
No-fight runtimeCLI attaches to a running GUI, borrows its key transparently, and refuses to boot a second server over it.
UpdatesIn-app release notes, skip-a-version supported, mandatory releases cannot be skipped.

Architecture

flowchart TB
    AI["AI client<br/>Claude.ai / ChatGPT / Cursor"]
    AI -->|MCP URL + OAuth 2.1<br/>PKCE S256, resource-bound tokens| RELAY
    subgraph RELAY["Cloud relay"]
        R1[rooms · tokens · rate limits<br/>scrypt-hashed keys]
    end
    RELAY -->|one outbound WebSocket per PC<br/>takeover-protected| PC
    subgraph PC["Your machine :3000"]
        P1[StreamableHTTP · 97 tools · 5 sessions max]
        P2[Cloudflare tunnel<br/>quick or your domain]
        P3[tailnet serve · web dashboard /app]
    end

One config file, one event bus, one session store. Thin faces (Electron, CLI, web shim) never own state.

OS support

OSCLI (solisk)Web dashboard (/app)GUITools
Windows 10/11 x64✅ local + relay + tunnel✅✅ full control room97 native
Linux✅ server · stdio · tunnels · Tailscale✅❌ — solisk gui refuses, points to /app45 portable + shell_exec
macOS✅ server · stdio✅❌ — same45 portable + shell_exec

Windows-only automation (mouse/keyboard hooks, screenshots, native dialogs) stays off elsewhere; everything portable stays on. Relay, tunnels, OAuth, keys, remembered devices, sessions, update checks — identical on all three.

Requirements
  • Node ≥ 22.5 for the CLI.
  • Windows 10/11 x64 for the GUI.
  • Nothing else — no Docker, no reverse proxy needed for localhost use.

Self-host the relay

ssh root@YOUR_VPS
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Kyzenkms/solisk-pc-mcp/main/self-hosted-setup/vps/install.sh)"

What the script does

Picks your domain type (yours or sslip.io for testing), then runtime (Docker or PM2), then prints the room + key to paste into the app. Backups, firewall, updates: self-hosted-setup/README.md.

CLI reference

solisk is the command — pc-control remains as a compatibility alias.

Daily

solisk dashboard [--no-open]      web console for the running server
solisk doctor [--fix]             11 health checks — 0 failing is the goal
solisk logs [--lines N]           live server log, whichever face owns it
solisk setup                      step-by-step onboarding wizard
solisk backup                     config snapshot for restores

Access control

solisk config get|set|validate    ports, modes, domains (secrets refused)
solisk rotate-key                 new owner key, zero-downtime rotation
solisk keys list|add|revoke       scoped client keys (fail-closed defaults)
solisk devices list|revoke        remembered browsers
solisk relay status|retry         room state, redial

Exposure

solisk tunnel off|quick|custom    + login, create, route, forget, status
solisk tailscale status|serve|off funnel is deliberate and confirmed
solisk gui status|setup           detect install, install from .exe or .msi

Every attach command works with zero flags next to a running GUI.

Verify

cd relay-server && node --test test/oauth.test.js   # OAuth regression suite
node test-live.js                                   # end-to-end vs a running server
solisk doctor                                       # this machine — 0 failing is the goal

FAQ

One AI shows N sessions

Stale IDs from reconnects — they expire after 10 idle minutes. The live count is exact at connect time.

CLI says key refused next to a running GUI

It borrows the GUI key automatically and tells you (fingerprint shown). solisk gui status shows both fingerprints.

After restart it shows 0 sessions

Correct — sessions live in memory. The moment the client re-initializes, the count appears. Grants and keys persist; nobody re-authenticates.

Can I run the GUI on Linux?

No — the control room is Windows-only by design. On Linux and macOS use the CLI plus the web dashboard at /app, which is the same control room in a browser.

MIT · Solisk PC Control MCP · v1.0.0 · solisk.org

Questions fréquentes

Qu'est-ce que io.github.Kyzenkms/solisk-pc-mcp ?

Approval-gated PC control for AI clients: 97 tools for files, shell, GUI input, clipboard and audio.

Comment installer io.github.Kyzenkms/solisk-pc-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add solisk-pc-mcp -- npx -y solisk@1.0.1. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.Kyzenkms/solisk-pc-mcp ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

io.github.Kyzenkms/solisk-pc-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.Kyzenkms/solisk-pc-mcp ?

Il est publié par Kyzenkms. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.