BoardMark
AI agent · MCP

เชื่อม AI agent กับ BoardMark อย่างไร?

เพิ่ม BoardMark เป็น MCP server แล้วเข้าสู่ระบบผ่านเบราว์เซอร์ — ไม่ต้องคัดลอก token หรือใช้ personal access token สำหรับ CI และเครื่องที่ไม่มีเบราว์เซอร์ agent ทำงานด้วยสิทธิ์เท่าคุณ — เห็นเฉพาะ project ที่คุณเห็น และไม่มีวันได้สิทธิ์ admin

สิทธิ์เท่าผู้ใช้ ไม่เคยได้สิทธิ์ admin

หา BoardMark ใน marketplace ของคุณ

BoardMark ลงไว้ใน marketplace เหล่านี้แล้ว — กดการ์ดเพื่อเปิดหน้ารายการ ส่วนที่เป็นสีเทากำลังรอ vendor ตรวจ

ChatGPT pluginsลงแล้วเปิดหน้า BoardMark ใน ChatGPT plugins แล้วกด Install pluginเปิดหน้ารายการ (เปิดแท็บใหม่)Official MCP Registryลงแล้วค้นหา ai.boardmark/boardmark ใน client ที่อ่าน registry (เช่น VS Code, Windsurf, Zed)เปิดหน้ารายการ (เปิดแท็บใหม่)Smitheryลงแล้วเปิดหน้า BoardMark บน Smithery แล้วเลือก client ของคุณเปิดหน้ารายการ (เปิดแท็บใหม่)Glamaลงแล้วเปิดหน้า BoardMark บน Glamaเปิดหน้ารายการ (เปิดแท็บใหม่)mcp.soลงแล้วเปิดหน้า BoardMark บน mcp.so แล้วคัดลอก config ของ client ของคุณเปิดหน้ารายการ (เปิดแท็บใหม่)mcpservers.orgลงแล้วเปิดหน้า BoardMark บน mcpservers.org แล้วคัดลอก URL ของ MCP server หรือคำสั่ง npx add-mcpเปิดหน้ารายการ (เปิดแท็บใหม่)GitHubลงแล้วrepository สาธารณะที่มี config สำหรับ Gemini CLI extension และ Cursor pluginเปิดหน้ารายการ (เปิดแท็บใหม่)
Claude Connectors Directoryรอตรวจรอ vendor ตรวจรายการ
Cursor Marketplaceรอตรวจรอ vendor ตรวจรายการ
Cline MCP Marketplaceรอตรวจรอ vendor ตรวจรายการ
Gemini CLI extensionsรอตรวจรอ vendor ตรวจรายการ
Microsoft Copilotรอตรวจรอ vendor ตรวจรายการ

เร็ว ๆ นี้: GitHub / VS Code MCP gallery

ติดตั้งคลิกเดียว

เลือก AI client ที่คุณใช้ — ปุ่มเปิดแอปให้เลย หรือคัดลอกคำสั่งเดียว

Cursor
  1. กดติดตั้ง แล้วยืนยันใน Cursor
  2. เข้าสู่ระบบ BoardMark ในเบราว์เซอร์ที่เปิดขึ้น
VS Code
  1. กดติดตั้ง แล้วกด Install ใน VS Code
  2. เริ่ม server แล้วเข้าสู่ระบบ BoardMark ในเบราว์เซอร์
Claude Code
คัดลอกคำสั่ง
claude mcp add --transport http boardmark https://mcp.boardmark.ai/mcp
  1. รันคำสั่งใน terminal
  2. ใน Claude Code พิมพ์ /mcp แล้วเลือก boardmark เพื่อเข้าสู่ระบบ
claude.ai · Claude Desktop
  1. กด Add custom connector แล้ววาง URL ของ MCP server
  2. กด Connect แล้วเข้าสู่ระบบ BoardMark
OpenAI Codex CLI
คัดลอกคำสั่ง
codex mcp add boardmark --url https://mcp.boardmark.ai/mcp && codex mcp login boardmark
  1. รันคำสั่งใน terminal
  2. เข้าสู่ระบบ BoardMark ในเบราว์เซอร์ที่เปิดขึ้น
Gemini CLI
คัดลอกคำสั่ง
gemini extensions install https://github.com/i-c-develop/boardmark
  1. รันคำสั่งใน terminal
  2. ใน Gemini CLI พิมพ์ /mcp auth boardmark เพื่อเข้าสู่ระบบ

ส่งลิงก์เดียวให้ AI assistant ตัวไหนก็ได้

คู่มือสำหรับ AI agent เป็นไฟล์ Markdown ไฟล์เดียว: BoardMark คืออะไร ใช้งานอย่างไรทีละขั้น กติกา ราคา และคำถามที่พบบ่อย วางลิงก์ใน ChatGPT, Claude, Gemini, Copilot หรือ AI ตัวอื่น แล้ว AI จะช่วยคุณใช้งาน BoardMark ได้ทันที ไม่ว่าจะเชื่อม MCP หรือไม่ ถ้า AI นั้นรองรับ MCP คู่มือนี้ก็บอกวิธีเชื่อมต่อด้วย

คู่มือสำหรับ AI agent
https://www.boardmark.ai/th/agents.md

หรือวางข้อความนี้ให้ AI

คู่มือสำหรับ AI agent
อ่าน https://www.boardmark.ai/th/agents.md แล้วช่วยฉันใช้งาน BoardMark

เปิดคู่มือ (agents.md)

วิธีที่ 1 · เข้าสู่ระบบผ่านเบราว์เซอร์ (แนะนำ)

  1. เพิ่ม BoardMark เป็น MCP server

    ใน Claude Code รันคำสั่งนี้ (Streamable HTTP) ไม่ต้องใส่ token:

    Claude Code
    claude mcp add --transport http boardmark https://mcp.boardmark.ai/mcp
  2. เข้าสู่ระบบและเลือกบริษัท

    Claude Code เปิดเบราว์เซอร์ให้คุณเข้าสู่ระบบ BoardMark แล้วเลือกบริษัทที่จะให้ agent ใช้ (ถ้าเบราว์เซอร์ไม่เปิดเอง ให้รัน /mcp ใน Claude Code แล้วเลือก server นี้เพื่อเข้าสู่ระบบ) สิทธิ์นี้ใช้ได้กับบริษัทเดียว

  3. ดูและยกเลิกได้ทุกเมื่อ

    แอปที่เข้าสู่ระบบไว้แสดงในหน้า “สิทธิ์เข้าถึงของเอเจนต์และ MCP” ของเว็บแอป กดออกจากระบบแล้วแอปนั้นเสียสิทธิ์ทันที

    เปิดเว็บแอป

