Sublime Text MCP
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for Sublime Text 4. Lets AI coding agents read and control a running ST instance.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 1 จาก 1 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังใหม่มาก↓ 260/สัปดาห์ · ★ 0
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนเครื่อง
- ช่องทาง (transport): stdio
- หมวด: เครื่องมือนักพัฒนา
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
- รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
- ทะเบียนไม่ได้ระบุ key ที่ต้องใส่
ต้องเตรียมก่อน
- PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"sublime": {
"command": "uvx",
"args": [
"sublime-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add sublime -- uvx sublime-mcpหรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"sublime": {
"command": "uvx",
"args": [
"sublime-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"sublime": {
"type": "stdio",
"command": "uvx",
"args": [
"sublime-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ทำอะไรได้บ้าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 10 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันด้วยบัญชี GitHub dpc00 ซึ่งเป็นเจ้าของ repo
- … ยังไม่ตรวจ
ยังมีคนดูแล
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- – ไม่เกี่ยว
endpoint ตอบ
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับตัวอื่นในหมวด เครื่องมือนักพัฒนาi
- ดาวมากกว่า 0% ของอีก 5720 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 37% ของอีก 5720 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 5720 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
Sublime Text MCP ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.7.5) เข้า registry 2 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี REA, Netdata, Front-End Checklist
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Sublime-MCP: Universal AI Agent Connector for Sublime Text
Gives any MCP-speaking AI agent real control over a running Sublime Text 4 instance: run registered ST commands, read/write views and selections, inspect tabs and project state, and eval_python in Sublime's plugin host for anything the typed tools don't cover.
Controlling another installed Sublime package (a debugger, a language server, anything else) doesn't need its own dedicated MCP server — get_package_mcp_info plus eval_python/run_command covers it directly. See skills/package-skill-generator to turn a one-time investigation into a small, reusable skill file instead.
Toolset
Eight workflow tools are advertised by default (discover_tools, batch, get_help, get_active_file, project_search, save_file, str_replace_based_edit_tool, ui_screenshot). discover_tools lists a tree of categories (category=) or searches (query=) the complete internal catalog of 379 typed Sublime capabilities, and batch invokes discovered capabilities without flooding the model's initial tool context.
Since 1.9.0, 160 of those tools are generated wrappers named after Sublime Text's own commands (tools/generate_st_command_tools.py, data in tools/st_commands_metadata.json); what each was observed to do on a bare Sublime Text 4215 is in tools/st_commands_behavior.json, and the hand-written tools' behaviour is in tools/st_hand_written_behavior.json. Since 1.10.0, list_native_windows and dismiss_native_window (Windows) list and dismiss a native dialog or menu while it blocks Sublime's main thread. See AGENT_GUIDE.md.
What it can do now (1.10 to 1.13)
- See and operate Sublime's own windows (Windows only, 1.13).
ui_screenshotreturns a real image of any Sublime window, also one behind others, an open dialog or menu (kind,window_title), a not-front tab (tab), cropped or zoomed (region,scale,max_width); it is one of the eight default tools, and the image reaches the client as an image, also throughbatchand the proxies.ui_press_key,ui_type_text,ui_clickandui_hover(with a picture of the popup, including language-server hovers) operate palettes, quick panels and menus. Real mouse and keys wait until the person at the computer has been idle (wait_idle_s), so they never type over them. - Work through native dialogs (1.10, 1.12.4).
list_native_windowsanddismiss_native_windowlist and dismiss a dialog or menu that has blocked Sublime's main thread;close_filewithdiscardcloses a tab with unsaved edits without the Save Changes dialog. - Drive quick panels and menus (1.12).
get_quick_panel,pick_quick_panel(withwait_msfor a list that is still loading) andclick_menu_item;get_view_regionsandget_view_phantoms(withlast,html,max_chars) inspect what a plugin drew. Panels of older Python 3.3 packages are visible with"install_py33_helper": true(1.16, off by default); a pick whose callback opens a dialog answerspending(1.16.1) and the dialog is answered withdismiss_native_window. - Dialogs and tabs (1.18).
list_native_windowsreads the message of a Windows task dialog (Package Control's "needs to be restarted" text) and answers while a dialog blocks Sublime;dismiss_native_windowclicks again if the first click is dropped and can cancel the Windows file-operation progress window.close_fileneeds apath,nameorindexand never closes the active tab. Theinstall_packageandsearch_packagestools are gone: installing and searching are Package Control's job, so drive its own picker withrun_commandandpick_quick_panel. - Share one Sublime between agents (1.12.0).
claim_resource,release_resourceandlist_claimslet agents take turns on the input and control panels. - Safer by default. Browser-origin requests are refused (1.12.2), the visible-console read only touches Sublime's own window and restores focus and clipboard (1.12.1),
eval_pythoncannot take down the plugin host withsys.exit()(1.12.3), and Windows-only tools are hidden on other platforms (1.11.2). - A tool tree (1.11).
discover_toolswith no arguments walks 12 categories instead of dumping a catalog.
Agent how-to: AGENT_GUIDE.md (also served live by get_help). Release history: CHANGELOG.md.
Ports
sublime-mcp serves MCP streamable HTTP at /mcp, legacy MCP SSE at /sse, and a plain HTTP bridge. The bundled Node/Python proxies use sublime-mcp's HTTP bridge only. Defaults:
| Plugin | MCP SSE | HTTP bridge | Settings file |
|---|---|---|---|
| sublime-mcp | 9502 (Win) / 9503 (macOS/Linux) | 9500 (Win) / 9501 (macOS/Linux) | MCP Commander.sublime-settings |
The settings file takes "mcp_port" and "http_port" keys; edit your copy under Packages/User/ (Preferences > Package Settings) to override the defaults above — no env vars needed.
SSE URL form: http://127.0.0.1: /sse. The bundled Node/Python proxies talk to sublime-mcp's HTTP bridge, not SSE; override with SUBLIME_MCP_BASE (e.g. http://127.0.0.1:9500).
Security
Both servers are loopback-only (`127.0.0.1`) by default and have no authentication — one of the tools they expose (eval_python) is arbitrary code execution in Sublime's own process, so treat this server as equivalent in trust level to your own login session. All of the following are keys in MCP Commander.sublime-settings:
- `allow_lan_access` (default
false) — binds0.0.0.0instead of127.0.0.1, making both servers reachable from every other device on your network, still with no authentication. Only turn this on for a specific reason a client can't reach127.0.0.1directly (e.g. a WSL client when WSL's networking mode doesn't forward localhost to the Windows host). - `auth_token` (default unset) — requires a matching
Authorization: Bearerheader on every request. This is the one control that works regardless of bind address, since loopback-only doesn't protect against another process, or another user on a shared/multi-user machine, reaching127.0.0.1on the same host. Generate a real random value yourself; don't use a short or guessable string. Not every MCP client UI exposes custom headers — check yours supports one before relying on this. If you connect through the bundled Node/Python proxy instead of a direct SSE/HTTP URL, set the same value asSUBLIME_MCP_TOKENin the proxy process's environment. - `disabled_tools` (default
[]) — a list of tool names to refuse and hide from discovery entirely, e.g.["eval_python", "run_command"]to remove the two tools with the broadest reach while keeping the rest of the server usable.
Browsers are kept out in two ways. The real tool-call endpoints send no Access-Control-Allow-Origin header, and, because a missing CORS header does not stop a request from being sent, with no auth_token and the default loopback bind they also refuse any request whose Origin or Host header names something other than loopback (including Origin: null). Command-line and desktop MCP clients send no Origin and are not affected. This does not protect against another process on the same machine: set auth_token for that.
Installation
1. Install the Sublime Text plugin
Manual (also the path for developing sublime-mcp itself):
git clone https://github.com/dpc00/sublime-mcp.git
cd sublime-mcp
The repo root is the package. Symlink it into ST's Packages/ directory as sublime-mcp.
Windows (Command Prompt):
mklink /J "%APPDATA%\Sublime Text\Packages\sublime-mcp" "C:\path\to\sublime-mcp"
macOS:
ln -s "$(pwd)" "$HOME/Library/Application Support/Sublime Text/Packages/sublime-mcp"
Linux:
ln -s "$(pwd)" "$HOME/.config/sublime-text/Packages/sublime-mcp"
Restart Sublime Text after linking so the plugin loads.
2. Configure your agent
Point your agent straight at the server the plugin starts inside Sublime Text. No helper program is needed. Use the streamable-HTTP URL if your client supports it (Codex example; no mcp-remote wrapper is required):
[mcp_servers.sublime-mcp]
type = "http" url = "http://127.0.0.1:9502/mcp"
Optional proxies. Only for clients that cannot connect to a URL directly, a small Node or Python proxy can sit in between:
cd packages/node-proxy && npm install . && npx sublime-mcp # Node
cd packages/python-proxy && pip install . && sublime-mcp # Python
Restart or open a new Codex session after changing MCP configuration. Verify the entire path before debugging agent behavior:
npx sublime-mcp doctor
The report checks the HTTP bridge, MCP handshake, and focused tool catalog. From Sublime's Command Palette, MCP Commander: Connection Doctor shows the main server-side state. (Controlling a debugger or language server doesn't need its own MCP server or doctor check — see "Toolset" above and skills/package-skill-generator.)
Other MCP clients that take a JSON config (oh-my-pi, Claude Code, Cursor) use the same streamable-HTTP URL (Windows example):
{
"mcpServers": { "sublime-mcp": { "type": "http", "url": "http://127.0.0.1:9502/mcp" } } }
Only a client that cannot do streamable HTTP needs the deprecated SSE URL, "type": "sse" with http://127.0.0.1:9502/sse.
The MCP server starts automatically when ST loads the plugin. To stop or restart it, run "MCP Commander: Server Status" from the Command Palette. Check View > Show Console for startup confirmation.
Agent skill
Two skills ship with sublime-mcp: skills/sublime-mcp (how an agent uses the tools) and skills/package-skill-generator (how to generate a small skill for any Sublime package you use, such as a language server or a debugger). Copy the directories to your agent's skills directory or install them through your normal skill workflow. Skills for individual packages are not shipped: generate your own with the generator.