Skill Builder

Aide un client à transformer un besoin métier précis (contexte, contraintes, format de sortie souhaité) en un nouveau skill Claude sur mesure, prêt à l'emploi sur le MCP Spendesk

↓ Download skill (.md)
89/100·🔍 Ad hoc·IntermediateCFOControllerAP ManagerFinance AnalystProcurement
Settings


# Skill Builder

## Objective

The library has 65 skills, but it will never cover every client's specific need — their target ERP, their currency, their entities, the exact output format they expect. This skill has one job: turn a business need expressed in plain language into a **brand-new tailored skill**, tested live on the client's real data, ready to be saved and reused.

Never generate a skill without testing it on real data at least once. An untested skill is only a hypothesis.

## Phase 0 — Frame the need

Ask structured questions, without skipping any even if the client is in a hurry — a poorly-framed skill produces a disappointing result:

1. **The precise business need**: what question should this answer, and how often? ("a monthly PO accrual report" is precise; "help me with my purchases" is not yet)
2. **Context and constraints**: which target ERP (NetSuite, SAP, other)? which functional currency? one entity or several? any specific thresholds or exclusions (e.g. exclude test POs, exclude one entity)?
3. **The expected output format**: a conversational answer, a table in the chat, an Excel/CSV export with a precise structure (how many tabs, which columns), or a Slack alert?
4. **Who uses it and how often**: one-off, daily, weekly, monthly — this answer determines whether the skill should later become a routine (see Phase 4).

If the client isn't sure how to answer, offer a concrete example rather than staying abstract: "for instance, for a monthly export ready for NetSuite, are we talking about a multi-tab file, or a simple table in the conversation?"

## Phase 1 — Identify the right MCP tools

The Spendesk MCP exposes 24 production read tools today (invoices, suppliers, purchase orders, cards, treasury, cost centers, transactions...) and 4 write tools still in demo (`archive_supplier`, `create_supplier`, `mark_payable_as_ready`, `update_payable` — see the [upcoming tools](/#upcoming) section before mentioning them to a client, they are not in production yet).

For the need framed in Phase 0, identify:
- The tools that directly answer the need (e.g. `get_purchase_orders` for a purchase-order need, `get_payables` to check attached invoices)
- The order to call them in (e.g. list first, then drill into the highest-stakes cases rather than detailing everything)
- The known limitations to respect (e.g. amounts in cents on some tools, filters that must be combined to avoid oversized responses — see `scenarios/mcp-gap-analysis.md` for known MCP bugs)

Never guess a tool name or a filter — if there's any doubt about a tool's exact behavior, call it once as a test before writing it into the generated skill.

## Phase 2 — Generate the skill

Write the skill file in the library's standard format, with:
- A complete frontmatter (`name`, `description`, `tags`, `when_to_use`, `personas`, `use_cases`, `frequency`, `complexity`, `tools_used`) — consistent with the need framed in Phase 0
- A clear objective in one or two sentences
- Numbered steps, each naming the MCP tool called and the expected result
- A "Things to watch out for" section listing known limitations and pitfalls (currencies, caching, required filters)
- 2-3 example prompts the client can reuse as-is

Always present the generated skill as a concrete artifact (a block of text the client can copy), not just describe it.

## Phase 3 — Test live

Run the generated skill right away, on the client's real data, before considering it "ready":
- Announce what's about to happen ("running the skill we just created on your real data...")
- Compare the result to what the client described in Phase 0 — does the format match? were the right filters applied?
- If the result doesn't match, adjust the generated skill and retest, rather than shipping an unvalidated skill

## Phase 4 — Save, and schedule if recurring

Explain how to save the generated skill:
- **Claude Code**: drop the `.md` file into the project's `.claude/` folder
- **Dust**: paste the skill's content as an agent's instructions

If the need framed in Phase 0 is recurring (daily, weekly, monthly), explicitly offer to turn it into a scheduled routine rather than leaving it as a manual action to repeat every time — point to the guide [Automating a report with routines](/guide/routines-for-periodic-reporting) for the exact setup.

## Things to watch out for

- The generated skill is only as good as the need framed in Phase 0 — being precise about the output format changes the final result a lot.
- Always test before treating a generated skill as reliable for recurring use — never skip Phase 3 even under time pressure.
- Generating a skill is a text read/write operation only: no irreversible action is taken on Spendesk during generation itself — the only real MCP calls are the Phase 3 test.
- A skill generated this way stays a plain text file, just like every other skill in the library — nothing magic, just clear instructions.

## Example prompts

- "Help me create a skill for a monthly PO accrual export, in Excel format with multiple tabs ready for NetSuite."
- "I want a skill that alerts me weekly if a supplier goes over their cost center's budget."
- "Create a skill that compares my card spend by department over the last 3 months, with a table as output."

How to install this skill

/
  1. 1
    Download the file skill-builder.md using the button above.
  2. 2
    Place the file in the .claude/ directory of your project (or ~/.claude/ for a global install).
    cp skill-builder.md .claude/skill-builder.md
  3. 3
    Use in Claude Codethe skill is automatically discovered. Describe your need in natural language and Claude will apply the skill instructions.
💡 Make sure the Spendesk MCP is configured in your .claude/settings.json with the tools .

Similar skills

★ Top
95/100·🔍 Ad hoc·Expert

MCP coverage audit & gap analysis

Probes all available MCP tools, re-evaluates coverage of 50 persona use cases, detects new fields or tools, and regenerates the gap analysis report.

CFOControllerAP Manager
90/100·📅 Weekly·Beginner

Card requests via get_requests

Explains how to use get_requests for card requests and why expense reimbursements don't appear there. Avoids a frequent source of confusion between two distinct workflows.

ControllerFinance Analyst
90/100·🔍 Ad hoc·Intermediate

Active vs archived cost centers

Distinguishes active cost centers from archived ones with correct use of get_cost_centers. Avoids the counter-intuitive isArchived vs isActive naming convention pitfall.

ControllerFinance Analyst