วิธีที่ 2 · personal access token (สำหรับ CI)

  1. สร้าง token ในแอป

    ในหน้า “สิทธิ์เข้าถึงของเอเจนต์และ MCP” สร้างโทเคนใหม่ ตั้งชื่อ และเลือกอายุ 30, 90, 180 หรือ 365 วัน token ขึ้นต้นด้วย board_pat_ และแสดงเพียงครั้งเดียว — เก็บไว้ในที่ปลอดภัย เพิกถอนได้ทุกเมื่อ

  2. เก็บ token ไว้ในตัวแปรสภาพแวดล้อม

    อย่าใส่ token ลงในไฟล์ที่ commit เข้า git

    shell
    export BOARDMARK_TOKEN="board_pat_…"
  3. เพิ่ม MCP server พร้อม header

    สำหรับ Claude Code:

    Claude Code
    claude mcp add --transport http boardmark https://mcp.boardmark.ai/mcp --header "Authorization: Bearer $BOARDMARK_TOKEN"

    หรือใส่ใน .mcp.json ของ project (Claude Code ขยาย ${BOARDMARK_TOKEN} จากตัวแปรสภาพแวดล้อมให้):

    .mcp.json
    {
      "mcpServers": {
        "boardmark": {
          "type": "http",
          "url": "https://mcp.boardmark.ai/mcp",
          "headers": {
            "Authorization": "Bearer ${BOARDMARK_TOKEN}"
          }
        }
      }
    }

ใช้กับ AI agent อื่นได้ไหม?

ได้ BoardMark ใช้ได้กับ AI client ทุกตัวที่รองรับ MCP แบบ Streamable HTTP — เข้าสู่ระบบผ่านเบราว์เซอร์ (OAuth) หรือใช้ personal access token ขั้นตอนตั้งค่าที่คัดลอกไปใช้ได้ทันทีของแต่ละตัวอยู่ในคู่มือเดียว:

  • Claude Code
  • Claude Desktop
  • claude.ai
  • OpenAI Codex CLI
  • ChatGPT
  • Google Antigravity
  • Gemini CLI
  • xAI Grok
  • Goose
  • OpenCode
  • Cursor
  • VS Code (GitHub Copilot)
  • Windsurf
  • Kiro
  • Zed
  • Cline
  • Continue
  • LM Studio
  • Mistral Le Chat
  • Microsoft Copilot Studio

client ที่รันได้เฉพาะ server แบบ local (stdio) เชื่อมต่อผ่าน mcp-remote

วิธีตั้งค่า MCP ของทุก client (connect.md)

ให้ agent ตั้งค่าเอง

วางข้อความนี้ให้ agent แล้ว agent จะอ่านคู่มือและทำตามขั้นตอนสำหรับ client ที่ตัวเองทำงานอยู่:

คำสั่งสำหรับ agent
เชื่อมต่อตัวเองกับ BoardMark: อ่าน https://mcp.boardmark.ai/connect.md แล้วทำตามขั้นตอนสำหรับไคลเอนต์ที่คุณกำลังทำงานอยู่

ลดค่า token: เลือกชุด tool ที่ต้องใช้

AI client บางตัว (ChatGPT, Cursor, Gemini และอื่น ๆ) โหลดคำอธิบาย tool ทั้งหมดทุกครั้งที่เริ่ม session — ชุดเต็มประมาณ 198 KB หรือราว 50,000 token (Claude Code โหลดเมื่อต้องใช้ จึงไม่กระทบมาก) ถ้า agent ไม่ต้องใช้ทุก tool ให้ใส่ ?tools= ท้าย URL ของ MCP เพื่อเลือกชุดที่เล็กลง ล็อกอินและสิทธิ์เหมือนเดิมทุกอย่าง และ OAuth ใช้ได้ตามปกติ

ท้าย URLได้อะไร
https://mcp.boardmark.ai/mcpไม่ใส่ tools (ค่าเริ่มต้น) — ได้ทุก tool เหมือนเดิม
https://mcp.boardmark.ai/mcp?tools=leanเฉพาะ tool งานหลัก (project, งานของฉัน, ค้นหา, อ่าน/สร้าง/แก้/ย้าย/มอบหมาย/ลบ issue, comment, บริบทของ issue, project และเอกสาร, คน, การจัดลำดับ, ลิงก์, development) ประมาณครึ่งหนึ่งของขนาดเต็ม
https://mcp.boardmark.ai/mcp?tools=lean,releases,sprintslean บวกกลุ่มที่ระบุ
https://mcp.boardmark.ai/mcp?tools=-work_context,-supportทุก tool ยกเว้นกลุ่มที่ใส่เครื่องหมาย - นำหน้า

กลุ่มที่เลือกเปิดหรือปิดได้

