Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Read, edit, compile, and review Overleaf projects through your own signed-in web session.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
OVERLEAF_BASE_URL, OVERLEAF_COOKIE_JAR_FILE, OVERLEAF_ALLOWED_PROJECTS, OVERLEAF_LOCAL_READ_ROOTS, OVERLEAF_LOCAL_WRITE_ROOTS, OVERLEAF_ALLOWED_EFFECTSต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"overleaf-web": {
"command": "npx",
"args": [
"-y",
"overleaf-web-mcp",
"serve"
],
"env": {
"OVERLEAF_BASE_URL": "ใส่ค่าของคุณ",
"OVERLEAF_COOKIE_JAR_FILE": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_PROJECTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_READ_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_WRITE_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_EFFECTS": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add overleaf-web --env OVERLEAF_BASE_URL='ใส่ค่าของคุณ' --env OVERLEAF_COOKIE_JAR_FILE='ใส่ค่าของคุณ' --env OVERLEAF_ALLOWED_PROJECTS='ใส่ค่าของคุณ' --env OVERLEAF_LOCAL_READ_ROOTS='ใส่ค่าของคุณ' --env OVERLEAF_LOCAL_WRITE_ROOTS='ใส่ค่าของคุณ' --env OVERLEAF_ALLOWED_EFFECTS='ใส่ค่าของคุณ' -- npx -y overleaf-web-mcp serveเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"overleaf-web": {
"command": "npx",
"args": [
"-y",
"overleaf-web-mcp",
"serve"
],
"env": {
"OVERLEAF_BASE_URL": "ใส่ค่าของคุณ",
"OVERLEAF_COOKIE_JAR_FILE": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_PROJECTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_READ_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_WRITE_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_EFFECTS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"overleaf-web": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"overleaf-web-mcp",
"serve"
],
"env": {
"OVERLEAF_BASE_URL": "ใส่ค่าของคุณ",
"OVERLEAF_COOKIE_JAR_FILE": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_PROJECTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_READ_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_LOCAL_WRITE_ROOTS": "ใส่ค่าของคุณ",
"OVERLEAF_ALLOWED_EFFECTS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
OVERLEAF_BASE_URL envOVERLEAF_COOKIE_JAR_FILE envOVERLEAF_ALLOWED_PROJECTS envOVERLEAF_LOCAL_READ_ROOTS envOVERLEAF_LOCAL_WRITE_ROOTS envOVERLEAF_ALLOWED_EFFECTS envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub mhmdaskari ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.8.1) เข้า registry 4 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Tools MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Web production tools for AI agents: contrast, JP text, WebP, JSON-LD, slugs, dates and 40+ more
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Overleaf Web MCP
Read, edit, compile, and review your Overleaf projects, signed in as you, from Claude, Codex, Cursor, or any MCP client, or from a shell or a TypeScript program.
Docs · Get started · Command line · Tools · Safety · Compare · Changelog
Overleaf Web MCP is a Model Context Protocol server, the overleaf-web-mcp command line, and a TypeScript library, createOverleafClient from overleaf-web-mcp/core, all over one engine with the same safety checks. It signs in to Overleaf once through a browser window you control, then lets an AI assistant, a script, or your own program work on your projects the way you would in the web editor: browse files, make revision-checked edits, optionally as tracked changes, compile, and handle review comments and tracked changes. It uses the same browser-facing endpoints the Overleaf editor uses, so no Git integration or premium plan is needed for the core workflow.
Once connected, talk to your assistant in plain language. It picks the tools.
proposal.tex the root."main.tex for a general audience, as a tracked change."./figures differ from what's in the project? Upload only those."~/papers/thesis, and show me what would be deleted first."main.tex with me, and accept the ones I approve."You need Node.js 20 or newer, a Chrome-family browser (Chrome, Chromium, Brave, or Edge), and an Overleaf account.
[!NOTE]
The server uses Overleaf's private web APIs, which can change without notice, and automating
www.overleaf.commay carry Terms-of-Service and account risk. Try it on a disposable project first and keep request volume low.
1. Sign in once. A dedicated browser window opens. Complete the normal Overleaf login, including SSO or two-factor. Only cookies for the Overleaf origin are saved, to a file only your user can read. The session lasts five days from its last use, so sign in again after five idle days, or schedule npx overleaf-web-mcp keepalive daily to keep it alive (see configuration).
npx overleaf-web-mcp login
2. Connect your MCP client. For Claude Code:
claude mcp add overleaf --scope user -- npx -y overleaf-web-mcp serve
For Codex:
codex mcp add overleaf -- npx -y overleaf-web-mcp serve
Claude Desktop, Cursor, VS Code, and other clients
Add this to the client's MCP configuration:
{
"mcpServers": { "overleaf": { "command": "npx", "args": ["-y", "overleaf-web-mcp", "serve"] } } }
VS Code uses a servers key and "type": "stdio" instead; the installation guide has the exact block for each client.
3. Restart the client and ask it to check your Overleaf connection.
Client-by-client steps, self-hosted Overleaf, and troubleshooting, including the "failed to connect" you get when node is older than 20, are in the installation guide.
Every tool is also a command, for scripts, CI jobs, and agents that work in a shell. After npx overleaf-web-mcp login:
npx overleaf-web-mcp projects list --query thesis
npx overleaf-web-mcp files read main.tex npx overleaf-web-mcp call get_sections --request request.json
Each command prints one JSON value on stdout, or one JSON error line on stderr, and its exit code says what is safe to do next: 0 complete, 1 failed, 2 fix the call, 3 not allowed, 4 read or plan again, 5 outcome unknown (never re-run it blindly), 6 partial, 7 retry later. Document text goes through a file or stdin, never the command line. The command line guide has every command and exit code. Three Agent Skills in skills/ use it to revise a manuscript, handle reviewer comments, and sync figures and sources.
From TypeScript, overleaf-web-mcp/core has one typed method per tool (TypeScript SDK):
import { createOverleafClient } from 'overleaf-web-mcp/core'
const client = await createOverleafClient() try { const file = await client.readFile({ projectId, filePath: 'main.tex' }) } finally { await client.close() }
\section headings in a file, read one section, replace one section.33 tools in eight groups: account, project lifecycle, files, folder sync, sections, compilation, review, and history. Read-only tools change nothing on Overleaf and write nothing on your computer. Destructive tools can replace or remove existing content, and all but stop_compile need a value repeated back first: the path, name, or count of what they delete, the revision of the document they replace, the planToken of a folder sync, or overwrite for a file that exists.
All 33 tools , with their annotations and local effects
An upload that would replace a file, and a folder sync without a planToken, are refused unless that replacement or unplanned sync is asked for by name. The last column shows which tools read or write files on the computer the server runs on. Every parameter and result is in the tool reference; each tool is also overleaf-web-mcp call and a method of createOverleafClient.
| Group | Tool | What it does | Annotation | Local effect |
|---|---|---|---|---|
| Account | auth_status | Verify the saved session and report when it expires | read-only | |
| Account | list_projects | List and search projects, newest first | read-only | |
| Project lifecycle | create_project | Create a blank or example project | ||
| Project lifecycle | clone_project | Copy a project, files and settings included | ||
| Project lifecycle | import_project_zip | Create a project from a local .zip archive | reads | |
| Project lifecycle | manage_project | Rename, trash, restore, archive, unarchive, or delete a project | destructive | |
| Project lifecycle | update_project_settings | Set the root document, TeX engine, TeX Live image, or spell-check language | ||
| Files | get_project_tree | Read the file tree with the project's compile settings | read-only | |
| Files | read_file | Read a text document and its revision | read-only | |
| Files | write_file | Replace a document with a revision-checked edit of only the changed words | destructive | reads |
| Files | create_file | Create a text document, optionally with content | ||
| Files | manage_entity | Create a folder, or rename, move, or delete an entity | destructive | |
| Files | upload_file | Upload a local file, replacing what is at that path when confirmed | destructive | reads |
| Files | batch_upload | Upload a list of local files to the pat
ตัดมาแค่ช่วงต้น อ่านต่อใน repo