Issuebage MCP Server
chính thứcnền tảng cấp huy hiệu kỹ thuật số
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_badgekhi 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ối | https://issuebadge-mcp.issuebadge.workers.dev/mcp | npx issuebadge-mcp-server |
| Xác thực | tiêu đề Authorization: Bearer <API key> | biến môi trường ISSUEBADGE_API_KEY |
| Công cụ | validate_key, get_all_badges, issue_badge | tương tự + create_badge |
| Lưu trữ | không, không trạng thái | khô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ào | Trả về |
|---|---|---|
validate_key | – | { valid, message } |
get_all_badges | limit? | { badges: [{ id, name, description?, created_at? }] } |
issue_badge | badge_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 đề
Authorizationcủa mỗi yêu cầu, chuyển tiếp đếnapp.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 được401. - 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