กลุ่มToolรายละเอียด
work_context—“กำลังทำอะไร”: agent แต่ละตัวทำอะไรบนการ์ดและแตะไฟล์ไหน (D179–D182) ไม่มี tool ของตัวเอง — ปิดแล้ว working / touches / if_unassigned หายจาก tool ของ issue และจากผลลัพธ์กับ get_issue_context; ถ้ามี agent ตัวเดียวทำงานคนเดียว ส่วนนี้แทบมีแต่ต้นทุน
inboxlist_inbox, read_inboxกล่องข้อความของ agent
releaseslist_releases, get_release, move_to_release, add_to_release, create_release, update_release, add_release_deploymentRelease
sprintslist_sprints, create_sprint, update_sprint, close_sprint, move_to_sprint, get_burndownSprint และ burndown
sales_documentslist_sales_documents, issue_sales_documentใบเสนอราคา ใบวางบิล ใบเสร็จ
supportopen_support_case, list_support_cases, get_support_case, reply_support_case, follow_support_case, unfollow_support_case, close_support_case, reopen_support_case, get_support_summaryเคสขอความช่วยเหลือ (9 tool)
insightsget_project_insights, get_company_insights, list_summaries, get_summaryInsights และสรุปอัตโนมัติ
filesread_file, write_file, list_dir, diff, get_history, get_doc_history, restore_doc_version, delete_docไฟล์ ประวัติ และการย้อนเวอร์ชันเอกสาร
attachmentslist_attachments, request_upload, attach_file, get_download_url, delete_attachmentไฟล์แนบ
votes_watchersvote_issue, unvote_issue, watch_issue, unwatch_issue, list_watchersโหวตและผู้ติดตาม

tool ที่อยู่นอกชุดจะตอบ tool_disabled พร้อมบอกชื่อกลุ่ม ถ้าพิมพ์ชื่อใน tools ผิดจะถูกปฏิเสธ (400) พร้อมรายชื่อที่ถูกต้อง ในเว็บแอปหน้า Agent & MCP มีสวิตช์ เต็ม / lean / กำหนดเอง ที่สร้าง URL ให้ ส่วน stdio ใช้ตัวแปร BOARD_TOOLS ถ้าแก้ URL ใน client แล้วให้เชื่อมต่อใหม่ นอกจากนี้ คำอธิบาย tool สั้นลงสำหรับทุกการเชื่อมต่อ

Agent ต้องทำงานตามกติกาอะไร?

  • ต้องส่ง version ทุกครั้งที่เขียน — เรียก get_issue ก่อน update_issue เสมอ ถ้ามีคนแก้ก่อนจะได้ 409 version_conflict แทนการเขียนทับ
  • อ่านเอกสารของ project ก่อนเริ่มงาน — get_project บอกว่าเอกสารไหนต้องอ่านก่อน (docs.read_first) หรือเรียก get_docs_context เพื่อได้ brief, working notes และ handoff ที่เปิดอยู่ในข้อความเดียว กฎของบริษัทและ project ในเอกสารเหล่านี้มาก่อนค่าตั้งต้นของ BoardMark (คำสั่งของผู้ใช้มาก่อนทุกอย่าง) ทีมจึงเขียนกฎครั้งเดียวแล้ว agent ทุกตัวทำตามเหมือนกัน
  • รู้จักบอร์ดทั้ง 3 แบบ — Scrum มี sprint (อาจทำงานพร้อมกันหลาย sprint), Kanban และ Delivery pipeline ไม่มี sprint และ status ของ pipeline เป็นไปตาม environment ใน project.md
  • บน Scrum คนเป็นผู้เริ่ม sprint — agent เปลี่ยน status ได้เฉพาะ issue ใน sprint ที่คนกดเริ่มแล้ว (ไม่งั้นได้ 409 sprint_not_started) และเริ่ม sprint เองไม่ได้ ระหว่างนั้นยังวางแผนใน backlog, comment และแก้ field อื่นได้
  • ทำตามคอลัมน์ของบอร์ด — get_project บอกหมวด สี WIP limit และความหมายของแต่ละคอลัมน์ (บริษัท Premium ปรับคอลัมน์เองได้ในเว็บแอป) agent ทำตามความหมายนั้น และถือ WIP limit เป็นคำเตือน ถ้าได้ 403 plan_required แปลว่าฟีเจอร์นั้นต้องใช้แพ็กเกจ Premium — ผู้ดูแลบริษัทอัปเกรดได้ในเว็บแอป
  • บอกว่ากำลังทำอะไร และดูว่าคนอื่นทำอะไร — ก่อนเริ่มการ์ด agent เรียก get_issue_context (การ์ด การ์ดที่ลิงก์ พี่น้อง comment MR/PR และ handoff ในข้อความเดียว) แล้วหยิบด้วย update_issue ครั้งเดียว: สถานะกำลังทำ + working + touches + if_unassigned: true (409 already_assigned = มีคนถืออยู่แล้ว) linked[] ของ get_issue แสดง assignee, working, touches และ agent_live ของแต่ละการ์ดที่ลิงก์ ทุกแพ็กเกจ BoardMark ช่วยเสริม AI harness แบบนี้ ไม่ได้รัน agent หรือล็อกไฟล์
  • ทุก write ถูกบันทึก — ประวัติของ issue และเอกสารบอกว่าใช้สิทธิ์ของใคร AI ตัวไหน (เช่น “ผ่าน Claude Code”) เชื่อมด้วย OAuth หรือ token เรียก MCP tool ใด พร้อม request id ในแอปการ์ด comment และไฟล์แนบจาก agent มีป้ายกำกับ และคำขอที่ BoardMark ปฏิเสธบันทึกใน Audit log ของบริษัท
  • จำกัด 600 requests/นาที ต่อ token — ค่าเริ่มต้น
  • Premium: Agent account มีเจ้าของ — ใช้สิทธิ์เท่าเจ้าของ ใส่ reason ทุกการเขียนเพื่อให้ run log บอกเหตุผล ได้ agent_paused ให้หยุดและแจ้งผู้ใช้ ได้ rate_limited ให้รอตาม retry_after ไม่มีโควตารายวัน
  • Premium: สรุปอัตโนมัติ — list_summaries แล้ว get_summary อ่านรายงานที่ BoardMark ส่งให้ทีม (อ่านอย่างเดียว) รายงานคำนวณจากข้อมูลบอร์ด ให้รายงานตามที่ได้ ไม่เดาเพิ่ม
  • Premium: Insights — get_project_insights และ get_company_insights อ่านตัวเลข cycle time, lead time, throughput, WIP, งานค้างและต้นทุนต่อ release (อ่านอย่างเดียว) รายงานตามที่ได้ บอก “วัดได้ n จาก m ใบ” ห้ามเดาข้อมูลรายคนที่ไม่ได้รับ
  • Pro/Premium: MR/PR ของการ์ด — list_development ดู MR/PR สถานะ CI และ commit ที่จับคู่กับการ์ด (อ่านอย่างเดียว) การเชื่อม repository และกฎย้ายอัตโนมัติตั้งในเว็บแอป
  • ใบเสนอราคา ใบวางบิล ใบเสร็จ (ทุกแพ็กเกจ) — list_sales_documents และ issue_sales_document ออก PDF ภาษาไทยและอังกฤษจากการ์ดดีล Sales & Billing ต้องถามผู้ใช้ก่อนเสมอ: ชื่อ ที่อยู่ เลขผู้เสียภาษีของลูกค้า รายการ และ VAT ห้ามเดา ไม่มีใบกำกับภาษี ให้ผู้ใช้ออกจากระบบบัญชี
  • Agent ไม่นับเป็น seat — ใช้สิทธิ์ของผู้ใช้ที่เชื่อมต่อ ไม่มีค่าใช้จ่ายเพิ่ม

