Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for 1Password service accounts — tools and resources for vaults and credentials
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
OP_SERVICE_ACCOUNT_TOKEN, OP_KEYCHAIN_SERVICE, OP_KEYCHAIN_ACCOUNTค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"1password": {
"command": "npx",
"args": [
"-y",
"@takescake/1password-mcp"
],
"env": {
"OP_SERVICE_ACCOUNT_TOKEN": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_SERVICE": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_ACCOUNT": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add 1password --env OP_SERVICE_ACCOUNT_TOKEN='ใส่ค่าของคุณ' --env OP_KEYCHAIN_SERVICE='ใส่ค่าของคุณ' --env OP_KEYCHAIN_ACCOUNT='ใส่ค่าของคุณ' -- npx -y @takescake/1password-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"1password": {
"command": "npx",
"args": [
"-y",
"@takescake/1password-mcp"
],
"env": {
"OP_SERVICE_ACCOUNT_TOKEN": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_SERVICE": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_ACCOUNT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"1password": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@takescake/1password-mcp"
],
"env": {
"OP_SERVICE_ACCOUNT_TOKEN": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_SERVICE": "ใส่ค่าของคุณ",
"OP_KEYCHAIN_ACCOUNT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
OP_KEYCHAIN_SERVICE envOP_KEYCHAIN_ACCOUNT envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub CakeRepository ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: OP_SERVICE_ACCOUNT_TOKEN
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.5.0) เข้า registry 4 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Recta
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.
Cheaper cross-chain stablecoin routes for AI agents; 5 % of the verified saving, nothing if none.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Give your AI assistant a locked door to 1Password — not a pile of passwords in the chat.
@takescake/1password-mcp is a community Model Context Protocol (MCP) server. It lets Claude, Cursor, VS Code Copilot, OpenAI Codex, Gemini, and other MCP clients manage vaults and credentials through a 1Password Service Account.
Built on the MCP TypeScript SDK v2 with protocol negotiation for [2026-07-28](https://modelcontextprotocol.io/specification/2026-07-28) (and legacy clients). Secrets stay in 1Password; agents prefer op:// references and op_run so plaintext never has to land in the model transcript.
Not an official 1Password product. Community-built, Apache 2.0 licensed.
| You are… | You get… |
|---|---|
| Not deeply technical | A one-time setup: create a service account, paste the token into your AI app’s MCP settings, then ask in plain English (“list my automation vault”, “rotate the staging DB password”). |
| An agent / LLM | Fifteen typed tools, four workflow prompts, three browsable resources, and clear rules: prefer `op_run` + `op://` over revealing secrets. |
| A developer / SRE | Full item CRUD, secure notes, password generation, vault allow-lists, Keychain token loading on macOS, and CI-friendly env config. |
password_read returns metadata, and item_get hides secret-bearing fields (passwords, SSH keys, OTP seeds, card numbers), unless you opt in with reveal: true.op://vault/item/field into a local command’s environment; resolved secrets are redacted from the returned stdout/stderr on a best-effort basis (including common encodings).onepassword://… URIs (no secrets in resource payloads).Grouped the way agents and humans actually use them.
| Tool | What it does |
|---|---|
vault_list | List vaults the service account can access (id, name, description, type), limited to the allow-list if one is set. |
item_lookup | Search a vault by title substring; optional limit (max 200). |
item_list | List every item in a vault (id, title, category, tags, updatedAt) — never secrets. |
| Tool | What it does |
|---|---|
item_get | Full item: title, category, tags, notes, fields. Secret-bearing values (passwords and other concealed fields, SSH private keys, OTP seeds, card numbers) stay hidden unless reveal: true; only known non-secret field types are shown. Notes are returned as-is. Accepts op://… or vaultId + itemId. |
password_read | Read one field (default password) via op://… or ids. Metadata-only unless `reveal: true`. Prefer op_run to *use* a secret. |
op_check_ref | Validate op://vault/item/field and return non-secret metadata only (vault, item, field). Never the value. |
| Tool | What it does |
|---|---|
password_create | Create a Login or Password item (username, URL, tags, notes). returnSecret defaults to false. |
note_create | Create a Secure Note with optional tags and custom fields. |
password_update | Rotate a password / concealed field (creates the field if missing). |
item_edit | Update title, notes (empty string clears), tags, URL; upsert or remove fields. Unreferenced fields stay untouched. |
password_generate | Cryptographically secure random password (length 8–128; symbols/numbers/uppercase toggles). |
password_generate_memorable | Memorable passphrase from a ~500-word list (word count, separator, number/symbol suffixes). |
| Tool | What it does |
|---|---|
op_run | Run a local command (command or argv) with env vars. Values matching op://… are resolved into the child process only; resolved secrets are redacted from returned output (best effort — see Security & privacy). Output is capped at 5 MiB per stream, and a timeout kills the whole process tree. Optional cwd, shell, timeout_ms, stdin. |
| Tool | What it does |
|---|---|
item_archive | Move an item to the archive (hidden from normal views). |
item_delete | Permanently delete an item — cannot be undone. |
| Prompt | When to use it |
|---|---|
generate-secure-password | Generate (random or memorable) and optionally store — without dumping the password into chat. |
credential-rotation | Find → verify access → generate → update → confirm op:// reference. |
vault-audit | Inventory a vault by category; flag duplicates / oddities — never reveal secrets. |
secret-reference-helper | Build a paste-ready op://vault/item/field from names. |
| URI | Contents |
|---|---|
onepassword://config | Non-secret server config (name, version, log level, token source, Node version). |
onepassword://vaults | JSON list of accessible vaults (limited to the allow-list if one is set). |
onepassword://vaults/{vaultId}/items | URI template (listed by resources/templates/list): JSON item metadata for one vault (no secret values). |
Upgrading from 4.x: resource URIs used to start with
1password://, which MCP clients could never read (a URI scheme can't start with a digit). Replace any hard-coded1password://URIs withonepassword://.
You need two things:
Automation or CI vault — not your personal banking vault).Add this to your MCP config (exact file depends on the app):
{
"mcpServers": { "1password": { "command": "npx", "args": ["-y", "@takescake/1password-mcp"], "env": { "OP_SERVICE_ACCOUNT_TOKEN": "YOUR_SERVICE_ACCOUNT_TOKEN" } } } }
Restart the app, then try: *“List my 1Password vaults.”*
Store the token in Keychain, then point the server at it:
{
"mcpServers": { "1password": { "command": "npx", "args": ["-y", "@takescake/1password-mcp"], "env": { "OP_KEYCHAIN_SERVICE": "op-service-account-claude-automation", "OP_KEYCHAIN_ACCOUNT": "your-macos-username" } } } }
Token resolution order: CLI (--service-account-token / --token) → OP_SERVICE_ACCOUNT_TOKEN → macOS Keychain. OP_KEYCHAIN_ACCOUNT is optional when the service name alone is unique. Avoid the CLI flags: command-line arguments are visible to other local processes, and the server logs a warning at startup if you use them.
Option A — token in config:
[mcp_servers."1password"]
command = "npx" args = ["-y", "@takescake/1password-mcp"]
[mcp_servers."1password".env] OP_SERVICE_ACCOUNT_TOKEN = "YOUR_SERVICE_ACCOUNT_TOKEN"
Option B *(recommended)* — config only names the env var:
[mcp_servers."1password"]
command = "npx" args = ["-y", "@takescake/1password-mcp"] env_vars = ["OP_SERVICE_ACCOUNT_TOKEN"]
Set OP_SERVICE_ACCOUNT_TOKEN in your shell or CI. Note: codex mcp add ... --env OP_SERVICE_ACCOUNT_TOKEN=... writes the secret into Codex config; prefer env_vars when you can.
On macOS you can omit the token env and use OP_KEYCHAIN_SERVICE (+ optional OP_KEYCHAIN_ACCOUNT) instead.
By default the server can use any vault the service account can see. To allow-list vaults:
{
"env": { "OP_SERVICE_ACCOUNT_TOKEN": "YOUR_SERVICE_ACCOUNT_TOKEN", "OP_MCP_ALLOWED_VAULTS": "Automation, CI" } }
Names or IDs work (case-insensitive). Same setting via --allowed-vaults. The allow-list applies server-wide, to every tool and resource that touches a vault, not only op_run / op_check_ref:
vault_list and onepassword://vaults show only allowed vaults.vaultId, and the onepassword://vaults/{vaultId}/items resource, must be given the vault’s ID (not its name); vaults outside the list are rejected.op:// references are checked both as written and by the vault they actually resolve to.vaults.list read (mind service-account rate limits), and the server fails closed if vaults can’t be listed.Upgrading from 4.0.3 or earlier? If you set this expecting it to affect only
op_run/op_check_ref, it now restricts everything.
This is defense in depth: scope the service account’s own vault access in 1Password first.
Follow this order every time:
vault_list → item_lookup / item_list (metadata only).op_check_ref — never reveal just to see if a path exists.op://vault/item/field in env.password_read / item_get + reveal: true only when the human explicitly needs the value in chat.password_generate → password_update (keep returnSecret: false unless asked).op_run sketch{
"argv": ["curl", "-sS", "https://api.example.com/health"], "env": { "API_TOKEN": "op://Automation/Example API/credential" }, "timeout_ms": 60000 }
Prefer argv over a shell command string when you can — fewer quoting surprises.
| Variable | Required | Description |
|---|---|---|
OP_SERVICE_ACCOUNT_TOKEN | Usually yes | Service account token. Not required on macOS if Keychain vars are set. |
OP_KEYCHAIN_SERVICE | No | macOS: Keychain service name for the token. |
OP_KEYCHAIN_ACCOUNT | No | macOS: optional account to narrow the Keychain lookup. |
OP_MCP_ALLOWED_VAULTS | No | Comma-separated vault names/IDs (case-insensitive) the server may use, enforced server-wide. Empty = unrestricted. |
| OP_INTEGRATION_NAME | No | Name reported to the 1Password SDK (def
ตัดมาแค่ช่วงต้น อ่านต่อใน repo