Issuebage MCP Server

ทางการ

แพลตฟอร์มออกใบประกาศดิจิทัล

GitHubลองใช้ MCP นี้ผู้สนับสนุน

คุณทำอะไรได้บ้างด้วย Issuebage MCP?

  • ตรวจสอบคีย์ API — ขอให้ผู้ช่วยตรวจสอบว่าคีย์ IssueBadge API ของคุณถูกต้องหรือไม่ โดยใช้ validate_key
  • รายการเทมเพลตป้าย — ให้ผู้ช่วยดึงเทมเพลตป้ายทั้งหมดที่มีอยู่ของคุณด้วย get_all_badges
  • ออกใบรับรอง — ขอให้ผู้ช่วยส่งใบรับรองไปยังผู้รับตามชื่อและอีเมลผ่าน issue_badge
  • สร้างป้ายใหม่ (เฉพาะในเครื่อง) — สั่งให้ผู้ช่วยกำหนดเทมเพลตป้ายใหม่ด้วย create_badge เมื่อรันในเครื่อง

เอกสาร

เซิร์ฟเวอร์ MCP ของ IssueBadge

ออกใบรับรองและป้ายที่ตรวจสอบได้จากเอเจนต์ AI ใดก็ได้ เซิร์ฟเวอร์ Model Context Protocol นี้ช่วยให้ Cursor, Claude, VS Code และไคลเอนต์ MCP อื่นๆ แสดงรายการเทมเพลตป้าย IssueBadge ของคุณและส่งใบรับรองให้ผู้รับตามชื่อและอีเมล

สองวิธีในการรัน:

ระยะไกล (แนะนำ)ท้องถิ่น (stdio)
ปลายทางhttps://issuebadge-mcp.issuebadge.workers.dev/mcpnpx issuebadge-mcp-server
การรับรองความถูกต้องส่วนหัว Authorization: Bearer <API key>ตัวแปรสภาพแวดล้อม ISSUEBADGE_API_KEY
เครื่องมือvalidate_key, get_all_badges, issue_badgeเหมือนกัน + create_badge
การจัดเก็บไม่มี, ไม่มีสถานะไม่มี

