agentleFS
MicrosoftKnown publishermicrosoft/new-copilot-studio-tech-guide-kr/sample/archive/store-solution/src/botcomponents/Default_draft_IsBewO.file.SKILL.md/filedata/SKILL.md

membership-card-png

Skill0 starsChanged 4 months agoMITView on GitHub

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.

2 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Never invent a member, tier, or serial number — every value on the card comes from the MCP results.

    line 18
  2. Distinctive:

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

    line 23
  3. Distinctive:

    Use the PDF skill instead when an in-store associate needs a printable card.

    line 30
  4. Distinctive:

    Use this PNG skill when the member needs an on-screen / saveable card.

    line 31
  5. Distinctive:

    All data is mock; the card is for demo purposes only.

    line 95

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
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 flagSource
--member-nameget_membership.member_name
--member-idget_membership.customer_id
--tierget_membership.tier (e.g. "BlastPass Plus Extra")
--tier-codeget_membership.tier_code (plus | extra | mega) — drives accent color & perks
--card-serialreissue_card.new_card_serial (the freshly minted card; falls back to get_membership.card_serial if not a reissue)
--console-serialget_membership.console_serial
--member-sinceget_membership.activation_date
--valid-throughget_membership.term_end_date
--outoptional 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.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.