Issuebage MCP Server

chính thức

nền tảng cấp huy hiệu kỹ thuật số

GitHubDùng thử MCP nàyĐược tài trợ

Bạn có thể làm gì với Issuebage MCP?

  • Xác thực khóa API — Yêu cầu trợ lý kiểm tra xem khóa API IssueBadge của bạn có hợp lệ hay không bằng validate_key.
  • Liệt kê mẫu huy hiệu — Yêu cầu trợ lý tìm nạp tất cả các mẫu huy hiệu khả dụng của bạn bằng get_all_badges.
  • Cấp chứng chỉ — Yêu cầu trợ lý gửi chứng chỉ đến người nhận theo tên và email qua issue_badge.
  • Tạo huy hiệu mới (chỉ cục bộ) — Hướng dẫn trợ lý xác định một mẫu huy hiệu mới bằng create_badge khi chạy cục bộ.

Tài liệu

Máy chủ MCP IssueBadge

Phát hành chứng chỉ và huy hiệu có thể xác minh từ bất kỳ tác nhân AI nào. Máy chủ Model Context Protocol này cho phép Cursor, Claude, VS Code và các máy khách MCP khác liệt kê các mẫu huy hiệu IssueBadge của bạn và gửi chứng chỉ đến người nhận theo tên và email.

Hai cách để chạy:

Từ xa (khuyến nghị)Cục bộ (stdio)
Điểm cuốihttps://issuebadge-mcp.issuebadge.workers.dev/mcpnpx issuebadge-mcp-server
Xác thựctiêu đề Authorization: Bearer <API key>biến môi trường ISSUEBADGE_API_KEY
Công cụvalidate_key, get_all_badges, issue_badgetương tự + create_badge
Lưu trữkhông, không trạng tháikhông

Bạn cần khóa API IssueBadge: app.issuebadge.com → Developer → API key (https://app.issuebadge.com/developer/index).

Cài đặt

Cursor

Cài đặt IssueBadge từ Cursor Marketplace và dán khóa API của bạn khi được nhắc. Hoặc thêm thủ công trong Settings → 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"

Kho lưu trữ này cũng là một plugin Claude Code (.claude-plugin/plugin.json) và đi kèm kỹ năng issuebadge dạy tác nhân quy trình liệt kê → xác nhận → phát hành. Tệp .mcp.json của plugin đọc khóa từ biến môi trường ISSUEBADGE_API_KEY, vì vậy hãy xuất khóa trước khi khởi động Claude Code.

Claude Desktop / bất kỳ máy khách stdio nào

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

VS Code (chế độ tác nhân Copilot)

.vscode/mcp.json:

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

Công cụ

Công cụĐầu vàoTrả về
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 (chỉ stdio)name, description, issuing_organization_name, idempotency_key, tùy chọn badge_logo_path, custom_fields, …Phản hồi API IssueBadge

issue_badge gửi email chứng chỉ đến người nhận và trả về URL xác minh công khai. Mỗi lần gọi với idempotency_key mới sẽ phát hành một chứng chỉ mới (một chứng chỉ được tạo dưới dạng mcp-<uuid> nếu bạn bỏ qua). API từ chối khóa đã sử dụng lại, vì vậy sau một lần gọi thất bại, hãy kiểm tra xem chứng chỉ đã được phát hành chưa trước khi gọi lại với khóa mới.

Ví dụ về lời nhắc sau khi cài đặt: "Phát hành chứng chỉ Hoàn thành Khóa học cho Jane Doe, jane@example.com."

ChatGPT và OAuth

Máy chủ từ xa cũng hỗ trợ OAuth 2.1 cho các máy chủ không thể gửi khóa API (ứng dụng ChatGPT, trình kết nối Claude): một yêu cầu không có bearer sẽ nhận được 401 + WWW-Authenticate: Bearer resource_metadata=…, /.well-known/oauth-protected-resource trỏ đến https://app.issuebadge.com (PKCE S256, đăng ký máy khách động), và mã truy cập được cấp được chuyển tiếp chính xác như khóa API. issue_badge mang một widget (ui://widget/certificate.html, MCP Apps / ChatGPT Apps SDK) hiển thị thẻ chứng chỉ. Xem CHATGPT.md.

Quyền riêng tư và bảo mật

  • Máy chủ từ xa không trạng thái. Khóa API của bạn được đọc từ tiêu đề Authorization của mỗi yêu cầu, chuyển tiếp đến app.issuebadge.com, và không bao giờ được lưu trữ hoặc ghi nhật ký. Các yêu cầu không có khóa sẽ nhận được 401.
  • Máy chủ duy nhất được liên hệ là app.issuebadge.com. Tên người nhận, email và id huy hiệu được gửi đến đó để tạo chứng chỉ.
  • Chính sách quyền riêng tư: https://issuebadge.com/h/policy · Điều khoản: https://issuebadge.com/h/terms · Hỗ trợ: https://issuebadge.com/h/contact

Tự lưu trữ máy chủ từ xa

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 trả về { ok: true }. Trỏ ISSUEBADGE_BASE_URL đến một máy chủ API khác cho máy chủ stdio nếu bạn chạy IssueBadge ở nơi khác.

Phát triển

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

Bố cục: src/issuebadge.ts (máy khách API), src/tools.ts (đăng ký công cụ dùng chung cho cả hai máy chủ), src/stdio.ts (npm bin), src/createBadge.ts (công cụ chỉ stdio), worker/index.ts (Cloudflare Worker), .cursor-plugin/ + mcp.json (plugin Cursor), .claude-plugin/ + .mcp.json (plugin Claude Code), skills/issuebadge/SKILL.md, server.json (MCP Registry).

Giấy phép

MIT