Public log

@solarisdk/mcp

Model Context Protocol server for the Solari cloud browser, sandboxes + desktops — drive them from Claude Desktop/Cowork, Claude Code, Cursor, etc.

npm · fingerprint f0692acae586da0f5e2a92f9 · repository · RSS

39tools
3recorded versions
45dtracked
changed 5d ago

What changed

Changed 2026-10-12 15:35 UTC

1 description rewritten, 2 schema or annotation changes with the description left byte-identical, 2 tools added.

+ tool added: solari_browser_create_profile

+ tool added: solari_browser_delete_profile

--- pinned/solari_browser_profiles
+++ observed/solari_browser_profiles
  {
-   "description": "List saved browser profiles for this account. A profile is a stored signed-in state (cookies + localStorage) that solari_browser_create({profileId}) replays, so the session starts already logged in.\nCheck here FIRST when a task will need a login: if a profile for that site already exists, use it and no human is involved at all. `version` is 1 and `populated` is false for a profile nobody has signed into yet — that one still needs solari_browser_login({profileName}).",
+   "description": "List saved browser profiles for this account. A profile is a stored signed-in state (cookies + localStorage) that solari_browser_create({profileId}) replays, so the session starts already logged in.\nCheck here FIRST when a task will need a login: if a profile for that site already exists, use it and no human is involved at all. `version` is 1 and `populated` is false for a profile nobody has signed into yet — that one still needs solari_browser_login({profileName}). No profile for this site? solari_browser_create_profile makes one; solari_browser_delete_profile removes one permanently.",
    "execution": {
      "taskSupport": "forbidden"
    },
--- pinned/solari_desktop_create
+++ observed/solari_desktop_create
  {
    "description": "Create a GUI desktop (microVM). Returns sessionId + streamUrl (noVNC).",
    "execution": {
+       },
+       "volumes": {
+         "description": "Persistent volumes to attach at start-up, by id and mount path. Contents survive this session being destroyed; attach the same volume to a new session afterward to pick up where you left off.",
+         "items": {
+           "additionalProperties": false,
+           "properties": {
+             "path": {
+               "description": "Absolute path to mount it at inside the guest, e.g. /data.",
+               "type": "string"
+             },
+             "volumeId": {
+               "description": "Volume id (vol_...) from the /volumes API (not an MCP tool yet).",
+               "type": "string"
+             }
+           },
+           "required": [
+             "volumeId",
+             "path"
+           ],
+           "type": "object"
+         },
+         "type": "array"
        }
      },
      "type": "object"
--- pinned/solari_sandbox_create
+++ observed/solari_sandbox_create
  {
    "description": "Create a headless sandbox (microVM). Returns its sessionId.",
    "execution": {
+       },
+       "volumes": {
+         "description": "Persistent volumes to attach at start-up, by id and mount path. Contents survive this session being destroyed; attach the same volume to a new session afterward to pick up where you left off.",
+         "items": {
+           "additionalProperties": false,
+           "properties": {
+             "path": {
+               "description": "Absolute path to mount it at inside the guest, e.g. /data.",
+               "type": "string"
+             },
+             "volumeId": {
+               "description": "Volume id (vol_...) from the /volumes API (not an MCP tool yet).",
+               "type": "string"
+             }
+           },
+           "required": [
+             "volumeId",
+             "path"
+           ],
+           "type": "object"
+         },
+         "type": "array"
        }
      },
      "type": "object"

Changed 2026-10-05 14:41 UTC

1 description rewritten, 2 schema or annotation changes with the description left byte-identical, 4 tools added.

--- pinned/solari_click
+++ observed/solari_click
  {
-   "description": "Click the desktop at (x, y).",
+   "description": "Click the desktop at (x, y). Set doubleClick: true for a double click (e.g. opening icons/files); button selects left (default), right, or middle.",
    "execution": {
      "taskSupport": "forbidden"
    },
+       "button": {
+         "enum": [
+           "left",
+           "right",
+           "middle"
+         ],
+         "type": "string"
+       },
+       "doubleClick": {
+         "type": "boolean"
+       },
        "sessionId": {
          "type": "string"
        },
--- pinned/solari_desktop_create
+++ observed/solari_desktop_create
  {
    "description": "Create a GUI desktop (microVM). Returns sessionId + streamUrl (noVNC).",
    "execution": {
+       "checkpointEveryMs": {
+         "description": "Take a durable checkpoint at most this often while the session runs.",
+         "type": "number"
+       },
+       "hibernateAfterParkedMs": {
+         "description": "Escalate a parked session to a full hibernate after this many ms parked.",
+         "type": "number"
+       },
+       "isolation": {
+         "description": "VM isolation tier. \"dedicated\" (default) is your own VM. \"hardened\" is your own VM with outbound network blocked -- verified on staging, not yet on prod; refused if the assigned host doesn't support it. \"shared\" is sandbox-only (a desktop's display is per-VM) and is not offered here.",
+         "enum": [
+           "dedicated",
+           "hardened"
+         ],
+         "type": "string"
+       },
+       "parkAfterMs": {
+         "description": "Auto-park (freeze, keep the slot) after this many ms of no activity.",
+         "type": "number"
+       },
+       "parkMaxMs": {
+         "description": "Wake a parked session unconditionally after this many ms, even if idle.",
+         "type": "number"
+       },
        "resolution": {
          "type": "string"
        },
+       },
+       "ttlSeconds": {
+         "description": "Legacy idle-window fallback in seconds, only used when the gateway's default timeout is not already set by another field. Usually unnecessary.",
+         "type": "number"
        }
      },
      "type": "object"

+ tool added: solari_drag

+ tool added: solari_mouse_down

+ tool added: solari_mouse_move

+ tool added: solari_mouse_up

--- pinned/solari_sandbox_create
+++ observed/solari_sandbox_create
  {
    "description": "Create a headless sandbox (microVM). Returns its sessionId.",
    "execution": {
+       "checkpointEveryMs": {
+         "description": "Take a durable checkpoint at most this often while the session runs.",
+         "type": "number"
+       },
        "cpu": {
          "type": "number"
        },
+       "hibernateAfterParkedMs": {
+         "description": "Escalate a parked session to a full hibernate after this many ms parked.",
+         "type": "number"
+       },
+       "isolation": {
+         "description": "VM isolation tier. \"shared\" runs inside a VM shared with your other shared sandboxes (smaller footprint, faster start). \"dedicated\" (default) is your own VM. \"hardened\" is your own VM with outbound network blocked -- verified on staging, not yet on prod; refused if the assigned host doesn't support it.",
+         "enum": [
+           "shared",
+           "dedicated",
+           "hardened"
+         ],
+         "type": "string"
+       },
        "memMb": {
          "type": "number"
        },
+       "parkAfterMs": {
+         "description": "Auto-park (freeze, keep the slot) after this many ms of no activity.",
+         "type": "number"
+       },
+       "parkMaxMs": {
+         "description": "Wake a parked session unconditionally after this many ms, even if idle.",
+         "type": "number"
+       },
        "template": {
          "type": "string"
+       },
+       "ttlSeconds": {
+         "description": "Legacy idle-window fallback in seconds, only used when the gateway's default timeout is not already set by another field. Usually unnecessary.",
+         "type": "number"
        }
      },
      "type": "object"

Current tools

Show all 39 tool fingerprints
solari_browser_autologin_site
365453f202d182d2
solari_browser_autologin_status
9f34eb3f3ed1c584
solari_browser_await_login
1c92584a4ff3665b
solari_browser_click
4f1e20f527359656
solari_browser_close
e38b626dfc83e738
solari_browser_create
370b750d33e90224
solari_browser_create_profile
1946cd9c6f9897f8
solari_browser_delete_profile
ce256a294faae966
solari_browser_evaluate
5b9d1fa3ca8aae83
solari_browser_key
5dc5bf4b4616322f
solari_browser_login
74a3b11c4447c80f
solari_browser_navigate
3c943bfa367ed65b
solari_browser_profiles
758aed7479f500f2
solari_browser_read_page
bfc731bfdea10101
solari_browser_replay_url
feb1a5bec39d41dd
solari_browser_save_profile
f347ea8fd617e09d
solari_browser_screenshot
f6f91779b8e81c08
solari_browser_type
7358497905ea0815
solari_click
a48316f3a7d3ff7b
solari_connect
38feefd028273492
solari_desktop_create
8b928d3022b7f3f1
solari_drag
9141456c742d5a97
solari_exec
8a63549a56e22c82
solari_get_preview_url
4de119321413fe49
solari_key
3f1bb61082363803
solari_kill
7e9e8c755944dbdc
solari_list
69c69781661d2807
solari_list_files
7a836a53f72f3151
solari_mouse_down
1d0f087ae259a2c6
solari_mouse_move
e872563a28be1069
solari_mouse_up
4eb323346a87a35f
solari_open_app
35c98a5dd18d09a7
solari_read_file
952c9ed67f27b032
solari_run_code
37a5260f9b942666
solari_run_command_bg
5f6d363ae9f74358
solari_sandbox_create
1db31528ed92ce18
solari_screenshot
982ef082b2ae5114
solari_type
c86ebc121f2852f2
solari_write_file
cdc590b5a504801a

Watch this server yourself

If you run this server, put the proxy in front of it. It pins these exact fingerprints on first connect and stops the session if they move.

npx -y mcp-pin@0.2.3 -- <your @solarisdk/mcp command>

Or subscribe to this page's RSS feed to be told when it changes.

Badge

mcp-pin status badge for @solarisdk/mcp

The badge states one fact about time and nothing else. It never claims a server is safe.

[![mcp-pin](https://mcp-pin.gautamkhosla.com/badge/c8a8dbeaca5a0602.svg)](https://mcp-pin.gautamkhosla.com/servers/c8a8dbeaca5a0602.html)