มี tool อะไรบ้าง? (75 tools)

ทุก tool map 1:1 กับ public API และตรวจสิทธิ์เหมือนหน้าเว็บ

Project และงานของฉัน

Toolทำอะไร
list_projectsproject ที่คุณเข้าถึงได้ พร้อมภาพรวม (issue ที่เปิดอยู่ sprint ที่กำลังทำงานและความคืบหน้า) ในครั้งเดียว
list_my_issuesissue ที่มอบหมายให้คุณจากทุก project ในครั้งเดียว
list_inboxกล่องข้อความของคุณ (ชุดเดียวกับกระดิ่งในเว็บแอป): การ์ดที่มอบหมายให้ @mention การตอบกลับ การเปลี่ยนสถานะของการ์ดคุณ handoff และสิทธิ์เข้า project — ยังไม่อ่านขึ้นก่อน (unread_only, limit ≤ 30, แบ่งหน้าด้วย before = next_before); เรียกเมื่อเริ่ม session และหลังทำแต่ละการ์ด; token ของ agent account อ่านกล่องของเจ้าของ (ทุกแพ็กเกจ)
read_inboxทำเครื่องหมายว่าอ่านแล้ว: ส่ง id เดียว หรือไม่ส่งเพื่ออ่านทั้งหมด — เรียกหลังจัดการเรื่องนั้นแล้ว
start_runagent account (Premium): เริ่ม run ใหม่พร้อมเป้าหมาย (goal) ให้ run log อ่านง่าย — ไม่บังคับ; token ส่วนตัวไม่บันทึกอะไร (logged: false)
get_projectproject.md: ประเภทบอร์ดและ template สถานะพร้อมหมวด สี WIP limit และความหมายของคอลัมน์ นิยามฟิลด์กำหนดเอง ตัวกรองที่บันทึกไว้ workflow environment บทบาทของคุณ และบน Scrum ค่า sprint_control (admins หรือ members: ใครกดเริ่ม sprint ได้)

Issue

Toolทำอะไร
search_issuesค้นหาตาม status, assignee, sprint, type, priority, label, ข้อความ (ชื่อ รายละเอียด หรือ issue key เต็มหรือบางส่วน), parent, ฟิลด์กำหนดเอง (fields), ป้ายของ template (flag เช่น overdue, off_track) และ issue ที่ลิงก์ถึง (linked_to=KEY-n) และเรียงตาม priority หรือฟิลด์ได้ (แบ่งหน้า) · hide_released=true ซ่อนการ์ดที่เสร็จใน release ที่ขึ้น production แล้ว (บอก omitted_released) ใช้ตอบว่า “อะไรยังไม่ขึ้น production”
get_issueอ่าน issue พร้อม version ล่าสุด ค่าฟิลด์คำนวณ (computed เช่น score, progress) working / touches ของการ์ด และปลายทางที่เชื่อมแบบสด (linked: key, ชื่อ, status หรือ state + progress ของ Release, ผู้รับผิดชอบ, working, touches, เวลาที่แก้ล่าสุด และ agent_live; readable: false เมื่อไม่มีสิทธิ์)
get_issue_contextก่อนเริ่มการ์ด: ข้อความ Markdown เดียวที่มีทุกอย่างเกี่ยวกับการ์ดนั้น — ฟิลด์ working / touches, parent, subtask และการ์ดพี่น้องพร้อมสิ่งที่ผู้รับผิดชอบกำลังทำ, การ์ดที่ลิงก์ทุกใบพร้อมผู้ถือและ working, comment ล่าสุด 20 รายการ, รายการ development (MR/PR) และ handoff ที่เปิดอยู่และระบุการ์ดนี้ และส่วนบันทึกสำหรับการ์ดนี้ (working notes ล่าสุด 3 รายการที่ labels ตรงกับการ์ด) — ข้อความที่ทีมเขียนถูกกำกับเป็นข้อมูล ไม่ใช่คำสั่ง; max_chars จำกัดความยาว (ทุกแพ็กเกจ)
create_issueสร้าง issue ใหม่ (1 issue = 1 ไฟล์ .md) พร้อมค่าฟิลด์กำหนดเอง (fields) ของ template
update_issueแก้หลาย field ในครั้งเดียว รวมฟิลด์กำหนดเอง (fields ทีละคีย์, null = ลบค่า) — ต้องส่ง version; ส่ง working + touches + if_unassigned: true พร้อม status เพื่อหยิบการ์ดในครั้งเดียว (409 already_assigned ถ้ามีคนถืออยู่ ไม่เขียนอะไร); ย้ายเข้าสถานะกำลังทำแล้ว touches ซ้อนกับการ์ดอื่นได้ warning touch_overlap (เตือนเท่านั้น)
delete_issueลบ issue — ต้องส่ง version
transition_issueเปลี่ยน status ตาม workflow (รวมสถานะของแต่ละ environment บนบอร์ด Delivery pipeline) — บน Scrum ได้เฉพาะ issue ใน sprint ที่คนกดเริ่มแล้ว ไม่งั้น 409 sprint_not_started; รับ working, touches และ if_unassigned เหมือน update_issue; ถ้าการ์ดถูก blocked_by การ์ดที่ยังไม่ Done ได้คำเตือน unresolved_blocker และถ้า touches ซ้อนกับการ์ดอื่นที่กำลังทำอยู่ ได้ touch_overlap (หนึ่งรายการต่อใบ สูงสุด 10; ย้ายให้อยู่ดี)
rank_issueจัดลำดับ issue (วางก่อน/หลัง issue อื่น)
assign_issueมอบหมายผู้รับผิดชอบ
list_peopleใครเปิด project นี้ได้บ้าง พร้อมชื่อและ role — ใช้ดูชื่อ reporter/assignee และหา id สำหรับ @mention (via: "company" = เข้าผ่านสิทธิ์ทั้งบริษัท)
list_watchersใครติดตาม issue นี้อยู่ และคุณติดตามอยู่หรือไม่
watch_issueติดตาม issue เพื่อรับอีเมลเมื่อ status เปลี่ยนหรือมี comment ใหม่
unwatch_issueเลิกติดตาม issue
vote_issueโหวตให้ issue (1 คน 1 เสียง โหวตซ้ำไม่เปลี่ยนอะไร) — สมาชิกขึ้นไป ใช้ได้ใน project ที่เปิดโหวต (template Feedback / Idea box)
unvote_issueถอนโหวตของคุณจาก issue
link_issuesเชื่อม issue (blocks, relates, duplicates, clones) — รับ key ของ project อื่นในบริษัทเดียวกัน และ delivers ไป Release ด้วย id KEY/R-n (403 link_target_forbidden, 404 release_not_found)
unlink_issuesยกเลิกการเชื่อม issue
list_developmentPro และ Premium: MR/PR ที่จับคู่กับการ์ด (repo, หมายเลข, ชื่อ, ผู้เขียน, สถานะ open / draft / merged / closed, ผล CI, ลิงก์) และ commit ล่าสุดที่อ้างถึง key — อ่านอย่างเดียว ผู้ดูขึ้นไปใช้ได้ รายงานตามที่ได้ ตั้งค่า repository และกฎย้ายอัตโนมัติทำในเว็บแอปเท่านั้น

