AgileHero
ทางการดำเนินการพื้นที่ทำงานแบบ agile จากเอเจนต์ของคุณ: สร้างและย้ายการ์ด จัดการ epics วางแผนโรดแมป จัด retrospective วาดไวท์บอร์ด และเขียนหน้า wiki
คุณทำอะไรได้บ้างด้วย AgileHero MCP?
-
เชื่อมต่อด้วย OAuth — เพิ่ม
https://mcp.agilehero.io/mcpลงในไคลเอนต์ MCP ใดก็ได้ แล้วลงชื่อเข้าด้วยบัญชี AgileHero ของคุณ ไม่จำเป็นต้องใช้คีย์ API -
ค้นหาข้ามโปรเจกต์ — ให้ผู้ช่วยของคุณค้นหาการ์ด อีพิก หรือหน้า wiki ตามเนื้อหาโดยใช้เครื่องมือ
searchแบบเต็มข้อความทั่วโลก -
จัดการการ์ดและอีพิก — อ่านรายละเอียดการ์ดหรืออีพิกทั้งหมด รวมถึงคำอธิบาย รายการตรวจสอบ ป้ายกำกับ และความคิดเห็น ผ่านทาง หรือ
-
แก้ไขหน้า wiki อย่างปลอดภัย — ดูตัวอย่างการเปลี่ยนแปลงก่อน แล้วจึงนำไปใช้ด้วย โดยใช้โทเค็นที่ส่งคืนมา
-
สร้างและแปลงไวท์บอร์ด — วาดไดอะแกรมด้วย หรือเปลี่ยนโน้ตเหนียวให้เป็นรายการในแบ็กล็อก
-
จัดทำ retrospective — ดูรายการ retrospective ที่มีอยู่ด้วย หรือสร้างรายการใหม่
เซิร์ฟเวอร์ MCP แบบโฮสต์
npx add-mcp 'https://mcp.agilehero.io/mcp'ติดตั้งลง Claude Code, Codex, Cursor และอื่นๆ
เอกสาร
AgileHero มาพร้อมกับ MCP server ในตัว: เพิ่ม URL เดียวให้กับ AI assistant ที่รองรับ MCP ลงชื่อเข้าด้วยบัญชี AgileHero ของคุณ แล้วมันจะทำงานกับโปรเจกต์ของคุณด้วยสิทธิ์ของคุณพอดี — มีเครื่องมือ 49 รายการครอบคลุมบอร์ด, backlog, epics, wiki, whiteboards, การประชุมย้อนหลัง (retrospectives) และ roadmap เอกสารอ้างอิงนี้สร้างจากตัว server เอง จึงเป็นปัจจุบันเสมอ
เพิ่งเริ่มต้นใช่ไหม? เริ่มจาก ภาพรวม AI agents หรือข้ามไปที่ การเชื่อมต่อ client ของคุณ ด้านล่าง ข้อความแบบ Rich text ทั้งหมดบน server นี้ใช้ AgileHero Markup (AHM) — ซึ่งเป็น XML dialect ที่เข้มงวดและผ่านการตรวจสอบ ออกแบบมาเพื่อให้ agents ไม่ทำลายเนื้อหาของมนุษย์ หากคุณกำลังเขียนสคริปต์แทนการเชื่อมต่อ assistant? ดู เอกสารอ้างอิง REST API ซึ่งใช้การลงชื่อเข้าด้วย OAuth แบบเดียวกัน
เชื่อมต่อ AI client ของคุณ
การเชื่อมต่อหมายถึงสองสิ่ง: เพิ่ม endpoint URL ให้กับ client ของคุณ จากนั้นลงชื่อเข้าด้วยบัญชี AgileHero ของคุณเมื่อ client ร้องขอ ไม่มี key ให้สร้างหรือวาง เมื่อเชื่อมต่อแล้ว client จะทำหน้าที่เป็นคุณ ด้วยสิทธิ์ของคุณพอดี; client ที่เชื่อมต่อทุกตัวจะแสดงอยู่ใน Settings → AI clients ในแอป ซึ่งคุณสามารถเพิกถอนได้ทุกเมื่อ Observer ไม่สามารถใช้ MCP server ได้: workspace ที่คุณเป็น observer จะไม่แสดงอยู่ในรายการ และทุกอย่างในนั้นจะอ่านว่าไม่พบ
Endpoint
https://mcp.agilehero.io/mcp
Transport
Streamable HTTP (POST)
การลงชื่อเข้า
AI client ของคุณจะเปิดหน้าต่างเบราว์เซอร์; อนุมัติครั้งเดียว เพิกถอนได้ทุกเมื่อใน Settings → AI clients
Claude Code
รันครั้งเดียวในเทอร์มินัล; Claude Code จะเก็บ server ไว้ในการกำหนดค่าระดับผู้ใช้ของคุณและลงชื่อเข้าผ่านเบราว์เซอร์ของคุณ
claude mcp add --transport http --scope user agilehero https://mcp.agilehero.io/mcp
- แฟล็กทั้งหมดต้องอยู่ก่อนชื่อ server
- จากนั้นรัน
/mcpภายในเซสชัน Claude Code และเลือก Authenticate (หรือรันclaude mcp login agilehero) และอนุมัติการลงชื่อเข้าในเบราว์เซอร์ของคุณ
ตรวจสอบ: รัน claude mcp list — agilehero ควรแสดงว่าเชื่อมต่อแล้ว หากแสดง "needs authentication" ให้รัน claude mcp login agilehero
เอกสาร Claude Code · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
VS Code (GitHub Copilot)
เพิ่มใน .vscode/mcp.json ใน workspace หรือรัน "MCP: Open User Configuration" สำหรับทุก workspace หน้าต่างเบราว์เซอร์จะเปิดขึ้นเพื่อลงชื่อเข้าในครั้งแรกที่ server เริ่มทำงาน
.vscode/mcp.json
{
"servers": {
"agilehero": {
"type": "http",
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- ต้องมี "type": "http" — หากไม่มี VS Code จะถือว่า URL เป็นคำสั่งให้รัน
ตรวจสอบ: รัน "MCP: List Servers" เริ่ม agilehero ลงชื่อเข้าให้เสร็จในเบราว์เซอร์ และตรวจสอบว่าเครื่องมือของมันปรากฏในมุมมอง Chat
เอกสาร VS Code (GitHub Copilot) · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Codex
เพิ่มจากเทอร์มินัล จากนั้นลงชื่อเข้า — การกำหนดค่าจะใช้ร่วมกันโดย Codex CLI, ส่วนขยาย IDE และแอปเดสก์ท็อป ChatGPT
codex mcp add agilehero --url https://mcp.agilehero.io/mcp
codex mcp login agilehero
- Codex ไม่เริ่มการลงชื่อเข้าให้เอง — รัน
codex mcp login agileheroหลังจากเพิ่ม server
ตรวจสอบ: รัน codex mcp list — agilehero ควรแสดงว่าผ่านการรับรองความถูกต้อง; จากนั้นขอให้ Codex แสดงรายการโปรเจกต์ AgileHero ของคุณ
เอกสาร Codex · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Zed
เพิ่มใน settings.json หรือใช้ Settings → AI → MCP Servers → Add Remote Server; Zed จะแจ้งให้คุณลงชื่อเข้า
~/.config/zed/settings.json
{
"context_servers": {
"agilehero": {
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- ละเว้น headers — Zed จะเริ่มการลงชื่อเข้าเมื่อไม่มีการกำหนดค่า Authorization header เท่านั้น
ตรวจสอบ: รีสตาร์ท Zed อนุมัติการลงชื่อเข้าในเบราว์เซอร์เมื่อถูกถาม และขอให้มันแสดงรายการโปรเจกต์ AgileHero ของคุณ — การเรียกที่สำเร็จครั้งแรกยืนยันการเชื่อมต่อ
เอกสาร Zed · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
GitHub Copilot CLI
เพิ่มใน ~/.copilot/mcp-config.json หรือ .mcp.json ภายใน repository
~/.copilot/mcp-config.json
{
"mcpServers": {
"agilehero": {
"type": "http",
"url": "https://mcp.agilehero.io/mcp"
}
}
}
- ต้องใช้ GitHub Copilot CLI 1.0.83 หรือใหม่กว่า (รองรับ Client ID Metadata Document)
- Copilot CLI จะเปิดการลงชื่อเข้าเมื่อ server ร้องขอครั้งแรก; คุณยังสามารถรัน
/mcp auth agileheroภายในเซสชันได้
ตรวจสอบ: รัน /mcp ภายใน Copilot CLI — agilehero ควรแสดงเป็น connected พร้อมกับเครื่องมือของมัน
เอกสาร GitHub Copilot CLI · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Claude (เว็บ, เดสก์ท็อป, Cowork)
เพิ่ม AgileHero เป็น custom connector และลงชื่อเข้า; connector นี้ใช้ได้ใน Claude บนเว็บ, Claude Desktop, Cowork และแอปมือถือ
Settings → Connectors → Add custom connector
Name: AgileHero
URL: https://mcp.agilehero.io/mcp
Sign in now
- connector นี้จะปรากฏใน Claude Code ด้วยเมื่อลงชื่อเข้าด้วยบัญชี Claude เดียวกัน
- แผนฟรี: custom connector หนึ่งตัว ทีมและ Enterprise: Owner เป็นผู้เพิ่ม connector และสมาชิกทุกคนลงชื่อเข้าด้วยบัญชี AgileHero ของตนเอง
ตรวจสอบ: เริ่มแชทใหม่ — AgileHero จะแสดงอยู่ในรายการ connectors และการขอให้ Claude แสดงรายการโปรเจกต์ AgileHero ของคุณจะทำงาน
เอกสาร Claude (เว็บ, เดสก์ท็อป, Cowork) · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
ChatGPT
สร้าง connector ในโหมด Developer และลงชื่อเข้าด้วย OAuth
Settings → Connectors → Create (Developer mode)
Name: AgileHero
MCP server URL: https://mcp.agilehero.io/mcp
Authentication: OAuth
- ใช้ได้กับ Plus, Pro, Business, Enterprise และ Edu ที่เปิดโหมด Developer; ใน workspace ผู้ดูแลระบบหรือเจ้าของจะเผยแพร่ connector ให้สมาชิก
ตรวจสอบ: เปิดแชทใหม่โดยเปิดใช้ AgileHero connector และขอให้ ChatGPT แสดงรายการโปรเจกต์ AgileHero ของคุณ
เอกสาร ChatGPT · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Client อื่น ๆ
MCP client ใดก็ตามที่รองรับ OAuth กับ Client ID Metadata Documents: เพิ่ม endpoint เป็น remote (Streamable HTTP) server และอนุมัติการลงชื่อเข้าในเบราว์เซอร์ของคุณ
Transport: Streamable HTTP
URL: https://mcp.agilehero.io/mcp
Authentication: OAuth (sign in when the client asks)
- Client ที่รองรับเฉพาะ static tokens หรือ headers ไม่สามารถเชื่อมต่อได้ — AgileHero ใช้การลงชื่อเข้าด้วย OAuth เท่านั้น
ตรวจสอบ: รีสตาร์ท client อนุมัติการลงชื่อเข้าในเบราว์เซอร์เมื่อถูกถาม และขอให้มันแสดงรายการโปรเจกต์ AgileHero ของคุณ — การเรียกที่สำเร็จครั้งแรกยืนยันการเชื่อมต่อ
เอกสาร client อื่น ๆ · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
ยังไม่รองรับ
Client เหล่านี้ยังไม่สามารถลงชื่อเข้า AgileHero ได้ ส่วนใหญ่ขาดการรองรับ Client ID Metadata Documents ซึ่งเป็นวิธีการลงทะเบียน client แบบ OAuth ที่ AgileHero ใช้ (คำแนะนำ MCP ปัจจุบัน); เราตรวจสอบเอกสารของผู้จำหน่ายเป็นประจำและเลื่อน client ขึ้นทันทีที่มีคุณสมบัติครบ
Cursorยังไม่รองรับ
Cursor ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Cursor · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
OpenCodeยังไม่รองรับ
OpenCode ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร OpenCode · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Gemini CLIยังไม่รองรับ
Gemini CLI ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Gemini CLI · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Clineยังไม่รองรับ
Cline ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Cline · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Google Antigravityยังไม่รองรับ
Google Antigravity ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Google Antigravity · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Ampยังไม่รองรับ
Amp ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Amp · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Raycast AIยังไม่รองรับ
Raycast AI ยังไม่รองรับ Client ID Metadata Documents (การลงชื่อเข้าด้วย OAuth ต้องใช้ Dynamic Client Registration หรือ client ที่ลงทะเบียนไว้ล่วงหน้า) ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Raycast AI · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Kiroยังไม่รองรับ
Kiro ลงชื่อเข้าด้วย URL Client ID Metadata Document ที่คุณระบุ และ AgileHero ยังไม่ได้โฮสต์ Client ID Metadata Document สำหรับมัน
เอกสาร Kiro · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Warpยังไม่รองรับ
Warp ยังไม่มีระบบลงชื่อเข้าด้วย OAuth สำหรับ server ที่ผู้ใช้เพิ่ม ดังนั้นจึงไม่สามารถเชื่อมต่อ AgileHero ได้ในตอนนี้
เอกสาร Warp · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
JetBrains AI Assistantยังไม่รองรับ
JetBrains AI Assistant ไม่มีการลงชื่อเข้าด้วย OAuth สำหรับ remote servers และ mcp-remote bridge จำเป็นต้องมี hosted client document — AgileHero ยังไม่ได้โฮสต์ Client ID Metadata Document สำหรับมัน
เอกสาร JetBrains AI Assistant · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
Continueยังไม่รองรับ
Continue ไม่มีการลงชื่อเข้าด้วย OAuth สำหรับ Streamable HTTP servers และ mcp-remote bridge จำเป็นต้องมี hosted client document — AgileHero ยังไม่ได้โฮสต์ Client ID Metadata Document สำหรับมัน
เอกสาร Continue · ตรวจสอบกับเอกสารของผู้จำหน่ายเมื่อ 2026-09-15
คำแนะนำสำหรับ server
MCP client ทุกตัวจะได้รับข้อตกลงเหล่านี้ในเวลาที่เริ่มต้น:
AgileHero MCP server.
พารามิเตอร์ id ทุกตัวและ id ทุกตัวในการตอบกลับเป็น uid สั้น — ใช้ uid ที่ส่งคืนโดยเครื่องมือ list/get/search เสมอ อย่าสร้างขึ้นเอง เครื่องมือส่วนใหญ่ต้องใช้ project uid — เรียก list_projects ก่อนเพื่อค้นหา workspaces และโปรเจกต์ ควรใช้ search (full-text, เนื้อหาทุกประเภท) มากกว่า search_cards (title-substring, หนึ่งโปรเจกต์)
ในเครื่องมืออัปเดต ควรใช้ฟิลด์ delta แบบ add_*/remove_* สำหรับคอลเลกชัน (เพิ่มทีละน้อย ปลอดภัย); ฟิลด์คอลเลกชันธรรมดา (assigned_to, labels, checklists, cards_relations, links, attachments) จะแทนที่สถานะก่อนหน้าและไม่สามารถใช้ร่วมกับ delta ของมันได้ รายการ checklist คือ { description, checked }. ตามทันการเปลี่ยนแปลงด้วย updated_since ใน list_cards / list_epics
ใช้ move_card (ไม่ใช่ update_card) เพื่อเปลี่ยน list หรือตำแหน่งของการ์ด; list_id ที่ว่างหมายถึง backlog
เครื่องมือ Wiki, whiteboard, retrospective และ roadmap กำหนดให้ workspace ของโปรเจกต์ต้องอยู่ในแผน Pro หรือทดลองใช้ การเขียนองค์ประกอบ whiteboard เป็นเครื่องมือแบบ batch และเป็นแบบ all-or-nothing; uid ขององค์ประกอบมาจาก get_whiteboard รายการ retrospective จัดการด้วย add_retro_items และ move_retro_item (move_card ปฏิเสธการ์ด retrospective)
ขีดจำกัดรายวัน: การเรียกเครื่องมือจะถูกนับต่อผู้ใช้ต่อ workspace — 500/วันในแผนฟรี, 5,000/วันในแผน Pro หรือทดลองใช้ รีเซ็ตเวลา 00:00 UTC get_ahm_spec และ list_projects จะไม่ถูกนับ (รวมถึงการเรียกใด ๆ ที่ไม่สามารถระบุเป็น workspace เดียว เช่น การค้นหาแบบไม่จำกัดขอบเขต) หากเกินขีดจำกัด เครื่องมือจะส่งคืนข้อผิดพลาด daily-limit จนกว่าจะรีเซ็ตหรืออัปเกรด
ข้อความแบบ Rich text ทั้งหมด (หน้า wiki, คำอธิบายการ์ด/epic, ความคิดเห็น) เป็น AgileHero Markup (AHM) — XML ที่เข้มงวด ห้ามใช้ markdown หรือ HTML; เรียก get_ahm_spec หนึ่งครั้งก่อนเขียนใด ๆ การแก้ไข Rich-text เป็นสองขั้นตอนโดยการออกแบบ: preview_wiki_page_update / preview_description_update (ผลที่ตามมา + preview_token) จากนั้นใช้เครื่องมืออัปเดตที่ตรงกันกับ token นั้น
เอกสารเครื่องมือทั้งหมด: https://agilehero.io/docs/mcp
ข้อกำหนด AHM: https://agilehero.io/docs/mcp/agilehero-markup
เครื่องมือ (49)
list_projectsอ่านอย่างเดียว
แสดงรายการ workspace และโปรเจกต์ทั้งหมดที่ผู้ใช้ของ token เข้าถึงได้ เพื่อให้ agent แก้ไข project uid ที่เครื่องมืออื่นส่วนใหญ่ต้องการ เรียกสิ่งนี้ก่อนเสมอเมื่อไม่รู้จัก project uid — อย่าขอให้ผู้ใช้วาง uid มา ส่งคืน workspaces (uid, name, plan, บทบาทของคุณ) พร้อมกับโปรเจกต์ของมัน (uid, name, url) เครื่องมือเสาหลัก Pro (wiki, metrics) ต้องการให้แผนของ workspace เป็น pro หรือ trial
searchอ่านอย่างเดียว
การค้นหาข้อความเต็มทั่วทั้งผลิตภัณฑ์ (OpenSearch): การ์ด, อีปิก, หน้า wiki และโปรเจกต์ โดยค้นจากชื่อเรื่อง, คำอธิบาย, ความคิดเห็น, รายการใน checklist และชื่อไฟล์แนบ โดยจัดอันดับตามความเกี่ยวข้องและให้ความสำคัญกับรายการที่เพิ่งถูกแก้ไข ใช้เครื่องมือนี้เพื่อค้นหาสิ่งใดก็ตามจากเนื้อหา ("การ์ดที่เราคุยกันเรื่องการย้ายระบบ"); ใช้ search_cards เฉพาะการค้นหาชื่อเรื่องแบบ substring ภายในโปรเจกต์เดียวเท่านั้น ผลลัพธ์แต่ละรายการมาพร้อมกับประเภท, uid ที่พร้อมใช้งาน (การ์ดใช้ get_card/update_card, อีปิกใช้ get_epic, wiki_pages ใช้ show_wiki_page, โปรเจกต์ใช้พารามิเตอร์ project_id), ลิงก์ deep-link และ snippet ที่ไฮไลต์ด้วย <mark> เพื่อแสดงว่าทำไมจึงตรงกับผลการค้นหา คุณสามารถจำกัดขอบเขตด้วย project_id หรือ assigned_to_me ได้ตามต้องการ ใช้ page/per_page ในการแบ่งหน้า; total_count คือจำนวนผลลัพธ์ที่ตรงทั้งหมด
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| query | string | ใช่ | คำค้นหาแบบข้อความอิสระ |
| project_id | string | uid ของโปรเจกต์เพื่อจำกัดขอบเขตการค้นหา | |
| assigned_to_me | boolean | เฉพาะผลลัพธ์ที่ถูกมอบหมายให้ผู้ใช้ของ token | |
| page | integer | หมายเลขหน้า (ค่าเริ่มต้น 1) | |
| per_page | integer | จำนวนผลลัพธ์ต่อหน้า, 1-50 (ค่าเริ่มต้น 20) |
get_cardread-only
อ่านการ์ดหนึ่งใบอย่างครบถ้วน: คำอธิบายในรูปแบบ AgileHero Markup พร้อม block ids และ description_version (ซึ่งเป็นสองอินพุตที่ preview_description_update / update_description รับ), ตำแหน่งใน list, อีปิก, ป้ายกำกับ, ผู้รับมอบหมาย, ผู้รายงาน, ประเภท, การประมาณการ, กำหนดส่ง, checklists, ลิงก์, ไฟล์แนบ, การ์ดที่เกี่ยวข้อง และความคิดเห็นแบบเธรด รับเพียง card uid เท่านั้น — ไม่มีพารามิเตอร์ project_id uid ของการ์ดมาจาก list_cards, search หรือ search_cards
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | ตัวระบุเฉพาะของการ์ด |
get_epicread-only
อ่านอีปิกหนึ่งรายการอย่างครบถ้วน: คำอธิบายในรูปแบบ AgileHero Markup พร้อม block ids และ description_version (ซึ่งเป็นสองอินพุตที่ preview_description_update / update_description รับ), ชื่อ, หมายเลข, สี, วันที่เริ่ม/สิ้นสุด, ผู้รับมอบหมาย, checklists, ลิงก์, ไฟล์แนบ, การ์ดทุกใบในอีปิกนั้น (uid, หมายเลข, ชื่อ และ list พร้อมหมวดหมู่ — list ที่เป็น null หมายถึง backlog — เรียงตามลำดับบอร์ด ดังนั้นนี่คือวิธีแสดงรายการการ์ดทั้งหมดของอีปิกและดูว่าการ์ดใดอยู่ในสถานะต้องทำ, กำลังดำเนินการ หรือเสร็จสิ้น) และความคิดเห็นแบบเธรด รับเพียง epic uid เท่านั้น — ไม่มีพารามิเตอร์ project_id uid ของอีปิกมาจาก list_epics หรือ search
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | ตัวระบุเฉพาะของอีปิก |
list_wiki_pathsPro · wikiread-only
แสดงโครงสร้าง wiki ทั้งหมดของโปรเจกต์ตามลำดับการแสดงผล — ทุกโฟลเดอร์และหน้าพร้อม uid, ชื่อ, ประเภท (หน้าหรือโฟลเดอร์) และ parent_id — เพื่อให้ agent สามารถระบุ page uid ที่ show_wiki_page รับ และเลือก parent_id สำหรับ create_wiki_page ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโปรเจกต์ |
show_wiki_pagePro · wikiread-only
ดึงหน้า wiki ในรูปแบบ AgileHero Markup (AHM) พร้อม document_version เนื้อหาเป็น AHM ไม่ใช่ markdown — block ids, จุดยึด <discussion> และการอ้างอิง <image/>/<attachment/> เป็นส่วนหนึ่งของเอกสาร; อ่าน get_ahm_spec ก่อนแก้ไข แก้ไขผ่าน preview_wiki_page_update จากนั้น update_wiki_page โดยใช้ block ids และ document_version ที่ส่งกลับมาที่นี่ ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | ตัวระบุเฉพาะของเส้นทางหน้า |
get_ahm_specread-only
ข้อกำหนด AgileHero Markup (AHM) v1.0 — รูปแบบ rich-text เพียงรูปแบบเดียวที่ AgileHero ยอมรับ (markdown และ HTML ถูกปฏิเสธ) อ่านสิ่งนี้หนึ่งครั้งก่อนเขียนหรือแก้ไข rich-text ใด ๆ (หน้า wiki, คำอธิบายการ์ด/อีปิก, ความคิดเห็น): คำศัพท์, คุณลักษณะ, กฎการ escape และตัวอย่างการใช้งาน ข้อความเดียวกันบนเว็บ: https://agilehero.io/docs/mcp/agilehero-markup
create_wiki_pagePro · wiki
สร้างหน้า wiki (สามารถอยู่ในโฟลเดอร์ได้) ด้วยเนื้อหา AgileHero Markup (AHM) เนื้อหาต้องอยู่ใน <agile-hero-markup version="1.0"> — markdown และ HTML ถูกปฏิเสธ; อ่าน get_ahm_spec ก่อน ส่งคืน uid, url, document_version และเนื้อหาของหน้าใหม่ ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
| name | string | ใช่ | ชื่อหน้า |
| parent_id | string | uid ของโฟลเดอร์ (จาก list_wiki_paths) | |
| content | string | เนื้อหาหน้าเป็น AHM; ละเว้นเพื่อสร้างหน้าว่าง |
preview_wiki_page_updatePro · wikiread-only
ขั้นตอนแรกที่จำเป็นสำหรับการอัปเดตหน้า wiki ทุกครั้ง: ตรวจสอบการดำเนินการและส่งคืนผลลัพธ์ที่คำนวณโดยเซิร์ฟเวอร์ (block ที่เพิ่ม/ลบ/เปลี่ยนแปลง, ไฟล์ที่จะถูกลบถาวร, การสนทนาของทีมที่จะสูญเสียจุดยึด, คำเตือนเกี่ยวกับ markdown ที่เป็นไปได้) พร้อม preview_token ที่ update_wiki_page ต้องการ ไม่มีการแก้ไขใด ๆ การดำเนินการอ้างอิงตาม block (replace_block / insert_after / delete_block / move_block) ด้วยเนื้อหา AHM — อ่าน get_ahm_spec ก่อน และรับ block ids + document_version จาก show_wiki_page ตรวจสอบผลลัพธ์ก่อนบันทึก: การลบไฟล์หรือการยกเลิกจุดยึดการสนทนาที่ระบุไว้นั้นยอมรับได้เฉพาะเมื่อผู้ใช้ขอเท่านั้น ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของเส้นทางหน้า |
| document_version | string | ใช่ | จาก show_wiki_page — ยืนยันความสดใหม่ |
| operations | array of object | ใช่ | ใช้ตามลำดับกับเอกสารที่กำลังเปลี่ยนแปลง |
update_wiki_pagePro · wikidestructive
ใช้การอัปเดตหน้า wiki ที่เคยแสดงตัวอย่างไว้ก่อนหน้านี้ ต้องใช้ preview_token จาก preview_wiki_page_update สำหรับการดำเนินการเหล่านี้และ document_version นี้เท่านั้น — การบันทึกโดยไม่แสดงตัวอย่างเป็นไปไม่ได้โดยการออกแบบ ทุกการบันทึกจะสร้างเวอร์ชันหน้าที่ผู้ใช้สามารถย้อนกลับได้ในแอป ส่งคืนหน้าที่อัปเดตแล้ว (AHM + document_version ใหม่) และผลลัพธ์ที่นำไปใช้ ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของเส้นทางหน้า |
| document_version | string | ใช่ | เวอร์ชันที่ใช้แสดงตัวอย่าง |
| operations | array of object | ใช่ | การดำเนินการที่แน่นอนที่แสดงตัวอย่างไว้ |
| preview_token | string | ใช่ | จาก preview_wiki_page_update |
preview_description_updateread-only
ขั้นตอนแรกที่จำเป็นสำหรับการแก้ไขคำอธิบายการ์ดหรืออีปิกทุกครั้ง: ตรวจสอบการดำเนินการ block และส่งคืนผลลัพธ์ที่คำนวณโดยเซิร์ฟเวอร์พร้อม preview_token ที่ update_description ต้องการ ไม่มีการแก้ไขใด ๆ เนื้อหาเป็น AgileHero Markup (AHM, พื้นผิวคำอธิบาย: ไม่มีตาราง, สี, การจัดตำแหน่ง, การสนทนา หรือไฟล์แนบ) — อ่าน get_ahm_spec ก่อน; block ids และ document_version มาจาก get_card / get_epic
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| resource_type | enum: card | epic | ใช่ | |
| id | string | ใช่ | uid ของการ์ดหรืออีปิก |
| document_version | string | ใช่ | จาก get_card / get_epic |
| operations | array of object | ใช่ | ใช้ตามลำดับกับคำอธิบายที่กำลังเปลี่ยนแปลง |
update_descriptiondestructive
ใช้การอัปเดตคำอธิบายที่เคยแสดงตัวอย่างไว้ก่อนหน้านี้กับการ์ดหรืออีปิก ต้องใช้ preview_token จาก preview_description_update สำหรับการดำเนินการเหล่านี้และ document_version นี้เท่านั้น — การบันทึกโดยไม่แสดงตัวอย่างเป็นไปไม่ได้โดยการออกแบบ ส่งคืนคำอธิบายที่อัปเดตแล้ว (AHM + document_version ใหม่)
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| resource_type | enum: card | epic | ใช่ | |
| id | string | ใช่ | uid ของการ์ดหรืออีปิก |
| document_version | string | ใช่ | เวอร์ชันที่ใช้แสดงตัวอย่าง |
| operations | array of object | ใช่ | การดำเนินการที่แน่นอนที่แสดงตัวอย่างไว้ |
| preview_token | string | ใช่ | จาก preview_description_update |
list_whiteboardsPro · whiteboardread-only
แสดงรายการ whiteboards ของโปรเจกต์ (uid, ชื่อ, จำนวนองค์ประกอบ, url) ใช้ get_whiteboard เพื่ออ่านองค์ประกอบของบอร์ด ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโปรเจกต์ |
create_whiteboardPro · whiteboard
สร้าง whiteboard ว่างบนโปรเจกต์ เพิ่มเนื้อหาด้วย create_whiteboard_elements ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโปรเจกต์ |
| name | string | ใช่ | ชื่อ whiteboard |
get_whiteboardPro · whiteboardread-only
อ่าน whiteboard เป็นการแสดงข้อความแบบกระชับ: ขอบเขตบอร์ดบวกหนึ่งบรรทัดต่อองค์ประกอบ — "<type> <uid> ที่ <x>,<y> ขนาด <w>x<h> [สี] [parent <frame-uid>] [linked <card|epic> <uid>] \"ข้อความ\"", ตัวเชื่อมต่อเป็น "connector <uid> <from> -> <to>" uid ขององค์ประกอบจากที่นี่คือตัวจัดการที่เครื่องมือเขียน whiteboard ทุกตัวรับ ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | ตัวระบุเฉพาะของ whiteboard |
create_whiteboard_elementsPro · whiteboard
สร้างองค์ประกอบ whiteboard สูงสุด 100 รายการในการเรียกแบบ transactional ครั้งเดียว (ทั้งหมดหรือไม่มีเลย, หนึ่งเหตุการณ์ realtime) ขนาดดั้งเดิม, สี และตำแหน่งข้อความถูกนำไปใช้ฝั่งเซิร์ฟเวอร์ — โดยปกติให้เพียงประเภท + ข้อความ (+ สี) ละเว้น x/y แล้วองค์ประกอบจะถูกจัดเรียงอัตโนมัติ (กริดโดยค่าเริ่มต้น; arrange: row|column|grid, origin_x/origin_y/gap เพื่อปรับแต่ง); ให้ x/y เพื่อควบคุมเต็มรูปแบบ Frames ประกอบองค์ประกอบผ่าน parent_id (uid ของ frame ที่มีอยู่) หรือ parent_ref (ref ของ frame ก่อนหน้าในการเรียกนี้) Connectors ผูกองค์ประกอบด้วย uid (source_id/target_id) หรือ batch ref (source_ref/target_ref) — ไม่ใช่พิกัด; จุดยึดถูกคำนวณโดย UI ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| whiteboard_id | string | ใช่ | ตัวระบุเฉพาะของ whiteboard |
| elements | array of object | ใช่ | สร้างตามลำดับอาร์เรย์ — refs แก้ไขย้อนหลังเท่านั้น |
| arrange | enum: grid | row | column | เค้าโครงสำหรับองค์ประกอบที่ไม่มี x/y ชัดเจน (ค่าเริ่มต้น grid) | |
| origin_x | number | จุดเริ่มต้น x ของการจัดเรียงอัตโนมัติ (ค่าเริ่มต้น 100) | |
| origin_y | number | จุดเริ่มต้น y ของการจัดเรียงอัตโนมัติ (ค่าเริ่มต้น 100) | |
| gap | number | ระยะห่างการจัดเรียงอัตโนมัติเป็น px (ค่าเริ่มต้น 20) |
create_whiteboard_diagramPro · whiteboard
วาดไดอะแกรม (flowchart, process, dependency graph) บน whiteboard จากกราฟเชิงความหมาย — nodes, edges, groups ที่ไม่บังคับ, ไม่มีพิกัด: เซิร์ฟเวอร์จัดวางแบบหลายชั้นจากบนลงล่างด้วยขนาดดั้งเดิมและส่งคืน uid ขององค์ประกอบที่สร้างขึ้นโดยผูกกับ node ids ของคุณ วางใต้เนื้อหาบอร์ดที่มีอยู่ Transactional (ทั้งหมดหรือไม่มีเลย, หนึ่งเหตุการณ์ realtime) สูงสุด 20 nodes — แบ่งโฟลว์ขนาดใหญ่ออกเป็นสองไดอะแกรม ใช้รูปทรงธรรมดา (rectangle) เว้นแต่ความหมายต้องการ (diamond = การตัดสินใจ, stadium = จุดเริ่ม/สิ้นสุด, cylinder = ที่เก็บข้อมูล) แก้ไขผลลัพธ์ด้วย update_whiteboard_elements — เค้าโครงจะไม่รันอีกครั้ง ต้องใช้พื้นที่ทำงาน Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| whiteboard_id | string | ใช่ | ตัวระบุเฉพาะของ whiteboard |
| title | string | ชื่อไดอะแกรม (ชื่อ frame หรือหัวข้อเมื่อใช้ groups) | |
| nodes | array of object | ใช่ | |
| edges | array of object | ||
| groups | array of object | ||
| origin_x | number | มุมซ้ายบน x ที่ไม่บังคับ; ค่าเริ่มต้นอยู่ใต้เนื้อหาที่มีอยู่ | |
| origin_y | number | มุมซ้ายบน y ที่ไม่บังคับ; ค่าเริ่มต้นอยู่ใต้เนื้อหาที่มีอยู่ |
update_whiteboard_elementsPro · whiteboard
อัปเดตองค์ประกอบไวท์บอร์ดได้สูงสุด 100 รายการในการเรียกครั้งเดียวแบบ all-or-nothing: ย้าย (x/y), ปรับขนาด, จัดลำดับชั้น (z_index), เปลี่ยนข้อความ, เปลี่ยนสี, เปลี่ยนพาเรนต์ (parent_id — uid ของเฟรม หรือ "" เพื่อถอดออก), และลูกศร/เส้นทาง/ป้ายกำกับของคอนเนกเตอร์ uid ขององค์ประกอบมาจาก get_whiteboard; ไม่สามารถเปลี่ยนประเภทขององค์ประกอบได้ เฉพาะฟิลด์ที่ระบุเท่านั้นที่จะเปลี่ยนแปลง — คุณสมบัติอื่น ๆ ที่ไม่เกี่ยวข้องจะถูกเก็บรักษาไว้ ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| whiteboard_id | string | ใช่ | ตัวระบุเฉพาะของไวท์บอร์ด |
| updates | array of object | ใช่ |
delete_whiteboard_elementsPro · whiteboarddestructive
ลบองค์ประกอบไวท์บอร์ดได้สูงสุด 100 รายการในการเรียกแบบ transactional ครั้งเดียว การลบเฟรมหรือโหนดแผนผังความคิดจะปล่อยองค์ประกอบย่อยออกมาบนบอร์ด (องค์ประกอบเหล่านั้นจะไม่ถูกลบ — รวม uid ของพวกมันอย่างชัดเจนเพื่อลบด้วย) คอนเนกเตอร์ที่แนบกับองค์ประกอบที่ถูกลบจะไม่ถูกลบออกและจะห้อยค้างอยู่ uid ขององค์ประกอบมาจาก get_whiteboard ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| whiteboard_id | string | ใช่ | ตัวระบุเฉพาะของไวท์บอร์ด |
| ids | array of string | ใช่ | uid ขององค์ประกอบที่จะลบ |
review_whiteboardPro · whiteboardread-only
เรียกใช้การตรวจสอบคุณภาพแบบกำหนดตายตัวบนไวท์บอร์ด: ข้อความที่น่าจะล้นออกนอกองค์ประกอบ, องค์ประกอบที่ทับซ้อนกันอย่างเห็นได้ชัด, คอนเนกเตอร์ที่มีปลายทางไม่ผูกหรือห้อยค้าง, สีที่อยู่นอกจานสี UI, ตำแหน่งที่ไม่อยู่บนกริด, และองค์ประกอบที่พาเรนต์ถูกลบไปแล้ว เป็นคำแนะนำ — ผลการตรวจสอบเป็นข้อเสนอแนะ ไม่ใช่ข้อผิดพลาด และบอร์ดที่มีผลการตรวจสอบอาจเป็นสิ่งที่ผู้ใช้ต้องการพอดี ใช้หลังจากการวาดเพื่อตรวจสอบความถูกต้อง แก้ไขอย่างมากที่สุดหนึ่งครั้ง และอย่าวนซ้ำเพื่อไล่ตามรายงานที่ว่างเปล่า ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | ตัวระบุเฉพาะของไวท์บอร์ด |
convert_whiteboard_elementPro · whiteboard
แปลงองค์ประกอบไวท์บอร์ดเป็นรายการแบ็กล็อก: โน้ตเหนียวเป็นการ์ดหรืออีปิก หรือเฟรมเป็นอีปิก (โน้ตเหนียวที่เป็นองค์ประกอบย่อยของเฟรมจะกลายเป็นการ์ดบนอีปิกนั้น; องค์ประกอบย่อยที่แปลงแล้วจะถูกกำหนดใหม่ ไม่ถูกทำซ้ำ) องค์ประกอบยังคงอยู่บนบอร์ด เชื่อมโยงกับสิ่งที่มันกลายเป็น — get_whiteboard แสดงลิงก์นั้น องค์ประกอบสามารถแปลงได้เพียงครั้งเดียวเท่านั้น ข้อความของโน้ต/เฟรมจะกลายเป็นชื่อเรื่องเว้นแต่คุณจะส่งค่ามา ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ขององค์ประกอบ (sticky_note หรือ frame จาก get_whiteboard) |
| to | enum: card | epic | ใช่ | สิ่งที่จะสร้าง |
| title | string | ชื่อการ์ด / ชื่ออีปิก; ค่าเริ่มต้นคือข้อความขององค์ประกอบ | |
| list_id | string | เฉพาะการ์ด: uid ของลิสต์เป้าหมาย; ละเว้นสำหรับแบ็กล็อก | |
| color | string | เฉพาะอีปิก: สี hex; ค่าเริ่มต้นคือสีขององค์ประกอบ |
convert_mind_mapPro · whiteboard
แปลงแผนผังความคิดเป็นรายการแบ็กล็อกด้วยการแมปต่อโหนด: โหนดรากสามารถกลายเป็นอีปิกใหม่ (บทบาท "epic") หรือแนบกับอีปิกที่มีอยู่ (บทบาท "existing_epic" + target_epic_id); โหนดอื่น ๆ กลายเป็นการ์ดบนอีปิกนั้น (บทบาท "card") หรือป้ายกำกับโครงการ (บทบาท "label" — โหนดป้ายกำกับที่อยู่เหนือโหนดการ์ดในแผนผังจะถูกนำไปใช้กับการ์ดนั้น); บทบาท "skip" จะละเว้นโหนด ส่ง uid ของโหนด ROOT เป็น id และทุกโหนดที่คุณต้องการแปลงใน nodes (โหนดที่ไม่ได้ระบุจะถูกละเว้น) แปลงหนึ่งครั้งต่อโหนด: โหนดที่แปลงแล้วจะถูกปฏิเสธตั้งแต่ต้น — ส่งใหม่โดยไม่รวมโหนดเหล่านั้น ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของโหนดรากของแผนผังความคิด (จาก get_whiteboard) |
| nodes | array of object | ใช่ | |
| target_epic_id | string | uid ของอีปิก จำเป็นเมื่อใช้บทบาท "existing_epic" บนโหนดราก |
list_retrospectivesPro · retrospectivesread-only
แสดงรายการ retrospectives ของโครงการ: retrospectives แบบโมเดลใหม่และการตรวจสอบสุขภาพเมื่อเวิร์กสเปซมี, บอร์ด retrospective แบบคลาสสิกในกรณีอื่น รายการแบบโมเดลใหม่มี uid, name, kind (retro | health_check), status (open | live | closed), date (starts_on; closes_on สำหรับการตรวจสอบสุขภาพ), สเตจปัจจุบัน, เทมเพลต, uid ของผู้อำนวยความสะดวก, จำนวนของการดำเนินการที่สร้างขึ้น, และ url; การตอบสนองเพิ่ม open_actions_count ของโครงการ ใช้ get_retrospective สำหรับภาพรวมทั้งหมด ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโครงการ |
create_retrospectivePro · retrospectives
สร้าง retrospective: retrospective แบบโมเดลใหม่เมื่อเวิร์กสเปซมี, บอร์ด retrospective แบบคลาสสิกในกรณีอื่น; การตอบสนองคือ retrospective ตามที่ get_retrospective คืนค่า (คอลัมน์พร้อม uid ของพวกมัน) ดังนั้น add_retro_items สามารถตามมาได้ทันที retrospective แบบโมเดลใหม่มาจากเทมเพลต (ค่าเริ่มต้น went_well), เปิดรับโน้ตทันทีและมีคุณเป็นผู้อำนวยความสะดวก; ไม่บังคับ: focus, anonymity (ค่าเริ่มต้น: ของเทมเพลต), participant_ids (retro แบบ Selected-members; ละเว้นสำหรับสมาชิกทุกคนในโครงการที่มีสิทธิ์เขียน), ประเภทคำถาม check_in และ feedback, และ votes ผู้อำนวยความสะดวกเริ่มต้นและดำเนินการสเตจต่าง ๆ ในแอป บอร์ดคลาสสิกรับเฉพาะ name, date และ previous_retrospective_id และปฏิเสธอาร์กิวเมนต์แบบโมเดลใหม่ ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโครงการ |
| name | string | ใช่ | ชื่อ retrospective |
| template | enum: went_well | start_stop_continue | four_ls | mad_sad_glad | kalm | daki | starfish | plus_delta | sailboat | rose_thorn_bud | wrap | hot_air_balloon | three_pigs | project_retro | postmortem | kudos_lessons | คีย์เทมเพลต; ค่าเริ่มต้น went_well | |
| starts_on | string | วันที่, ISO-8601 (YYYY-MM-DD); ค่าเริ่มต้นคือวันนี้ | |
| starts_at | string | ชื่อแทนที่เลิกใช้ของ starts_on | |
| focus | string | สิ่งที่ retrospective นี้เกี่ยวกับ แสดงใต้ชื่อ | |
| anonymity | enum: anonymous | optional | named | ใครจะแสดงบนโน้ต: anonymous, optional (ผู้เขียนสามารถเพิ่มชื่อได้) หรือ named | |
| participant_ids | array of string | uid ผู้ใช้ของผู้เข้าร่วม (list_project_users); คุณเป็นหนึ่งในนั้นเสมอ | |
| check_in | enum: safety | mood | esvp | one_word | คำถามเช็คอิน (ค่าเริ่มต้น safety) | |
| feedback | enum: roti | pulse | one_word | คำถาม feedback ปิดท้าย (ค่าเริ่มต้น roti) | |
| votes | object | การตั้งค่าโหวต: budget (auto | fixed | unlimited), per_person (1-20), max_per_topic (1-10) | |
| previous_retrospective_id | string | เฉพาะบอร์ดคลาสสิก: uid ของ retrospective ก่อนหน้าซึ่งคอลัมน์ Actions แสดงเป็น "Past actions" |
get_retrospectivePro · retrospectivesread-only
อ่าน retrospective ตามที่คุณอาจเห็น: retrospective แบบโมเดลใหม่หรือการตรวจสอบสุขภาพเมื่อเวิร์กสเปซมี, บอร์ด retrospective แบบคลาสสิกในกรณีอื่น retrospective แบบโมเดลใหม่คืนค่า setup, stages (สเตจปัจจุบัน, ตัวจับเวลา, ความคืบหน้า), columns (พร้อม uid) ที่เก็บ topics (กลุ่มของโน้ต, พร้อม uid), ยอดรวม check-in และ feedback, โหวตที่คุณเหลือ, คิว Discuss และหัวข้อที่พักไว้, proposals, actions (ที่สร้างขึ้นบวกกับที่เปิดอยู่ของโครงการ) และเมื่อปิดแล้ว summary ของมัน ความเป็นส่วนตัวเป็นไปตามห้อง: ก่อนการเปิดเผยคุณจะเห็นเฉพาะโน้ตของคุณเอง (แต่ละคอลัมน์นับของทุกคน), ผู้เขียนเฉพาะบนโน้ตที่มีชื่อ, ยอดรวมโหวตเฉพาะเมื่อเปิดเผยโหวตแล้ว การตรวจสอบสุขภาพคืนค่า dimensions และการมีส่วนร่วม, การให้คะแนนของคุณเองขณะเปิด และผลรวมรายมิติเมื่อปิดแล้ว ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของ retrospective (จาก list_retrospectives) |
add_retro_itemsPro · retrospectives
เพิ่มรายการลงใน retrospective ในฐานะตัวคุณเอง หลายรายการพร้อมกัน: โน้ตบน retrospective แบบโมเดลใหม่เมื่อเวิร์กสเปซมี, การ์ดบนบอร์ด retrospective แบบคลาสสิกในกรณีอื่น แต่ละรายการคือ { column, text, recipient_id? }: column คือชื่อคอลัมน์ (ไม่คำนึงตัวพิมพ์ใหญ่เล็ก) หรือ uid จาก get_retrospective; text ยาวสูงสุด 1,000 ตัวอักษร (255 บนบอร์ดคลาสสิก); recipient_id, uid ผู้ใช้ของเพื่อนร่วมทีมที่ถูกขอบคุณ, จำเป็นในคอลัมน์ kudos แบบโมเดลใหม่และถูกปฏิเสธบนบอร์ดคลาสสิก โน้ตแบบโมเดลใหม่เริ่มหัวข้อของตัวเองและคนอื่นเห็นเมื่อเปิดเผยโน้ตแล้ว; โน้ตจะถูกบันทึกเฉพาะเมื่อ retrospective เปิดรับโน้ตหรืออยู่ในสเตจ Write มิฉะนั้นการเรียกจะถูกปฏิเสธด้วยรหัส wrong_stage และสเตจปัจจุบัน ความล้มเหลวบางส่วน: รายการที่ถูกต้องจะถูกเพิ่ม รายการที่ไม่ถูกต้องจะถูกรายงานตามดัชนี — ตรวจสอบอาร์เรย์ "failed" ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| retrospective_id | string | ใช่ | uid ของ retrospective |
| items | array of object | ใช่ |
move_retro_itemPro · retrospectives
ย้ายรายการ retrospective: จัดกลุ่มโน้ตใหม่บน retrospective แบบโมเดลใหม่เมื่อเวิร์กสเปซมี, ย้ายการ์ดไปยังคอลัมน์อื่นของบอร์ด retrospective แบบคลาสสิกในกรณีอื่น โมเดลใหม่ เฉพาะสเตจ Group: topic_id วางโน้ตลงในหัวข้อนั้น (กลุ่มของโน้ต); column (ชื่อหรือ uid) ทำให้เป็นหัวข้อของตัวเองที่นั่น ที่ตำแหน่งระหว่างหัวข้อของคอลัมน์ (ละเว้นสำหรับสุดท้าย) ส่ง expected_updated_at, ค่า topic updated_at ของโน้ตจาก get_retrospective เพื่อถูกปฏิเสธด้วยรหัส stale เมื่อมีคนจัดกลุ่มใหม่ในระหว่างนั้น นอกสเตจ Group การเรียกจะถูกปฏิเสธด้วยรหัส wrong_stage และสเตจปัจจุบัน; kudos และโน้ตอื่น ๆ ไม่ผสมกัน บอร์ดคลาสสิกรับเฉพาะ column และ position (ละเว้น position = ด้านบน) ต้องใช้เวิร์กสเปซแบบ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของโน้ต (บอร์ดคลาสสิก: uid ของรายการ) จาก get_retrospective |
| topic_id | string | uid ของหัวข้อเป้าหมาย; ละเว้น column | |
| column | string | ชื่อหรือ uid ของคอลัมน์เป้าหมาย | |
| position | integer | ดัชนีในคอลัมน์เป้าหมาย (0 = แรก) | |
| expected_updated_at | string | ค่า topic updated_at ของโน้ตตามที่อ่านล่าสุด (การตรวจสอบความขัดแย้ง) |
list_project_usersread-only
แสดงรายการสมาชิกของโครงการ — สมาชิกทุกคนในเวิร์กสเปซสำหรับโครงการมาตรฐาน; ผู้สร้าง, เจ้าของและผู้ดูแลเวิร์กสเปซ และใครก็ตามที่ถูกเพิ่มอย่างชัดเจนสำหรับโครงการส่วนตัว — เพื่อให้เอเจนต์สามารถแก้ uid ผู้รับผิดชอบแทนการเดาชื่อ คืนค่า uid, ชื่อเต็ม, อีเมล และบทบาทในเวิร์กสเปซ (owner, admin, member หรือ observer) ของสมาชิกแต่ละคน uid เหล่านั้นคือสิ่งที่ assigned_to รับใน create_card, update_card, create_epic, update_epic และ create_roadmap_slot
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโครงการ |
list_board_listsread-only
แสดงรายการลิสต์ของบอร์ดคัมบังของโครงการเพื่อให้เอเจนต์สามารถแก้ปลายทาง move_card ที่ถูกต้อง คืนค่าแต่ละลิสต์ที่ใช้งานอยู่ตามลำดับการแสดงพร้อม uid (ใช้เป็นเป้าหมาย move_card ได้) และชื่อที่แสดง แบ็กล็อกถูกรวมเป็นรายการที่เลือกได้ด้วย id เป็นสตริงว่าง
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโครงการ |
list_epicsread-only
แสดงรายการ epics ของโครงการเพื่อให้เอเจนต์สามารถแก้ uid ของ epic สำหรับ get_epic และการกำหนดการ์ด คืนค่าแต่ละ epic ตามลำดับการแสดง (ตำแหน่งจากน้อยไปมาก) พร้อม uid, หมายเลข, ชื่อ, คำอธิบาย (Markdown), สี, วันที่เริ่ม/สิ้นสุด และจำนวนการ์ด
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโครงการ |
| updated_since | string | เฉพาะ epics ที่ระเบียนเปลี่ยนแปลงที่หรือหลังวันที่หรือวันที่-เวลารูปแบบ ISO-8601 นี้ ข้อควรระวัง: การแก้ไขคอลเลกชัน (checklists, links) อาจไม่เพิ่มเวลาเปลี่ยนแปลงของ epic; การแก้ไขชื่อ/วันที่/คำอธิบายจะเพิ่มเสมอ |
list_labelsread-only
แสดงรายการป้ายกำกับของโครงการเพื่อให้เอเจนต์สามารถใช้ taxonomy ที่มีอยู่ซ้ำแทนการสร้างสิ่งที่เกือบซ้ำกันในการเขียนการ์ด คืนค่าแต่ละป้ายกำกับตามลำดับการแสดง (ตำแหน่งจากน้อยไปมาก) พร้อม uid, ชื่อ และตำแหน่ง
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
list_cardsอ่านอย่างเดียว
แสดงรายการการ์ดของบอร์ดคัมบังหนึ่งรายการ หรือของแบ็กล็อกของโปรเจกต์เมื่อละเว้นหรือส่ง list_id เป็นค่าว่าง ตามลำดับการแสดงบนบอร์ด (คอลัมน์บนสุดก่อน กล่าวคือ ตำแหน่งการวางเรียงจากมากไปน้อย — ลำดับเดียวกับที่แสดงใน UI ของผลิตภัณฑ์) ตัวกรองรวมกันด้วย AND: epic_id, label_id, assigned_user_id และ reporter_id รับค่า uid (uid ที่ไม่รู้จักจะไม่ตรงกับรายการใด); due_date เก็บการ์ดที่ครบกำหนดในหรือก่อนวันที่กำหนด ส่งคืนสรุปการ์ดที่เพียงพอต่อการดำเนินการ (uid, ชื่อเรื่อง, รายการ + ตำแหน่ง, epic, ป้ายกำกับ, ผู้รับผิดชอบ, ผู้รายงาน, วันครบกำหนด) พร้อมใช้สำหรับ get_card / move_card / update_card แบ่งหน้าด้วย limit (ค่าเริ่มต้น 50, สูงสุด 100) และ offset; total_count คือจำนวนที่นับหลังกรองทั้งหมด
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
| list_id | string | uid ของรายการที่จะอ่าน; ละเว้นหรือส่งสตริงว่างสำหรับแบ็กล็อก | |
| epic_id | string | เฉพาะการ์ดใน epic นี้ (uid ของ epic) ภายในรายการหรือแบ็กล็อกที่เลือก; หากต้องการแสดงทุกการ์ดของ epic ข้ามทุกรายการให้ใช้ get_epic | |
| label_id | string | เฉพาะการ์ดที่มีป้ายกำกับนี้ (uid ของป้ายกำกับ) | |
| assigned_user_id | string | เฉพาะการ์ดที่มอบหมายให้ผู้ใช้นี้ (uid ของผู้ใช้) | |
| reporter_id | string | เฉพาะการ์ดที่รายงาน (สร้าง) โดยผู้ใช้นี้ (uid ของผู้ใช้) | |
| due_date | string | เฉพาะการ์ดที่ครบกำหนดในหรือก่อนวันที่นี้ (ISO-8601 เช่น 2026-06-10) | |
| updated_since | string | เฉพาะการ์ดที่เรกคอร์ดเปลี่ยนแปลงในหรือหลังวันที่หรือวันเวลานี้ตาม ISO-8601 — ตัวกรอง "สิ่งที่เปลี่ยนแปลงตั้งแต่ครั้งล่าสุดที่ฉันรัน" ข้อควรระวัง: การแก้ไขคอลเลกชันที่แนบมา (ป้ายกำกับ, เช็กลิสต์, ลิงก์) อาจไม่เพิ่มเวลาเปลี่ยนแปลงของการ์ด; การแก้ไขชื่อเรื่อง/คำอธิบาย/ค่าสเกลาร์จะเพิ่มเสมอ | |
| limit | integer | ขนาดหน้า, 1-100 (ค่าเริ่มต้น 50) | |
| offset | integer | จำนวนการ์ดที่จะข้าม (ค่าเริ่มต้น 0) |
search_cardsอ่านอย่างเดียว
ค้นหาการ์ดแบบสตริงย่อยในชื่อเรื่องภายในโปรเจกต์เดียว (บอร์ดคัมบังและแบ็กล็อก) ตรงกับการค้นหาการ์ดสดภายในโปรเจกต์ของผลิตภัณฑ์ทุกประการ (การจับคู่สตริงย่อยแบบไม่คำนึงถึงตัวพิมพ์เล็กใหญ่ในฐานข้อมูลเฉพาะชื่อเรื่องการ์ด — ไม่ค้นหาคำอธิบายและความคิดเห็น; ใช้เครื่องมือค้นหาสำหรับการค้นหาข้อความเต็มข้ามทุกประเภทเนื้อหา) เรียงตามวันที่สร้างใหม่ที่สุดก่อน ส่งคืนสรุปการ์ดที่เพียงพอต่อการดำเนินการ (uid, ชื่อเรื่อง, ตำแหน่งรายการ + ตำแหน่ง, epic, ป้ายกำกับ, ผู้รับผิดชอบ, ผู้รายงาน, วันครบกำหนด); คำค้นหาที่ไม่มีผลลัพธ์จะส่งคืนอาร์เรย์การ์ดว่าง ไม่ใช่ข้อผิดพลาด แบ่งหน้าด้วย limit (ค่าเริ่มต้น 50, สูงสุด 100) และ offset; total_count คือจำนวนผลลัพธ์ที่ตรงทั้งหมด
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
| query | string | ใช่ | ข้อความที่จะจับคู่กับชื่อเรื่องการ์ด (สตริงย่อยแบบไม่คำนึงถึงตัวพิมพ์เล็กใหญ่) |
| limit | integer | ขนาดหน้า, 1-100 (ค่าเริ่มต้น 50) | |
| offset | integer | จำนวนการ์ดที่ตรงที่จะข้าม (ค่าเริ่มต้น 0) |
list_attention_cardsPro · metricsอ่านอย่างเดียว
แสดงรายการการ์ดที่ต้องให้ความสนใจบนบอร์ดคัมบังของโปรเจกต์ — รายการเดียวกันกับหน้า Metrics ของผลิตภัณฑ์ ชนิด: stuck (นั่งอยู่ในคอลัมน์ ไม่ใช่แบ็กล็อก/Done ไม่ถูกย้ายเกิน 7 วัน; ค้างนานที่สุดก่อน), blocking (การ์ดที่ยังไม่เสร็จซึ่งการ์ดอื่นถูกบล็อก), overdue (ครบกำหนดภายใน 7 วันข้างหน้าหรือเลยกำหนดแล้ว; เร็วที่สุดก่อน) kind เลือกหนึ่งรายการหรือ 'all' (ค่าเริ่มต้น) สามารถกรองด้วย uid ผู้รับผิดชอบหรือค่าตัวอักษร 'unassigned' แต่ละส่วนที่ร้องขอส่งคืนสรุปการ์ดพร้อมใช้สำหรับ get_card / move_card / update_card จำกัดที่ limit พร้อม total_count เต็ม ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
| kind | enum: stuck | blocking | overdue | all | รายการความสนใจที่จะส่งคืน (ค่าเริ่มต้น 'all' = ทุกรายการเป็นส่วนของตัวเอง) | |
| assignee_id | string | เฉพาะการ์ดที่มอบหมายให้ uid ผู้ใช้นี้ หรือ 'unassigned' สำหรับการ์ดที่ไม่มีผู้รับผิดชอบ | |
| limit | integer | การ์ดสูงสุดต่อส่วน, 1-100 (ค่าเริ่มต้น 50) |
get_metrics_summaryPro · metricsอ่านอย่างเดียว
การนับครั้งเดียวของการ์ดที่ต้องให้ความสนใจบนบอร์ดคัมบังของโปรเจกต์: overdue_cards_count, blocking_cards_count และ stuck_cards_count — คำจำกัดความเดียวกันกับ list_attention_cards ซึ่งส่งคืนการ์ดที่อยู่เบื้องหลังแต่ละจำนวน ราคาถูก; เรียกก่อนเพื่อตัดสินใจว่าควรดูเชิงลึกหรือไม่ ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะ (uid) ของโปรเจกต์ |
list_roadmap_slotsPro · roadmapอ่านอย่างเดียว
แสดงรายการช่องโรดแมปของโปรเจกต์ที่ทับซ้อนกับช่วงวันที่ (ค่าเริ่มต้น: เดือนนี้ถึงห้าเดือนข้างหน้า) ช่องกำหนดตาราง epic ระหว่างสองวันที่และสามารถมีผู้รับผิดชอบ; epic หนึ่งอาจมีหลายช่อง รวมถึงการทับซ้อน — เป็นไปตามการออกแบบ ส่งคืนสูงสุด 200 ช่อง — ลดช่วงหากถึงขีดจำกัด ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโปรเจกต์ |
| start_date | string | จุดเริ่มต้นช่วง, ISO-8601 (YYYY-MM-DD); ค่าเริ่มต้น: ต้นเดือนนี้ | |
| end_date | string | จุดสิ้นสุดช่วง, ISO-8601; ค่าเริ่มต้น: start_date + 6 เดือน |
create_roadmap_slotPro · roadmap
กำหนดตาราง epic บนโรดแมปของโปรเจกต์: ช่องจาก start_date ถึง end_date อาจมีผู้รับผิดชอบ epic อาจมีหลายช่องและอนุญาตให้ทับซ้อนได้โดยการออกแบบ — ตรวจสอบ list_roadmap_slots ก่อนหากคุณตั้งใจจะขยายช่องที่มีอยู่แทนการเพิ่มใหม่ ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | ตัวระบุเฉพาะของโปรเจกต์ |
| epic_id | string | ใช่ | uid ของ epic (จาก list_epics); ต้องเป็นของโปรเจกต์นี้ |
| start_date | string | ใช่ | ISO-8601 (YYYY-MM-DD) |
| end_date | string | ใช่ | ISO-8601; วันเดียวกับ start_date อนุญาต |
| assigned_to | array of string | uid ผู้ใช้ที่จะมอบหมาย (สมาชิกโปรเจกต์ — ดู list_project_users) |
update_roadmap_slotPro · roadmap
อัปเดตช่องโรดแมป: กำหนดตารางใหม่หรือปรับขนาด (start_date/end_date), ย้ายไปยัง epic อื่นของโปรเจกต์เดียวกัน (epic_id), หรือตั้งค่าผู้รับผิดชอบ เฉพาะฟิลด์ที่ส่งเท่านั้นที่เปลี่ยนแปลง ยกเว้น assigned_to ซึ่งแทนที่ชุดผู้รับผิดชอบทั้งหมด — อ่านช่องก่อนและส่งทุกคนที่ควรคงอยู่ uid ช่องมาจาก list_roadmap_slots ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของช่องโรดแมป |
| epic_id | string | uid epic ใหม่ (โปรเจกต์เดียวกัน) | |
| start_date | string | ISO-8601 (YYYY-MM-DD) | |
| end_date | string | ISO-8601 | |
| assigned_to | array of string | แทนที่ผู้รับผิดชอบทั้งหมด (uid ผู้ใช้, สมาชิกโปรเจกต์); [] ล้าง |
delete_roadmap_slotPro · roadmapทำลายล้าง
ลบช่องโรดแมปอย่างถาวร (และลิงก์ผู้รับผิดชอบ) ไม่สามารถย้อนกลับได้ — ไม่มีถังขยะสำหรับช่องโรดแมป epic เองไม่ถูกแตะต้อง; หากต้องการกำหนดตารางใหม่ ให้ใช้ update_roadmap_slot ต้องใช้เวิร์กสเปซ Pro หรือทดลองใช้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | uid ของช่องโรดแมป (จาก list_roadmap_slots) |
create_label
สร้างป้ายกำกับใหม่บนโปรเจกต์ตามชื่อ หากมีป้ายกำกับชื่อเดียวกันอยู่แล้ว (ไม่คำนึงถึงตัวพิมพ์เล็กใหญ่) ป้ายกำกับที่มีอยู่จะถูกส่งคืนโดยไม่เปลี่ยนแปลงแทนการสร้างรายการที่เกือบซ้ำกัน ป้ายกำกับใหม่จะถูกต่อท้ายที่ท้ายลำดับการแสดง
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | uid โปรเจกต์ที่ป้ายกำกับเป็นของ |
| name | string | ใช่ |
create_card
สร้างการ์ดบนบอร์ดคัมบังของโปรเจกต์ จำเป็นต้องมีเฉพาะ project_id และ title ละเว้น list_id เพื่อวางการ์ดในแบ็กล็อก; ละเว้น position เพื่อเข้าร่วมท้ายคิว (move_card อธิบายสัญญาตำแหน่ง) description เป็น AgileHero Markup — ไม่ใช่ markdown หรือ HTML; อ่าน get_ahm_spec ก่อน epic_id และ uid ผู้รับผิดชอบต้องมีอยู่แล้ว (list_epics, list_project_users) ในขณะที่ชื่อป้ายกำกับที่ยังไม่มีจะถูกสร้างบนโปรเจกต์ estimation คือความซับซ้อนแบบ Fibonacci (0/1/2/3/5/8/13) ไม่ใช่การประมาณเวลา เช็กลิสต์ ลิงก์ ไฟล์แนบ และความสัมพันธ์การ์ดสามารถระบุได้ในการเรียกเดียวกันนี้
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | uid โปรเจกต์ที่การ์ดเป็นของ (การ์ดถูกสร้างบนบอร์ดคัมบังของโปรเจกต์) |
| list_id | string | uid รายการ; ละเว้นเพื่อวางในแบ็กล็อก | |
| position | integer | ||
| type | enum: story | bug | chore | research | ||
| title | string | ใช่ | |
| description | string | AgileHero Markup (AHM) — ไม่ใช่ markdown หรือ HTML; อ่าน get_ahm_spec ก่อน พื้นผิวคำอธิบาย: ไม่มีตาราง สี การจัดตำแหน่ง หรือการสนทนา | |
| epic_id | string | uid epic; ต้องมีอยู่แล้วบนโปรเจกต์ | |
| estimation | enum: 0 | 1 | 2 | 3 | 5 | 8 | 13 | การประมาณความซับซ้อนใน story points (สเกล Fibonacci) ไม่ใช่การประมาณเวลา | |
| due_date | string | วันที่ ISO-8601 | |
| assigned_to | array of string | uid ผู้ใช้ผู้รับผิดชอบ ค้นหาได้ผ่าน list_project_users | |
| labels | array of string | ชื่อป้ายกำกับ; ชื่อที่ไม่รู้จักจะถูกสร้างบนโปรเจกต์ | |
| checklists | array of object | แต่ละ { name, items: [{ description, checked }] }; items คงลำดับที่ระบุ | |
| cards_relations | array of object | แต่ละ { type, target_card_id (uid การ์ดบนบอร์ดเดียวกัน) } | |
| links | array of object | แต่ละ { url, description } | |
| attachments | array of object | แต่ละ { url, name }; ไฟล์ถูกดึงจาก url |
update_cardทำลายล้าง
อัปเดตการ์ดที่มีอยู่ตาม uid สำหรับคอลเลกชัน ให้ใช้ฟิลด์เดลต้า add_*/remove_* (การแก้ไขแบบเพิ่มทีละปลอดภัย: add_labels, remove_assignees, add_checklist_items, check_items, …); ฟิลด์คอลเลกชันธรรมดา (labels, assigned_to, checklists, cards_relations, links, attachments) แทนที่สถานะก่อนหน้าอย่างทำลายล้างและไม่สามารถรวมกับเดลต้าของมันได้ ใช้ move_card เพื่อเปลี่ยนรายการหรือตำแหน่ง และ preview_description_update / update_description เพื่อแก้ไขคำอธิบาย
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัสการ์ด |
| type | enum: story | bug | chore | research | ||
| title | string | ||
| epic_id | string | ||
| estimation | enum: 0 | 1 | 2 | 3 | 5 | 8 | 13 | ค่าประมาณความซับซ้อนในหน่วย story points (สเกล Fibonacci) ไม่ใช่ค่าประมาณเวลา | |
| due_date | string | วันที่ในรูปแบบ ISO-8601 | |
| assigned_to | array of string | รหัสผู้ใช้ของผู้รับผิดชอบ ค้นหาได้จาก list_project_users; แทนที่ผู้รับผิดชอบของการ์ด | |
| labels | array of string | ชื่อป้ายกำกับ; ชื่อที่ไม่รู้จักจะถูกสร้างในโปรเจกต์; แทนที่ป้ายกำกับของการ์ด | |
| checklists | array of object | แต่ละรายการ { name, items: [{ description, checked }] }; รายการคงลำดับที่ให้ไว้; แทนที่ checklists ของการ์ด | |
| cards_relations | array of object | แต่ละรายการ { type, target_card_id (รหัสการ์ดบนบอร์ดเดียวกัน) }; แทนที่ความสัมพันธ์ของการ์ด | |
| links | array of object | แต่ละรายการ { url, description }; แทนที่ลิงก์ของการ์ด | |
| attachments | array of object | แต่ละรายการ { url, name }; ไฟล์ถูกดึงจาก url; แทนที่ไฟล์แนบของการ์ด | |
| add_labels | array of string | เพิ่มป้ายกำกับตามชื่อ (ชื่อที่ไม่รู้จักจะถูกสร้าง); คงป้ายกำกับเดิมไว้ | |
| remove_labels | array of string | ลบป้ายกำกับตามชื่อ (ไม่คำนึงตัวพิมพ์เล็กใหญ่); ชื่อที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_assignees | array of string | เพิ่มผู้รับผิดชอบตามรหัสผู้ใช้; คงผู้รับผิดชอบเดิมไว้ | |
| remove_assignees | array of string | ลบผู้รับผิดชอบตามรหัสผู้ใช้; รหัสที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_checklist_items | array of object | เพิ่มรายการ: แต่ละรายการ { checklist, description, checked? } — checklist ที่ระบุชื่อจะถูกสร้างหากยังไม่มี | |
| check_items | array of object | ทำเครื่องหมายรายการว่าเสร็จ โดยจับคู่ตามคำอธิบายที่ตรงกันภายใน checklist ที่ระบุชื่อ | |
| uncheck_items | array of object | ทำเครื่องหมายรายการว่าไม่เสร็จ (การจับคู่เหมือนกับ check_items) | |
| remove_checklist_items | array of object | ลบรายการ; รายการที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_relations | array of object | เพิ่มความสัมพันธ์; คงความสัมพันธ์เดิมไว้ | |
| remove_relations | array of object | ลบความสัมพันธ์ที่ตรงกัน; รายการที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_links | array of object | เพิ่มลิงก์: แต่ละรายการ { url, description? }; คงลิงก์เดิมไว้ | |
| remove_links | array of string | ลบลิงก์ตาม url ที่ตรงกัน; url ที่ไม่มีอยู่จะไม่ทำอะไร |
delete_carddestructive
ลบการ์ดแบบ soft-delete ตามรหัส: การ์ดจะออกจากบอร์ดและทุกรายการ ความสัมพันธ์กับการ์ดอื่นจะถูกลบ เซสชันการประมาณค่าใด ๆ ที่เกี่ยวข้องจะถูกปิดใช้งาน และองค์ประกอบไวท์บอร์ดที่เชื่อมโยงจะถูกยกเลิกการเชื่อมโยง epic ที่การ์ดเคยอยู่จะไม่ถูกลบ ไม่มีการกู้คืนผ่าน MCP
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัสการ์ด |
move_card
ย้ายการ์ดไปยังลิสต์อื่น (หรือเปลี่ยนตำแหน่งภายในลิสต์เดียวกัน) เฉพาะการ์ดบนบอร์ด kanban เท่านั้นที่ย้ายได้; การ์ดบนบอร์ด retrospective จะถูกปฏิเสธ ส่งสตริงว่างสำหรับ list_id เพื่อย้ายการ์ดไปยัง kanban backlog ลิสต์แสดงจากบนลงล่างตามตำแหน่งสูงสุด ดังนั้นตำแหน่ง 0 คือด้านล่างสุดของลิสต์ ละเว้น position เพื่อต่อท้ายคิว (ด้านล่างสุด ตำแหน่ง 0) ใน backlog และลิสต์ to_do และ in_progress หรือด้านบนสุดของลิสต์ done
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัสการ์ด |
| list_id | string | ใช่ | รหัสลิสต์ปลายทาง; สตริงว่างย้ายไป backlog (เฉพาะ kanban) |
| position | integer | ตำแหน่งภายในปลายทาง: 0 คือด้านล่างสุด และตำแหน่งสูงสุดคือด้านบนสุด ต้องอยู่ระหว่าง 0 กับจำนวนการ์ดอื่นที่มีอยู่แล้วในปลายทาง ละเว้นเพื่อต่อท้ายคิว (ตำแหน่ง 0) ใน backlog และลิสต์ to_do และ in_progress หรือด้านบนสุดของลิสต์ done |
create_epic
สร้าง epic บนโปรเจกต์ จำเป็นต้องมีเฉพาะ project_id และ name description เป็น AgileHero Markup — ห้ามใช้ markdown หรือ HTML; อ่าน get_ahm_spec ก่อน รหัสผู้รับผิดชอบมาจาก list_project_users สามารถระบุ checklists, links และ attachments ในการเรียกเดียวกันนี้ คืนค่ารหัส epic ใหม่ — ซึ่ง create_card / update_card ใช้เป็น epic_id และ create_roadmap_slot ใช้จัดตาราง
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| project_id | string | ใช่ | รหัสโปรเจกต์ที่ epic สังกัด |
| name | string | ใช่ | |
| description | string | AgileHero Markup (AHM) — ห้ามใช้ markdown หรือ HTML; อ่าน get_ahm_spec ก่อน พื้นผิวคำอธิบาย: ไม่มีตาราง สี การจัดวาง หรือการสนทนา | |
| color | string | สี hex เช่น #0060F0 | |
| start_date | string | วันที่ในรูปแบบ ISO-8601 | |
| end_date | string | วันที่ในรูปแบบ ISO-8601 | |
| assigned_to | array of string | รหัสผู้ใช้ของผู้รับผิดชอบ ค้นหาได้จาก list_project_users | |
| checklists | array of object | แต่ละรายการ { name, items: [{ description, checked }] }; รายการคงลำดับที่ให้ไว้ | |
| links | array of object | แต่ละรายการ { url, description } | |
| attachments | array of object | แต่ละรายการ { url, name }; ไฟล์ถูกดึงจาก url |
update_epicdestructive
อัปเดต epic ที่มีอยู่ตามรหัส; เฉพาะฟิลด์ที่ส่งเท่านั้นที่ถูกเปลี่ยนแปลง สำหรับคอลเลกชัน ควรใช้ฟิลด์ delta แบบ add_*/remove_* (การแก้ไขแบบเพิ่มทีละน้อยที่ปลอดภัย); ฟิลด์คอลเลกชันธรรมดา (assigned_to, checklists, links, attachments) จะแทนที่สถานะก่อนหน้าอย่างถาวร และไม่สามารถใช้ร่วมกับ delta ของมันได้ ใช้ preview_description_update / update_description เพื่อแก้ไขคำอธิบาย
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัส epic |
| name | string | ||
| color | string | สี hex เช่น #0060F0 | |
| start_date | string | วันที่ในรูปแบบ ISO-8601 | |
| end_date | string | วันที่ในรูปแบบ ISO-8601 | |
| assigned_to | array of string | รหัสผู้ใช้ของผู้รับผิดชอบ ค้นหาได้จาก list_project_users; แทนที่ผู้รับผิดชอบของ epic | |
| checklists | array of object | แต่ละรายการ { name, items: [{ description, checked }] }; แทนที่ checklists ของ epic | |
| links | array of object | แต่ละรายการ { url, description }; แทนที่ลิงก์ของ epic | |
| attachments | array of object | แต่ละรายการ { url, name }; ไฟล์ถูกดึงจาก url; แทนที่ไฟล์แนบของ epic | |
| add_assignees | array of string | เพิ่มผู้รับผิดชอบตามรหัสผู้ใช้; คงผู้รับผิดชอบเดิมไว้ | |
| remove_assignees | array of string | ลบผู้รับผิดชอบตามรหัสผู้ใช้; รหัสที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_checklist_items | array of object | เพิ่มรายการ: แต่ละรายการ { checklist, description, checked? } — checklist ที่ระบุชื่อจะถูกสร้างหากยังไม่มี | |
| check_items | array of object | ทำเครื่องหมายรายการว่าเสร็จ โดยจับคู่ตามคำอธิบายที่ตรงกันภายใน checklist ที่ระบุชื่อ | |
| uncheck_items | array of object | ทำเครื่องหมายรายการว่าไม่เสร็จ (การจับคู่เหมือนกับ check_items) | |
| remove_checklist_items | array of object | ลบรายการ; รายการที่ไม่มีอยู่จะไม่ทำอะไร | |
| add_links | array of object | เพิ่มลิงก์: แต่ละรายการ { url, description? }; คงลิงก์เดิมไว้ | |
| remove_links | array of string | ลบลิงก์ตาม url ที่ตรงกัน; url ที่ไม่มีอยู่จะไม่ทำอะไร |
delete_epicdestructive
ลบ epic แบบ soft-delete ตามรหัส การ์ดของ epic จะไม่ถูกลบ — การ์ดยังคงอยู่บนบอร์ด โดยแยกออกจาก epic ช่อง roadmap ของ epic จะถูกลบอย่างถาวร (ช่องจัดตาราง epic ดังนั้นจึงไม่มีความหมายหากไม่มี epic) และองค์ประกอบไวท์บอร์ดที่เชื่อมโยงกับ epic จะถูกยกเลิกการเชื่อมโยง
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัส epic |
create_comment
เพิ่มความคิดเห็นในการ์ดหรือ epic ระบุอย่างใดอย่างหนึ่งระหว่าง card_id หรือ epic_id เนื้อหาเป็น AgileHero Markup (AHM, พื้นผิวความคิดเห็น: ไม่มีตาราง สื่อ สี การจัดวาง หรือการสนทนา) — ห้ามใช้ markdown หรือ HTML; อ่าน get_ahm_spec ก่อน ความคิดเห็นจะถูกระบุว่าเป็นของผู้ใช้ที่เข้าสู่ระบบซึ่งไคลเอนต์นี้ทำหน้าที่แทน และจะปรากฏในการตอบกลับ get_card / get_epic ครั้งถัดไป ไม่สามารถแก้ไขความคิดเห็นผ่าน MCP; delete_comment ลบเฉพาะความคิดเห็นของคุณเอง (แก้ไขข้อผิดพลาดโดยลบแล้วโพสต์ใหม่) ส่ง parent_comment_id เพื่อตอบกลับความคิดเห็นที่มีอยู่ เธรดลึกหนึ่งระดับ: การตอบกลับการตอบกลับจะแนบความคิดเห็นใหม่ไปยังรากเธรดของการตอบกลับนั้นแทน ดังนั้นอย่าพยายามซ้อนการตอบกลับ ความคิดเห็นหลักต้องอยู่ในการ์ดหรือ epic เดียวกัน — รหัสจากที่อื่นจะถูกปฏิเสธ
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| card_id | string | รหัสการ์ดที่จะแสดงความคิดเห็น (ใช้ร่วมกับ epic_id ไม่ได้) | |
| epic_id | string | รหัส epic ที่จะแสดงความคิดเห็น (ใช้ร่วมกับ card_id ไม่ได้) | |
| content | string | ใช่ | เนื้อหาความคิดเห็นเป็น AgileHero Markup (AHM) |
| parent_comment_id | string | รหัสความคิดเห็นบนการ์ดหรือ epic เดียวกันเพื่อตอบกลับ (ไม่บังคับ) ละเว้นสำหรับความคิดเห็นระดับบน การตอบกลับการตอบกลับจะปรับให้เป็นรากเธรดของการตอบกลับนั้น (เธรดลึกหนึ่งระดับ) |
delete_commentdestructive
ลบความคิดเห็นที่คุณโพสต์ (ความคิดเห็นถูกระบุว่าเป็นของผู้ใช้ที่เข้าสู่ระบบซึ่งไคลเอนต์นี้ทำหน้าที่แทน — ไม่สามารถลบความคิดเห็นของผู้อื่นได้) รูปแบบการแก้ไขคือลบแล้วโพสต์ความคิดเห็นที่แก้ไขด้วย create_comment ความคิดเห็นที่ถูกลบแต่มีการตอบกลับจะยังคงปรากฏเป็น tombstone ในเธรด รหัสความคิดเห็นมาจาก get_card / get_epic
| พารามิเตอร์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| id | string | ใช่ | รหัสความคิดเห็น |