คุณต้องมีคีย์ API ของ IssueBadge: app.issuebadge.com → นักพัฒนา → คีย์ API (https://app.issuebadge.com/developer/index)

การติดตั้ง

Cursor

ติดตั้ง IssueBadge จาก Cursor Marketplace และวางคีย์ API ของคุณเมื่อได้รับแจ้ง หรือเพิ่มด้วยตนเองใน การตั้งค่า → MCP:

{
  "mcpServers": {
    "issuebadge": {
      "type": "streamable-http",
      "url": "https://issuebadge-mcp.issuebadge.workers.dev/mcp",
      "headers": { "Authorization": "Bearer YOUR_ISSUEBADGE_API_KEY" }
    }
  }
}

Claude Code

claude mcp add --transport http issuebadge https://issuebadge-mcp.issuebadge.workers.dev/mcp \
  --header "Authorization: Bearer YOUR_ISSUEBADGE_API_KEY"

พื้นที่เก็บข้อมูลนี้ยังเป็นปลั๊กอิน Claude Code (.claude-plugin/plugin.json) และมาพร้อมกับทักษะ issuebadge ที่สอนเอเจนต์ให้รู้จักขั้นตอนการทำงาน รายการ → ยืนยัน → ออก ปลั๊กอิน .mcp.json อ่านคีย์จากตัวแปรสภาพแวดล้อม ISSUEBADGE_API_KEY ดังนั้นให้ส่งออกก่อนเริ่ม Claude Code

Claude Desktop / ไคลเอนต์ stdio ใดๆ

{
  "mcpServers": {
    "issuebadge": {
      "command": "npx",
      "args": ["-y", "issuebadge-mcp-server"],
      "env": { "ISSUEBADGE_API_KEY": "YOUR_ISSUEBADGE_API_KEY" }
    }
  }
}

VS Code (โหมดเอเจนต์ Copilot)

.vscode/mcp.json:

{
  "servers": {
    "issuebadge": {
      "type": "http",
      "url": "https://issuebadge-mcp.issuebadge.workers.dev/mcp",
      "headers": { "Authorization": "Bearer YOUR_ISSUEBADGE_API_KEY" }
    }
  }
}

เครื่องมือ

เครื่องมืออินพุตส่งคืน
validate_key–{ valid, message }
get_all_badgeslimit?{ badges: [{ id, name, description?, created_at? }] }
issue_badgebadge_id, name, email?, phone?, idempotency_key?, metadata?{ issue_id, certificate_url, idempotency_key }
create_badge (stdio เท่านั้น)name, description, issuing_organization_name, idempotency_key, ไม่บังคับ badge_logo_path, custom_fields, …การตอบสนอง API ของ IssueBadge

issue_badge ส่งอีเมลใบรับรองไปยังผู้รับและส่งคืน URL การตรวจสอบสาธารณะ ทุกการเรียกด้วย idempotency_key ใหม่จะออกใบรับรองใหม่ (สร้างขึ้นเป็น mcp-<uuid> หากคุณละเว้น) API ปฏิเสธคีย์ที่ใช้ซ้ำ ดังนั้นหลังจากการเรียกที่ล้มเหลว ให้ตรวจสอบว่าใบรับรองถูกออกก่อนที่จะเรียกอีกครั้งด้วยคีย์ใหม่

ตัวอย่างพรอมต์เมื่อติดตั้งแล้ว: "ออกใบรับรองการสำเร็จหลักสูตรให้ Jane Doe, jane@example.com"

ChatGPT และ OAuth

เซิร์ฟเวอร์ระยะไกลยังรองรับ OAuth 2.1 สำหรับโฮสต์ที่ไม่สามารถส่งคีย์ API ได้ (แอป ChatGPT, ตัวเชื่อมต่อ Claude): คำขอที่ไม่มี bearer จะได้รับ 401 + WWW-Authenticate: Bearer resource_metadata=…, /.well-known/oauth-protected-resource ชี้ไปที่ https://app.issuebadge.com (PKCE S256, การลงทะเบียนไคลเอนต์แบบไดนามิก) และโทเค็นการเข้าถึงที่ออกจะถูกส่งต่อไปเหมือนกับคีย์ API issue_badge มีวิดเจ็ต (ui://widget/certificate.html, MCP Apps / ChatGPT Apps SDK) ที่แสดงการ์ดใบรับรอง ดู CHATGPT.md

ความเป็นส่วนตัวและความปลอดภัย

  • เซิร์ฟเวอร์ระยะไกลไม่มีสถานะ คีย์ API ของคุณถูกอ่านจากส่วนหัว Authorization ของแต่ละคำขอ ส่งต่อไปยัง app.issuebadge.com และไม่ถูกจัดเก็บหรือบันทึก คำขอที่ไม่มีคีย์จะได้รับ 401
  • โฮสต์เดียวที่ติดต่อคือ app.issuebadge.com ชื่อผู้รับ อีเมล และรหัสป้ายถูกส่งไปที่นั่นเพื่อสร้างใบรับรอง
  • นโยบายความเป็นส่วนตัว: https://issuebadge.com/h/policy · ข้อกำหนด: https://issuebadge.com/h/terms · การสนับสนุน: https://issuebadge.com/h/contact

โฮสต์เซิร์ฟเวอร์ระยะไกลด้วยตนเอง

git clone https://github.com/issuebadge/mcp-server && cd mcp-server
npm install
npm test
npx wrangler deploy --config worker/wrangler.toml   # needs a Cloudflare account

GET /health ส่งคืน { ok: true } ชี้ ISSUEBADGE_BASE_URL ไปที่โฮสต์ API อื่นสำหรับเซิร์ฟเวอร์ stdio หากคุณรัน IssueBadge ที่อื่น

การพัฒนา

npm install
npm test          # vitest: client, tools, worker (mocked IssueBadge API)
npm run build     # tsc → dist/ (stdio bin)
npm run dev:worker

โครงสร้าง: src/issuebadge.ts (ไคลเอนต์ API), src/tools.ts (ทะเบียนเครื่องมือที่ใช้ร่วมกันโดยทั้งสองโฮสต์), src/stdio.ts (npm bin), src/createBadge.ts (เครื่องมือ stdio เท่านั้น), worker/index.ts (Cloudflare Worker), .cursor-plugin/ + mcp.json (ปลั๊กอิน Cursor), .claude-plugin/ + .mcp.json (ปลั๊กอิน Claude Code), skills/issuebadge/SKILL.md, server.json (MCP Registry)

ใบอนุญาต

MIT