Comment และไฟล์แนบ

Toolทำอะไร
list_commentscomment ของ issue พร้อมการตอบกลับเป็น thread
add_commentเพิ่ม comment (Markdown) หรือตอบกลับ comment เดิม — mention คนด้วย [@ชื่อ](mention:usr_…) — id จาก list_people (อีเมลถึงเฉพาะสมาชิก project) และคุณจะติดตาม issue อัตโนมัติ
update_commentแก้ comment ของตัวเอง — ต้องส่ง version
delete_commentลบ comment (เหลือ “comment นี้ถูกลบ” ไว้แทน reply ยังอยู่) — ต้องส่ง version
request_uploadขอ presigned URL สำหรับอัปโหลด
attach_fileแนบไฟล์ที่อัปโหลดแล้วเข้ากับ issue — แสดงรูปในเนื้อหาด้วย ![ชื่อ](path) (ไม่ใช้ base64; path ที่มีช่องว่างให้ใส่ใน < > เช่น ![ชื่อ](<path>))
list_attachmentsไฟล์แนบของ issue: ชื่อ ขนาด วันที่ และผู้อัปโหลด
delete_attachmentลบไฟล์แนบถาวร — เฉพาะไฟล์ที่ token นี้อัปโหลดเอง ลิงก์ในเนื้อหาและ comment จะแสดงเป็น “ไฟล์ถูกลบ”
get_download_urlpresigned URL สำหรับดาวน์โหลดไฟล์แนบ

Sprint

Toolทำอะไร
list_sprintssprint ของ project (อาจมีหลาย sprint ที่กำลังทำงาน)
create_sprint*สร้าง sprint
update_sprint*แก้ชื่อ วันที่ หรือเป้าหมายของ sprint
move_to_sprintย้าย issue เข้า/ออก sprint
close_sprint*ปิด sprint และย้ายงานที่ค้าง
get_burndownburndown ของ sprint (Scrum)

Release

Toolทำอะไร
list_releasesrelease ของ project พร้อมความพร้อม (ยังไม่พร้อม · พร้อมแต่มีความเสี่ยง · พร้อมขึ้น) ที่คำนวณจากบอร์ดตามกฎ
get_releaserelease หนึ่งตัว: สถานะของแต่ละ feature พร้อมเหตุผล ตัวเลข และผลของ gate — agent รายงานตามที่ได้ ไม่เดา
create_releaseสร้าง release ที่ยังเป็นแผน (ชื่อ วันขึ้น production คำอธิบาย milestone) ด้วยสิทธิ์ของผู้ใช้ (ผู้ดูแล project หรือ PM) — ใช้ gate ตั้งต้นเสมอ คนเป็นผู้กำหนด gate ในแอป
update_releaseแก้ชื่อ วัน milestone และคำอธิบายของ release ที่ยังเป็นแผน ได้จนกว่าจะล็อก baseline และเขียน Release note (release_note, Markdown ที่สมาชิกทุกคนของ project เห็น) ได้ขณะที่ยังเป็นแผน แม้หลังล็อก baseline — ส่วนอื่นหลังล็อกหรือแก้ gate ต้องเป็นคนในแอป
add_release_deploymentบันทึกการ deploy ลงบันทึกของ release (environment, artifact หรือเวอร์ชัน, commit, build_url, เวลา, ผล deployed · verified · failed · rolled_back, หมายเหตุ) ทั้งตอนที่ release ยังเป็นแผนและหลังขึ้น production แล้ว ด้วยสิทธิ์ของผู้ใช้ (ผู้ดูแล project หรือผู้จัดการ release) — เพิ่มได้อย่างเดียว ไม่แตะ gate baseline หรือ scope
move_to_releaseใส่ issue (หรือ epic พร้อม issue ลูก) เข้า release หรือเอาออก พร้อมเหตุผล — ครั้งละหนึ่ง issue (หลายตัวใช้ add_to_release)
add_to_releaseใส่ issue สูงสุด 50 ตัวเข้า release ที่ยังเป็นแผนในครั้งเดียวด้วยเหตุผลเดียว — ระบบย้ายทีละตัวและบอกผลรายตัว (ย้ายแล้ว · อยู่แล้ว · ไม่สำเร็จพร้อมเหตุผล) · ติ๊ก gate ล็อก baseline และกดขึ้น production ทำได้เฉพาะคนในแอป

