ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

MCP Holded

โดย t4dhgรุ่น 3.0.0i★ –iรันบนเครื่อง
ชื่อใน registryio.github.t4dhg/mcp-holded

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

MCP server for Holded (Spanish ERP): invoicing, accounting, treasury, CRM, projects, payroll.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: บัญชี การเงิน และภาษี
  • ต้องใส่ค่าเหล่านี้: HOLDED_API_KEY

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "holded": {
      "command": "npx",
      "args": [
        "-y",
        "@t4dhg/mcp-holded"
      ],
      "env": {
        "HOLDED_API_KEY": "ใส่ค่าของคุณ",
        "HOLDED_BASE_URL": "ใส่ค่าของคุณ",
        "HOLDED_TIMEOUT_MS": "ใส่ค่าของคุณ",
        "HOLDED_MAX_RETRIES": "ใส่ค่าของคุณ",
        "DEBUG": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add holded --env HOLDED_API_KEY='ใส่ค่าของคุณ' --env HOLDED_BASE_URL='ใส่ค่าของคุณ' --env HOLDED_TIMEOUT_MS='ใส่ค่าของคุณ' --env HOLDED_MAX_RETRIES='ใส่ค่าของคุณ' --env DEBUG='ใส่ค่าของคุณ' -- npx -y @t4dhg/mcp-holded

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "holded": {
      "command": "npx",
      "args": [
        "-y",
        "@t4dhg/mcp-holded"
      ],
      "env": {
        "HOLDED_API_KEY": "ใส่ค่าของคุณ",
        "HOLDED_BASE_URL": "ใส่ค่าของคุณ",
        "HOLDED_TIMEOUT_MS": "ใส่ค่าของคุณ",
        "HOLDED_MAX_RETRIES": "ใส่ค่าของคุณ",
        "DEBUG": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "holded": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@t4dhg/mcp-holded"
      ],
      "env": {
        "HOLDED_API_KEY": "ใส่ค่าของคุณ",
        "HOLDED_BASE_URL": "ใส่ค่าของคุณ",
        "HOLDED_TIMEOUT_MS": "ใส่ค่าของคุณ",
        "HOLDED_MAX_RETRIES": "ใส่ค่าของคุณ",
        "DEBUG": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • HOLDED_API_KEY ความลับ จำเป็น env
    Holded v2 Personal Access Token (pat_ _ ), created under Settings, Developers, API. A v1 key is rejected at startup.
  • HOLDED_BASE_URL env
    Override the API base URL (default: https://api.holded.com/api/v2)
  • HOLDED_TIMEOUT_MS env
    Per-request timeout in milliseconds (default: 30000)
  • HOLDED_MAX_RETRIES env
    Retry attempts for GET requests; writes are never retried (default: 3)
  • DEBUG env
    Log requests to stderr (default: false)

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub t4dhg ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด บัญชี การเงิน และภาษีi

  • ดาวมากกว่า 0% ของอีก 2913 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 89% ของอีก 2913 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 2913 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

MCP Holded ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: HOLDED_API_KEY

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (3.0.0) เข้า registry 3 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Finance Toolkit, SolidInvoice, Korea Tax Calculator

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Finance Toolkit

โดย JerBouma

500+ transparent financial methods calculated from raw statements, not third-party endpoints.

บนเครื่องหรือคลาวด์★ 5,496MITอัปเดต เมื่อวาน
ติดตั้ง

SolidInvoice

โดย SolidInvoice

Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.

รันบนคลาวด์★ 981MITอัปเดต 8 วันที่ผ่านมา
ติดตั้ง

Korea Tax Calculator

โดย UpstageAI

Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.

รันบนเครื่อง★ 97MITอัปเดต เมื่อวานซืน
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

MCP Holded

Model Context Protocol server for [Holded](https://www.holded.com), on the v2 API

_A community project. Not affiliated with, endorsed by, or supported by Holded. "Holded" and the Holded logo are trademarks of their owner, used here to identify the API this server speaks to._

An MCP server for the Holded API v2: contacts, sales and purchase documents, payments, treasury, accounting, catalog, team, CRM, projects, calendar, inbox and webhooks. Thirteen hierarchical tools with an action parameter, Zod validation of every request and response, retries on reads, and a confirmation gate on every destructive operation.

Holded deprecated its classic API (/api/invoicing/v1, key header). New keys use the format pat_ _ and only authenticate against v2 (https://api.holded.com/api/v2, Authorization: Bearer). This server speaks v2 only.

Why this one

  • v2 only, which is the API that still works. Holded deprecated the classic API (/api/invoicing/v1, key header). New tokens are pat_ _ and authenticate only against v2. This server speaks v2 and nothing else.
  • Thirteen hierarchical tools with an `action` parameter, not one tool per endpoint, so the tool list stays small in a model's context while covering contacts, sales, purchases, payments, treasury, accounting, catalog, team, CRM, projects, calendar, inbox and webhooks.
  • Seven MCP resources and six MCP prompts. The resources carry the account's own tax keys, numbering series, payment methods and chart of accounts, plus the API behaviour a schema cannot express. The prompts run the real workflows: aged receivables, VAT summary, bank reconciliation, statements, month-end close.
  • A confirmation gate on every destructive operation, with a structural test that keeps the documented list equal to the code. Nothing that deletes, overwrites, approves or emails goes through without confirm: true.
  • Zod validation of every request and every response. A shape the server has not seen surfaces as a clear schema error rather than a silent success.
  • Over 200 tests against anonymised real v2 responses, npm provenance via trusted publishing, and Node 20 or later.

How it compares

Four MCP servers for Holded exist on npm. This compares the published code of each, not their descriptions, as at 2026-09-08: @t4dhg/mcp-holded 2.1.1, @nubiia/mcp-holded 2.0.2, @energio/holded-mcp 1.5.1 and holded-mcp 1.0.0. It is a snapshot and will age; check the current versions yourself before relying on it.

@t4dhg/mcp-holded@nubiia/mcp-holded@energio/holded-mcpholded-mcp
API versionv2v2v1 (deprecated)v1 (deprecated)
AuthBearer pat_Bearer pat_key headerkey header
Domains covered1318 tool-module files (no calendar, bookings, inbox, webhooks or CRM)5 API sections (accounting, CRM, invoicing, projects, team)5 API sections (accounting, CRM, invoicing, projects, team)
Tool shape13 hierarchical, action parameter (15 tools total)119 flat tools, one per operation139 flat tools, one per operation136 flat tools, one per operation
MCP resources7000
MCP prompts6000
Destructive operations gatedEvery one, structurally testedNo confirmation gate; destructiveHint annotation and per-tool rate limits onlyNo confirmation gate; destructiveHint annotation onlyNo confirmation gate; destructiveHint annotation only
Response validationZod, requests and responsesZod, requests onlyZod, requests onlyZod, requests only
Minimum Node1822.142018
Tests234389, across 23 files, shipped in the package and passingNone shippedNone shipped
npm provenanceYesYesNoNo
LicenceMITMITMITMIT
Last publish2026-09-082026-07-072026-07-012026-02-25

Where this differs most: the v1 servers are on an API Holded has deprecated, and new pat_ tokens do not authenticate against it at all, so they cannot work with a newly issued key. Against @nubiia/mcp-holded, which is current, the differences are breadth (this server covers calendar and bookings, inbox, webhooks, and CRM leads and funnels, none of which appear in nubiia's tool list), the resource and prompt surface, the hierarchical tool shape, and a gated raw-request escape hatch. Nubiia's own Node floor is 22.14, genuinely higher than the 18 this server and holded-mcp both support.

Quick start

Install nothing. Every client below runs the server through npx. Create the token in Holded under Settings, Developers, API and use the full pat_..._... value.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows:

{

"mcpServers": { "holded": { "command": "npx", "args": ["-y", "@t4dhg/mcp-holded"], "env": { "HOLDED_API_KEY": "pat_xxxxxxxx_xxxxxxxx" } } } }

Claude Code
claude mcp add holded --env HOLDED_API_KEY=pat_xxxxxxxx_xxxxxxxx -- npx -y @t4dhg/mcp-holded
Cursor

Edit ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one:

{

"mcpServers": { "holded": { "command": "npx", "args": ["-y", "@t4dhg/mcp-holded"], "env": { "HOLDED_API_KEY": "pat_xxxxxxxx_xxxxxxxx" } } } }

VS Code

Edit .vscode/mcp.json. Note the key is servers, not mcpServers:

{

"servers": { "holded": { "command": "npx", "args": ["-y", "@t4dhg/mcp-holded"], "env": { "HOLDED_API_KEY": "pat_xxxxxxxx_xxxxxxxx" } } } }

Requires Node.js 20 or later. Development uses Node 24 (nvm use).

Typed request collections accept at most 1,000 items, including nested collections. Existing lower API limits still apply (bank movement batches accept at most 100). A tool call may contain at most 10,000 combined array elements and object members, including arbitrary JSON payloads. Split larger operations into smaller calls.

Environment variables
VariableRequiredDefaultPurpose
HOLDED_API_KEYyesnonev2 Personal Access Token. A v1 key is rejected at startup.
HOLDED_BASE_URLnohttps://api.holded.com/api/v2Override the API base, for testing.
HOLDED_TIMEOUT_MSno30000Per-request timeout.
HOLDED_MAX_RETRIESno3Attempts for GET requests. Writes are never retried.
DEBUGnofalseLog requests to stderr.

What people use it for

Chasing unpaid invoices. Run the holded_aged_receivables prompt. You get every outstanding invoice bucketed by how late it is and grouped by customer, worst first, counting only the unpaid remainder of part-paid invoices. Then ask for a statement for the worst offender with holded_contact_statement, in a form you can send them.

Reconciling a bank month. Run holded_bank_reconciliation for the period. It matches bank movements against recorded payments on amount and date, then shows you the two lists that matter: m

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx