Pixso for VS Code
Pixso for VS Code lets you browse Pixso files from the activity bar, open design files in an editor webview, and expose Pixso MCP tools to local MCP clients such as Cursor and Claude Desktop.
Features
- Focus the Pixso activity bar view, log in, and browse recent files, drafts, favorites, and teams.
- Open Pixso design files in a VS Code editor webview from the sidebar or by pasting a design file URL.
- Forward Pixso bridge messages between the webview and the VS Code extension host.
- Expose the complete Pixso design tool set through a local MCP endpoint on port 3667.
How to Use
1. Install and Open Pixso
Install the extension, then open Pixso in either of these ways:
- Click the Pixso icon in the VS Code activity bar.
- Run
Pixso: Open Pixso from the command palette.
This focuses the Pixso sidebar. If you are not logged in, the extension opens the login webview automatically. Pixso design files open in a separate editor webview when you select a file from the sidebar or run Pixso: Open Design File.
The configured Pixso base URL is controlled by pixso.pixsoUrl. Use the base URL only (for example https://pixso.cn or https://pixso.net); do not include /app.
2. Log In
Use the Pixso sidebar welcome action or run Pixso: Log In.
After login succeeds, the extension stores the Pixso auth state in VS Code secret storage and refreshes the sidebar file list.
3. Browse and Open Files
After login, the Pixso sidebar shows:
- Recent files
- Drafts
- Favorites
- Teams and projects
Click a file in the sidebar to open it in a Pixso editor webview. Run Pixso: Refresh Files from the command palette to reload the file list. Use the filter icon in the Pixso view title to switch spaces.
You can also run Pixso: Open Design File and paste a Pixso design file URL.
The extension exposes the complete Pixso design tool set over HTTP MCP. Open a design file in the Pixso webview and wait for the design editor to finish loading before connecting an MCP client.
HTTP MCP Server (Cursor)
The available tools include design inspection and editing, screenshots, design-to-code, and AI-edit capabilities.
Default endpoint:
http://127.0.0.1:3667/mcp
Create .cursor/mcp.json in your project:
{
"mcpServers": {
"pixso": {
"url": "http://127.0.0.1:3667/mcp"
}
}
}
If you change pixso.mcpHttpPort, update the URL to match. The server is enabled by default (pixso.mcpHttpEnabled: true).
Note: The upper MCP server (port 39392, ai_edit orchestration tool) is temporarily disabled in this release. Use the sub-tools endpoint above for now.
Commands
These commands are configured by the extension.
| Command ID |
Command Palette Title |
Description |
pixso.openPixsoView |
Pixso: Open Pixso |
Focuses the Pixso sidebar and opens the login flow when needed. |
pixso.login |
Pixso: Log In |
Opens the Pixso login flow in a webview and stores the returned auth state. |
pixso.logout |
Pixso: Log out |
Clears Pixso auth state, clears file-list cache, and closes Pixso webviews. Also available from the More actions submenu in the Pixso view title. |
pixso.refreshFiles |
Pixso: Refresh Files |
Refreshes the Pixso sidebar file list. |
pixso.filterSpace |
Pixso: Select Space |
Opens the Pixso space switch webview. Also available from the filter icon in the Pixso view title. |
pixso.setPixsoUrl |
Pixso: Set Pixso URL |
Updates the global pixso.pixsoUrl setting. Use the base URL only, for example https://pixso.cn. |
pixso.focusView |
Pixso: Focus on Pixso View |
Focuses the Pixso activity bar view and the file tree. |
pixso.openDesignFile |
Pixso: Open Design File |
Prompts for a Pixso design file URL and opens it in a webview. Requires login. |
pixso.openCurrentDesignInBrowser |
Pixso: Open Current Design in Browser |
Opens the active Pixso design webview URL in the external browser. Requires an open design file webview. |
pixso.selectNextLayer |
Pixso: Select Next Layer |
Sends a select-next-layer command to the active Pixso webview. Requires an open Pixso webview. |
pixso.selectPreviousLayer |
Pixso: Select Previous Layer |
Sends a select-previous-layer command to the active Pixso webview. Requires an open Pixso webview. |
The extension also registers pixso.openFile for sidebar file nodes. It is used internally when clicking files in the Pixso TreeView.
Settings
| Setting |
Type |
Default |
Description |
pixso.pixsoUrl |
string |
https://pixso.cn |
Pixso base URL. Do not include /app; the extension adds it when opening Pixso pages. |
pixso.mcpHttpEnabled |
boolean |
true |
Enable the HTTP MCP server on port 3667. |
pixso.mcpHttpPort |
number |
3667 |
Local port for the HTTP MCP server. The server always binds to 127.0.0.1. |
pixso.mcpUpperHttpEnabled |
boolean |
true |
(Temporarily inactive) Upper HTTP MCP server setting; the server is not started in this release regardless of this value. |
pixso.mcpUpperHttpPort |
number |
39392 |
(Temporarily inactive) Reserved port for the upper HTTP MCP server when re-enabled. |
MCP Lifecycle
MCP tools are available only when a Pixso design editor bridge is ready in an open webview panel.
Typical flow:
- Focus the Pixso sidebar and log in if needed.
- Open a design file in a Pixso editor webview.
- Wait for the design editor bridge to send
ready.
- Connect your MCP client to the HTTP endpoint.
Notes:
- When a design file opens, closes, or the active Pixso panel changes, the extension updates existing MCP sessions and sends one
notifications/tools/list_changed notification after the complete tool set is synchronized.
- MCP routes to the active / visible Pixso webview panel. Switch focus if you have multiple panels open.
- If all Pixso webview panels are closed, or the page leaves the design editor, the bridge stops and the current tool list becomes empty.
- Clients that do not process MCP tool-list change notifications might still require a manual MCP restart or reload.
- When a webview is open but the design editor has not finished loading,
tools/call may fail with a bridge-not-ready error after queuing.
HTTP MCP
|
HTTP MCP (pixso.mcpHttpEnabled) |
| Extension-side transport |
Streamable HTTP (/mcp, port 3667) |
| Client-facing transport |
HTTP |
| Tool set |
Pixso design tools |
| Best for |
Cursor and other Streamable HTTP MCP clients |
The upper MCP channel (port 39392, ai_edit orchestration tool) is temporarily disabled.
Troubleshooting
| Problem |
What to Check |
| HTTP MCP endpoint connection refused |
Confirm the extension is activated and pixso.mcpHttpEnabled is true. Check pixso.mcpHttpPort (default 3667). |
tools/list is empty |
Open a design file in a Pixso webview and wait for the editor to load. Clients that do not process tools/list_changed may need an MCP restart or reload. |
Pixso bridge is not ready yet; open a design file in Pixso and wait for the editor to load. |
A Pixso webview is open, but the design editor bridge is not ready yet. Open or return to a design file and wait for the editor to finish loading. |
tools/call succeeds but does nothing |
No Pixso webview panel is open, or the bridge is unavailable. Open a design file webview first. |
| Port binding failure |
Another process is using pixso.mcpHttpPort. Change the setting or stop the conflicting process. |
| File list is empty |
Confirm that you are logged in, run Pixso: Refresh Files, and check whether the configured pixso.pixsoUrl points to the expected environment. |