สรุปอัตโนมัติ

Toolทำอะไร
list_summariesPremium: รายการสรุปอัตโนมัติที่ BoardMark ส่งให้ทีมแล้ว (standup, sprint / release review, รายงานผู้บริหาร) เฉพาะ project ที่คุณเปิดได้ — อ่านอย่างเดียว
get_summaryPremium: สรุปหนึ่งฉบับ (หรือฉบับล่าสุด) เป็น markdown ข้อมูลชุดเดียวกับที่ทีมได้รับ คำนวณจากข้อมูลบอร์ด — agent รายงานตามที่ได้ ไม่เดา อ่านอย่างเดียว

Insights

Toolทำอะไร
get_project_insightsPremium: ตัวเลขของ project ในช่วงที่เลือก (ค่าเริ่มต้น 30 วัน) เทียบช่วงก่อนหน้า — cycle time (วัดได้ n จาก m ใบ) และ lead time รวมถึง throughput, WIP, งานค้าง, bug และต้นทุนต่อ release อ่านอย่างเดียว ข้อมูลรายคน (รวมการ์ด / points ที่แต่ละคนทำเสร็จในช่วง) มีเฉพาะเมื่อเจ้าของ token เป็นผู้ดูแล project รายงานตามที่ได้ ไม่เดา
get_company_insightsPremium: ตัวเลขรวมทุก project ของบริษัท พร้อมตาราง project และงานค้างและงานที่เสร็จรายคนข้าม project เจ้าของ token ต้องเป็นผู้ดูแลบริษัท (ไม่ใช่ได้ 403) อ่านอย่างเดียว ส่งออก CSV ทำในเว็บแอป

ใบเสนอราคา ใบวางบิล ใบเสร็จ

Toolทำอะไร
list_sales_documentsเอกสารขายของดีล Sales & Billing: ใบเสนอราคา (QT) ใบวางบิล (BN) ใบเสร็จ (RC) ใหม่สุดก่อน พร้อม latest, status และไฟล์ PDF ไทย / อังกฤษ (attachment_id ใช้กับ get_download_url) — stale = ดีลเปลี่ยนหลังออกใบเสนอราคา ให้เสนอฉบับแก้ไข (revise_of) ทุกแพ็กเกจ
issue_sales_documentออกใบเสนอราคา ใบวางบิล (ตั้งงวดเป็น Invoiced) หรือใบเสร็จ (เฉพาะงวดที่ Paid แล้ว) เป็น PDF สองภาษา — ถามผู้ใช้ก่อนเสมอ: ชื่อ ที่อยู่ เลขผู้เสียภาษีของลูกค้า รายการ และ VAT ห้ามเดา; ไม่มีใบกำกับภาษี; 409 seller_incomplete = ผู้ดูแลบริษัทต้องกรอก tax profile ก่อน; เลขที่ออกแล้วถาวร

ไฟล์ .md โดยตรง

Toolทำอะไร
read_fileอ่านไฟล์ .md
write_fileเขียนไฟล์ .md ผ่าน validator เดียวกับ UI
list_dirรายการไฟล์ใน md tree
get_historyประวัติ commit: ใครแก้ และผ่าน agent token ใด
diffเปรียบเทียบสองเวอร์ชัน

เอกสารของ project

Toolทำอะไร
list_docsเอกสารตั้งต้น บันทึกความคืบหน้า งานส่งต่อ และ company brief ของ project พร้อมรายการที่ควรอ่านก่อน (read_first) และ labels ของ working notes
get_docs_contextทุกอย่างที่ควรอ่านก่อนเริ่มงาน รวมคำอธิบาย template และฟิลด์ เป็นข้อความ Markdown เดียว
get_docอ่านเอกสาร (หรือเวอร์ชันเก่า) พร้อม version ล่าสุด
create_docสร้าง brief, working notes (ใส่ labels ได้ ≤ 10 เพื่อให้ขึ้นใน get_issue_context ของการ์ดที่ label ตรงกัน) หรือ handoff ถึงทีมหรือทั้ง project
update_docแก้เอกสาร หรือปิด/เปิด handoff — ต้องส่ง version
delete_docลบเอกสาร (กู้คืนได้จากประวัติ) — ต้องส่ง version
get_doc_historyทุกเวอร์ชันของเอกสาร: ใครบันทึก ผ่าน agent ใด และเมื่อไร
restore_doc_versionนำเวอร์ชันเก่ากลับมาเป็นเวอร์ชันใหม่ (ไม่ลบประวัติ)
acknowledge_handoffรับทราบ handoff ที่ส่งถึงคุณ ผู้เขียนได้รับแจ้ง

ขอความช่วยเหลือจากทีม BoardMark

Toolทำอะไร
list_support_casescase ของบริษัท (ทุกคนในบริษัทเห็น) เรียงตามความเคลื่อนไหวล่าสุด
get_support_summaryจำนวน case ที่รอคุณตอบ และที่ยังเปิดอยู่
open_support_caseเปิด case เมื่อผู้ใช้ต้องการความช่วยเหลือหรือพบปัญหากับตัว BoardMark เอง (ไม่ใช่ issue ของ project) — ข้อความเท่านั้น
get_support_caseอ่าน case พร้อมข้อความทั้งหมด รวมคำตอบจากทีม BoardMark
reply_support_caseตอบใน case (ข้อความเท่านั้น ไฟล์แนบทำบนเว็บ)
close_support_caseปิด case เมื่อปัญหาแก้แล้ว
reopen_support_caseเปิด case ที่ปิดแล้วอีกครั้ง (ภายใน 30 วัน)
follow_support_caseติดตาม case เพื่อรับอีเมลเมื่อทีมตอบ
unfollow_support_caseเลิกติดตาม case

