AGENT SKILL

membership-card-png

Generate a digital BlastPass membership card as a PNG image by running the bundled card_png.py script. Use when a member self-serves a lost/stolen/damaged card replacement, or any time a card needs to be shown on screen (vs. printed). The skill takes the member details returned by the Membership MCP (get_membership) plus the new_card_serial returned by reissue_card and passes them as command-line flags to a bundled Python (matplotlib) script that renders a CR80-sized membership card to a real PNG. It only renders the card from already-retrieved values — it never looks anything up or invents data.

License 许可
MIT
最近更新
2026-11-03
Stars
★ 21
Forks
18

01 前言 Front Matter

name
membership-card-png
description
Generate a digital BlastPass membership card as a PNG image by running the bundled card_png.py script. Use when a member self-serves a lost/stolen/damaged card replacement, or any time a card needs to be shown on screen (vs. printed). The skill takes the member details returned by the Membership MCP (get_membership) plus the new_card_serial returned by reissue_card and passes them as command-line flags to a bundled Python (matplotlib) script that renders a CR80-sized membership card to a real PNG. It only renders the card from already-retrieved values — it never looks anything up or invents data.

02 资源文件 1

03 SKILL.md 正文

BlastPass Membership Card PNG Generator

This skill produces a digital BlastPass membership card as a shareable image by running the bundled card_png.py script. It is the self-serve companion to membership-card-pdf: when a member reissues a lost, stolen, or damaged card, you mint a new serial via the Membership MCP and hand the member a PNG to save to their phone while the physical card ships.

You do not write any Python. You take the member record you already pulled from the Membership MCP (get_membership) and the new serial returned by reissue_card, then run the bundled script with those values as CLI flags.

Never invent a member, tier, or serial number — every value on the card comes from the MCP results. The script only draws the card; it does not decide anything.

When to use

Use this skill in the self-serve card reissue scenario, after:

  1. get_membership(customer_id) confirmed the member and returned their details.
  2. The member verified their identity (last 4 of the console serial).
  3. reissue_card(customer_id, reason) deactivated the old card and returned a new_card_serial.

Use the PDF skill instead when an in-store associate needs a printable card. Use this PNG skill when the member needs an on-screen / saveable card.

Inputs (map MCP results → CLI flags)

Script flag Source
--member-name get_membership.member_name
--member-id get_membership.customer_id
--tier get_membership.tier (e.g. "BlastPass Plus Extra")
--tier-code get_membership.tier_code (plus | extra | mega) — drives accent color & perks
--card-serial reissue_card.new_card_serial (the freshly minted card; falls back to get_membership.card_serial if not a reissue)
--console-serial get_membership.console_serial
--member-since get_membership.activation_date
--valid-through get_membership.term_end_date
--out optional output path (default blastpass_card.png)

The --tier-code selects the card's accent color, header badge, and the perks line printed beneath the card:

  • plus → blue, "PLUS", 5% off + 10 BlastPoints/$1
  • extra → purple, "PLUS EXTRA", 10% off + 20% BlastPoints bonus
  • mega → orange, "MEGA!!!", 15% off + 50% BlastPoints + day-one exclusives

Workflow

1. Gather the confirmed values

From get_membership (tier, dates, console serial, name, id) and from reissue_card (new_card_serial). Do not pass any value the MCP didn't return.

2. Run the bundled script

Pass the confirmed values as flags. The script writes blastpass_card.png to the working directory (or --out) and prints a one-line confirmation:

python3 card_png.py \
    --member-name "Jordan Pixel" \
    --member-id MEGA-BLAST-1024 \
    --tier "BlastPass Plus Extra" \
    --tier-code extra \
    --card-serial BLAST-A1B2-1024 \
    --console-serial OMEGA-7F3A-1024 \
    --member-since 2026-02-26 \
    --valid-through 2027-02-26

--card-serial must be the new serial from reissue_card — never the old (now-deactivated) one.

3. Hand back the image

Tell the member their new digital card is ready (blastpass_card.png), read back the new card serial and tier so they can confirm it, and remind them the old card is now deactivated and the physical replacement ships in ~7 days.

Notes

  • The bundled script is card_png.py, validated against the four mock members in the Membership MCP. It depends only on matplotlib (available in the runtime).
  • The card serial shown is the new one from reissue_card; the old serial is already deactivated server-side, so it must never appear on the card.
  • The barcode is decorative (deterministic from the card serial) — it is not a real scannable symbology.
  • All data is mock; the card is for demo purposes only.

04 同仓库更多 Skills

microsoft
microsoft/new-copilot-studio-tech-guide

slip-pdf-generator

Generate a printable BlastBox return / RMA / exchange slip as a PDF for the associate to hand to the customer. Use at the end of a return, warranty swap, membership cancellation, or upgrade once all amounts are final. The skill runs a bundled Python script that renders the confirmed slip values into a real PDF file.

文档处理
★ 21
microsoft
microsoft/new-copilot-studio-tech-guide

points-reconciliation

Reconcile a customer's BlastPoints loyalty balance after a complex visit (purchases, returns, promo multipliers, expiry) and convert the net balance to store credit. Use when an associate asks about a member's points, or after a return that should claw back previously earned points. The skill runs a bundled Python script that applies the base earn rate, promo multipliers, tier bonus, clawbacks, and expiry, then prints a points ledger and the redeemable store-credit value.

★ 21
microsoft
microsoft/new-copilot-studio-tech-guide

prorated-refund-calculator

Calculate the exact prorated refund when a customer cancels a BlastPass membership, and the net settlement when a defective unit is traded up to a pricier model. Use after the Store Policy Agent confirms the refund rule and the Membership MCP has returned the membership details. The skill runs a bundled Python script so the arithmetic is exact.

Skill与智能体开发
★ 21
microsoft
microsoft/new-copilot-studio-tech-guide

membership-card-png

Generate a digital BlastPass membership card as a PNG image by running the bundled card_png.py script. Use when a member self-serves a lost/stolen/damaged card replacement, or any time a card needs to be shown on screen (vs. printed). The skill takes the member details returned by the Membership MCP (get_membership) plus the new_card_serial returned by reissue_card and passes them as command-line flags to a bundled Python (matplotlib) script that renders a CR80-sized membership card to a real PNG. It only renders the card from already-retrieved values — it never looks anything up or invents data.

图像与多媒体Skill与智能体开发
★ 21
microsoft
microsoft/new-copilot-studio-tech-guide

membership-card-png

Generate a digital BlastPass membership card as a PNG image by running the bundled card_png.py script. Use when a member self-serves a lost/stolen/damaged card replacement, or any time a card needs to be shown on screen (vs. printed). The skill takes the member details returned by the Membership MCP (get_membership) plus the new_card_serial returned by reissue_card and passes them as command-line flags to a bundled Python (matplotlib) script that renders a CR80-sized membership card to a real PNG. It only renders the card from already-retrieved values — it never looks anything up or invents data.

图像与多媒体Skill与智能体开发
★ 21
microsoft
microsoft/new-copilot-studio-tech-guide

slip-pdf-generator

Generate a printable BlastBox return / RMA / exchange slip as a PDF for the associate to hand to the customer. Use at the end of a return, warranty swap, membership cancellation, or upgrade once all amounts are final. The skill runs a bundled Python script that renders the confirmed slip values into a real PDF file.

文档处理
★ 21