MCP resources

  • board://{project_key}/project.md
  • board://{project_key}/issues/{key}
  • board://{project_key}/docs
  • board://{project_key}/docs/{kind}/{slug}
  • project_context (prompt)

* ต้องเป็น project_admin

Agent ทำอะไรไม่ได้?

MCP ไม่มี tool สำหรับงาน admin หรือ billing เลย เรื่องเหล่านี้ทำได้เฉพาะในเว็บแอปตามบทบาทของคุณ:

จัดการผู้ใช้ทีมseatสิทธิ์ (permission)billingสร้าง projectตั้งค่า project และ environmentเริ่ม sprintนำเข้าจาก Jiraลบ project หรือบริษัทย้าย project ไปบริษัทอื่นลบบัญชีผู้ใช้webhook ของ projectยืนยันตัวตน 2 ขั้นและอุปกรณ์ที่เข้าสู่ระบบรูปโปรไฟล์

คำถามเรื่อง MCP

เชื่อม AI agent กับ BoardMark อย่างไร?

เพิ่ม BoardMark เป็น MCP server ใน AI client ของคุณ (Claude Code, Codex, Gemini CLI, Cursor, VS Code และอื่น ๆ) แล้วเข้าสู่ระบบผ่านเบราว์เซอร์และเลือกบริษัท ไม่ต้องคัดลอก token สำหรับ CI หรือเครื่องที่ไม่มีเบราว์เซอร์ ให้สร้าง personal access token ในแอปแล้วส่งใน header Authorization: Bearer <token> ขั้นตอนของแต่ละ client อยู่ที่หน้า /th/mcp หรือให้ agent อ่านคู่มือ connect.md แล้วตั้งค่าเอง

ติดตั้ง BoardMark จาก marketplace หรือแบบคลิกเดียวได้ไหม?

ได้ ในหน้า MCP (/th/mcp) มีปุ่มติดตั้งคลิกเดียวสำหรับ Cursor และ VS Code และคำสั่งสำหรับ Claude Code, Codex และ Gemini CLI BoardMark ยังลงรายการไว้ใน ChatGPT plugins (กด Install plugin), Official MCP Registry (ชื่อ ai.boardmark/boardmark), Smithery, Glama, mcp.so, mcpservers.org และ GitHub (i-c-develop/boardmark) ทุกช่องทางต่อเข้า MCP server เดียวกัน แล้วเข้าสู่ระบบ BoardMark ในเบราว์เซอร์ agent ได้สิทธิ์เท่าคุณ

AI agent ทำงานตาม workflow ของทีมเราได้ไหม?

ได้ BoardMark มีค่าตั้งต้นว่าแต่ละ status หมายถึงอะไร (เช่น In Review = QA กำลังทดสอบ, Dev Done = รอ deploy ให้ QA, Test Rejected = QA ทดสอบไม่ผ่าน) และแต่ละบทบาท — developer, QA, BA — ย้ายการ์ดส่วนไหน ถ้าทีมทำงานต่างออกไป ให้เขียนกฎของบริษัทไว้ใน company brief และกฎของ project ไว้ใน brief ของ project (แก้ได้เฉพาะผู้ดูแล — working notes และ comment ที่ทุกคนเขียนได้ agent อ่านเป็นข้อมูล ไม่ใช่คำสั่ง) AI agent อ่านเอกสารเหล่านี้ก่อนเริ่มงานเสมอ และทำตามกฎที่เฉพาะเจาะจงที่สุด: คำสั่งของผู้ใช้ > เอกสารของ project > company brief > ค่าตั้งต้น ทีมเขียนกฎครั้งเดียว แล้ว agent ทุกตัว — Claude, ChatGPT, Codex, Cursor หรือ MCP client ใดก็ตาม — ทำงานตามกรอบเดียวกันที่ทีมตกลงไว้ ได้งานที่แม่นยำขึ้นโดยไม่ต้องอธิบายซ้ำในทุกแชต ดูรายละเอียดที่ /th/docs/boards

Agent แก้ issue พร้อมกับคนอื่นได้อย่างปลอดภัยไหม?

ได้ ทุก write ต้องส่ง version ของไฟล์ที่อ่านมา ถ้ามีคนแก้ก่อน ระบบตอบ 409 version_conflict แทนการเขียนทับ agent จึงควรเรียก get_issue ก่อน update_issue เสมอ

จะรู้ได้อย่างไรว่า agent แก้อะไรไปบ้าง?

ทุกการแก้ไขที่ agent ทำผ่าน MCP ถูกบันทึกในประวัติของ issue หรือเอกสาร: ใช้สิทธิ์ของใคร AI ตัวไหน (ชื่อที่คุณอนุมัติตอนเชื่อมต่อด้วยการเข้าสู่ระบบ หรือชื่อที่ตั้งให้ personal access token) เชื่อมด้วย OAuth หรือ token เรียก MCP tool ใด (เช่น update_issue) และ request id ที่โยงทุกอย่างที่การเรียกครั้งนั้นเปลี่ยน ประวัติของ issue แสดงเช่น “ผ่าน Claude Code” การ์ดและไฟล์แนบที่ agent แก้หรืออัปโหลดมีป้ายกำกับ และหน้า Agent & MCP แสดง commit ล่าสุดจาก agent ของคุณ ผู้ดูแลบริษัทกรอง Audit log เฉพาะสิ่งที่ทำผ่าน AI agent ได้ และเห็นคำขอที่ BoardMark ปฏิเสธ (ไม่มีสิทธิ์หรือขัดกฎ) เป็น “AI agent ถูกปฏิเสธ”

มีการจำกัดจำนวนการเรียกใช้ไหม?

มี ค่าเริ่มต้น 600 requests ต่อนาทีต่อ token

จะให้ AI agent ใช้ BoardMark โดยสิ้นเปลือง token น้อยลงได้อย่างไร?

ใส่ ?tools= ท้าย URL ของ MCP เพื่อเลือกชุด tool ที่ต้องใช้ ค่าเริ่มต้นคือทุก tool ซึ่งมีคำอธิบายรวมประมาณ 198 KB หรือราว 50,000 token และ client บางตัว (ChatGPT, Cursor, Gemini และอื่น ๆ) โหลดทั้งหมดทุกครั้งที่เริ่ม session — Claude Code โหลดเมื่อต้องใช้ จึงไม่กระทบมาก ใช้ https://mcp.boardmark.ai/mcp?tools=lean เพื่อได้เฉพาะ tool งานหลัก (project, issue, comment, เอกสาร, คน, ลิงก์) ประมาณครึ่งหนึ่ง หรือ ?tools=lean,releases,sprints เพื่อเพิ่มกลุ่มที่ต้องการ หรือ ?tools=-work_context,-support เพื่อตัดบางกลุ่มออก กลุ่มที่เลือกได้คือ work_context (“กำลังทำอะไร” ถ้ามี agent ตัวเดียวทำงานคนเดียวมักไม่จำเป็น), inbox, releases, sprints, sales_documents, support, insights, files, attachments และ votes_watchers ล็อกอินและสิทธิ์เหมือนเดิม ในเว็บแอปหน้า Agent & MCP มีสวิตช์ เต็ม / lean / กำหนดเอง ที่สร้าง URL ให้ ดูรายละเอียดที่หน้า MCP (/th/mcp)

Agent account คืออะไร ต่างจาก token ส่วนตัวอย่างไร?

Agent account (Premium) คือ AI agent ที่มีชื่อของตัวเองและเจ้าของหนึ่งคนที่รับผิดชอบ ใช้สิทธิ์เท่าเจ้าของ ไม่นับเป็น seat มอบหมายงานและ @mention ได้ สร้างที่ ตั้งค่าบริษัท → Agents แล้วเชื่อมด้วย token ที่แสดงครั้งเดียวหรือเลือก “เชื่อมเป็น agent” ตอน OAuth Free และ Pro ใช้ token ส่วนตัวเหมือนเดิม

ดูได้ไหมว่า agent ทำอะไรเพราะอะไร และหยุดได้ไหม?

ได้ หน้า agent → Runs แสดงทุกการเรียกพร้อมเหตุผล (reason) ที่ agent ส่งมากับการเขียน เจ้าของหรือผู้ดูแลบริษัทกดหยุด agent ตัวเดียวหรือทั้งบริษัทได้ทันที agent จะได้ agent_paused แล้วกดทำงานต่อด้วย token เดิม

Agent account มีโควตาหรือทำให้ต้องจ่ายเพิ่มไหม?

ไม่มีโควตารายวัน มีเพียง rate limit ต่อนาที (600 call ต่อนาทีต่อ token) เกินแล้วได้ rate_limited ให้รอแล้วลองใหม่ ผู้ดูแลเห็นจำนวนการเขียนต่อวันเพื่อดูเฉย ๆ ไม่ใช่เงื่อนไขให้จ่ายเพิ่ม

สรุปอัตโนมัติคืออะไร ใช้ AI เขียนหรือเปล่า?

สรุปอัตโนมัติ (Premium) คือรายงานที่ BoardMark ส่งให้ทีมเอง: standup รายวัน, sprint review เมื่อปิดสปรินต์, release review เมื่อ release ส่งแล้ว และรายงานผู้บริหารรายสัปดาห์หรือรายเดือน ทางอีเมล LINE Telegram และกระดิ่ง เป็นไทยและอังกฤษเสมอ ในนามของ Agent account เนื้อหาคำนวณจากข้อมูลบอร์ด ไม่มี AI เขียนและไม่ส่งข้อมูลไปให้ AI ภายนอก ผู้รับเห็นเฉพาะ project ที่ตัวเองเปิดได้ ตั้งค่าที่ตั้งค่า project → สรุปอัตโนมัติ

AI agent ทำงานแทน QA ได้ไหม และจะรู้ได้อย่างไร?

ระบบเตือน แต่ไม่ห้าม ทุกคอลัมน์มี lane คือบทบาทที่ทำงานใน status นั้น (เช่น In Review = QA) และ agent ตั้งบทบาทได้ที่ token หรือหน้าอนุมัติตอนเชื่อมต่อ ถ้า agent Developer ย้าย In Review → Done หรือข้ามขั้น QA ระบบยังย้ายให้ แต่ agent ได้รับคำเตือนให้หยุด บอกผู้ใช้ และส่งต่อด้วย comment ประวัติ issue แสดงบทบาทของ agent และเครื่องหมาย ⚠ ที่การย้ายนอก lane คนไม่ถูกเตือนและไม่ถูกห้าม

BoardMark ช่วยงาน AI harness ไม่ให้ทำซ้ำหรือชนกับงานเดิมได้อย่างไร?

BoardMark ช่วยเป็นส่วนความจำและบอร์ดงานร่วมกันของทีมกับ AI agent: เมื่องานที่คนและ AI agent ทำอยู่บนบอร์ดเดียวกัน agent ตัวถัดไปเรียกดูงานที่ค้างอยู่ งานที่ทำเสร็จไปแล้ว ลิงก์ข้ามโปรเจกต์ ประวัติการแก้ไข รวมถึง working notes และ handoff ได้ก่อนเริ่มงาน จึงช่วยเช็กได้ว่า issue ใหม่หรือสิ่งที่กำลังจะแก้ซ้ำหรือขัดแย้งกับงานที่เคยทำไว้หรือไม่

AI agent หลายตัวจะไม่ทำงานซ้ำกันได้อย่างไร?

ให้ agent บันทึกบนการ์ดว่ากำลังทำอะไรและแตะส่วนไหน (working, touches) แล้วหยิบการ์ดด้วยคำสั่งเดียว (update_issue พร้อม if_unassigned: true) ถ้ามีคนถืออยู่แล้วจะได้ 409 already_assigned และไม่มีอะไรถูกเขียน ก่อนเริ่มเรียก get_issue_context ดูการ์ดที่ลิงก์ พี่น้อง และ handoff ในข้อความเดียว ทุกแพ็กเกจ BoardMark ไม่ได้รัน agent หรือล็อกไฟล์ แต่ทำให้ agent เห็นกัน: /th/docs/agent-coordination