Audit what the MCP covers

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 ManagerFinance AnalystProcurement๐Ÿ” Ad hocExpertRead-only

Ask it like this

Run the MCP audit: are there new tools or new fields?

When to use it

At each Spendesk MCP update, or every quarter, to know what has become possible.

What it produces

Updated coverage report (mcp-gap-analysis.md) with: change summary, new scores per use case, closed vs persistent gaps, and recalculated roadmap.

How it works

  1. 1Probes each available tool to record its real fields
  2. 2Spots tools and fields that appeared since the last audit
  3. 3Re-assesses fifty finance use cases, role by role
  4. 4Works out the share of needs covered, partly covered or not covered
  5. 5Writes the report on gaps and how they have moved

What protects you

  • This skill only reads: it changes nothing in Spendesk
  • It acts with your permissions and your role, never beyond
  • The assistant cannot approve or pay
โ–ธTechnical detail95/100 ยท 17 tools
SettingsComplianceget_payablesget_suppliersget_purchase_ordersget_requestsget_cost_centersget_usersget_settlementsget_wallet_summarylist_companiesspendesk_analyze_spendspendesk_get_due_invoicesget_chart_of_accountsget_expense_categoriesget_analytical_fieldslist_cardsget_wallet_loadsget_payable_attachments

# MCP coverage audit โ€” Automated gap analysis

## Purpose
Systematically re-evaluate MCP coverage against the 50 use cases of the 5 finance personas, detect improvements since the last analysis, and regenerate an up-to-date `scenarios/mcp-gap-analysis.md`.

To be run after every MCP update (new endpoints, new fields) or quarterly.

---

## Phase 1 โ€” Inventory of available MCP tools

### Step 1.1 โ€” Probe each tool to discover the actual fields

For each tool listed below, call it with minimal parameters and inspect the response structure. Note the fields actually returned.

```
TOOLS TO PROBE:

get_wallet_loads         โ†’ note the fields returned
get_wallet_summary       โ†’ note the fields returned
spendesk_analyze_spend   โ†’ call with groupBy:supplier, period:last_month
                           โ†’ note accepted parameters + result structure
get_payables             โ†’ call with limit:1
                           โ†’ note ALL fields (look especially for:
                             paymentDate, approvedAt, submittedAt, processingDays,
                             rejectionCount, disputeStatus, payableSubType)
get_payable_by_id        โ†’ use the first ID found
                           โ†’ note fields vs get_payables
get_payable_attachments  โ†’ call with a payableId
get_suppliers            โ†’ call with limit:1
                           โ†’ look for: paymentTerms, preferredStatus, riskScore
get_supplier_by_id       โ†’ use the first ID found
get_purchase_orders      โ†’ call with limit:1
                           โ†’ look for: contractEndDate, autoRenewal,
                             noticePeriodDays, invoiceIds
get_requests             โ†’ call with limit:1
get_request_by_id        โ†’ use the first ID found
list_cards               โ†’ call with limit:1
get_card                 โ†’ use the first ID found
get_transactions          โ†’ call with limit:1 (card transactions, distinct from get_settlements)
get_cost_centers         โ†’ note if budgetAmount or budgetId is present
get_users                โ†’ call with limit:1
get_expense_categories   โ†’ call
get_analytical_fields    โ†’ call
get_analytical_field_values โ†’ use the first fieldId found
get_chart_of_accounts    โ†’ call
get_settlements          โ†’ call with limit:1
                           โ†’ look for: bankTransactionId, bankReference
list_companies           โ†’ call (requires org token)
```

### Step 1.2 โ€” Detect new, previously unknown tools

In addition to the tools listed above, check whether there are any Spendesk MCP tools not covered by this list. This includes:
- `get_budgets` or any tool with "budget" in the name
- `get_payable_events` or any tool with "events" / "history" / "audit"
- `get_bank_transactions` or any tool with "bank" / "transaction"
- `approve_*` or any write tool (write/create/update/approve)

Flag every newly discovered tool as **NEW** in your report.

### Step 1.3 โ€” Build the inventory matrix

Build a summary table:

```
| Tool | Available | Notable fields | New fields vs previous analysis |
```

---

## Phase 2 โ€” Evaluation of the 50 use cases

For each use case below, re-evaluate **current feasibility** based on the tools and fields discovered in Phase 1. Use the scoring grid:

```
Score 80โ€“100 (โœ… A): Feasible with current tools, reliable result
Score 60โ€“79  (๐Ÿ”ง B): Feasible with a multi-step workaround or approximations
Score 40โ€“59  (โš ๏ธ C): Partially feasible, incomplete data
Score โ‰ค39    (โŒ D): Not feasible, missing tools
```

### Evaluation grid for the 50 use cases

#### CFO (10 cases)

| # | Use case | Required tools | Previous score | Current score | ฮ” |
|---|-------------|---------------|:---------------:|:------------:|:-:|
| C1 | Multi-entity treasury dashboard | list_companies, get_wallet_summary | 78 | ? | ? |
| C2 | Monthly spend flash report (top categories + YoY) | spendesk_analyze_spend | 87 | ? | ? |
| C3 | Budget vs Actual by cost center | **get_budgets** (missing) | 15 | ? | ? |
| C4 | AP cash flow forecast (30/60/90d) | get_payables, spendesk_analyze_spend | 70 | ? | ? |
| C5 | Blocked approvals (invoices > Xd) | get_payables (status + date filter) | 72 | ? | ? |
| C6 | Finance team KPIs (turnaround times, approval rate) | **Payable.approvedAt** (missing) | 20 | ? | ? |
| C7 | Multi-entity spend consolidation | list_companies, spendesk_analyze_spend | 78 | ? | ? |
| C8 | Supplier concentration risk (Pareto) | spendesk_analyze_spend, get_suppliers | 80 | ? | ? |
| C9 | Spend policy compliance | get_payables, list_cards | 68 | ? | ? |
| C10 | Automated board pack | Out of MCP scope | 10 | ? | ? |

#### Controller (10 cases)

| # | Use case | Required tools | Previous score | Current score | ฮ” |
|---|-------------|---------------|:---------------:|:------------:|:-:|
| CT1 | Month-end close checklist | get_payables, get_settlements, spendesk_get_due_invoices | 87 | ? | ? |
| CT2 | Settlement reconciliation vs GL export | get_settlements | 85 | ? | ? |
| CT3 | Duplicate invoice detection | get_payables, get_supplier_by_id | 65 | ? | ? |
| CT4 | GL mapping validation | get_payables, get_chart_of_accounts | 73 | ? | ? |
| CT5 | Complete accounting export reconciliation | get_payables (date filters) | 87 | ? | ? |
| CT6 | Invoice audit trail (who approved, when) | **get_payable_events** (missing) | 15 | ? | ? |
| CT7 | Attachment validity control | get_payable_attachments | 87 | ? | ? |
| CT8 | FEC data preparation | get_payables, get_chart_of_accounts | 55 | ? | ? |
| CT9 | End-of-period accruals | get_payables | 78 | ? | ? |
| CT10 | Bank reconciliation | **get_bank_transactions** (missing) | 10 | ? | ? |

#### AP Manager (10 cases)

| # | Use case | Required tools | Previous score | Current score | ฮ” |
|---|-------------|---------------|:---------------:|:------------:|:-:|
| AP1 | AP queue (priority invoices) | spendesk_get_due_invoices, get_suppliers | 83 | ? | ? |
| AP2 | Supplier onboarding audit | get_suppliers, get_payables | 85 | ? | ? |
| AP3 | Detailed supplier outstanding balance analysis | get_payables, get_suppliers | 87 | ? | ? |
| AP4 | Batch approval (approve N invoices) | **approve_payables** (missing) | 5 | ? | ? |
| AP5 | Payment SLA vs contractual terms | **Supplier.paymentTerms** (missing) | 55 | ? | ? |
| AP6 | At-risk suppliers (rejections, disputes) | **Payable.rejectionCount** (missing) | 20 | ? | ? |
| AP7 | Invoice โ†” PO matching (3-way) | get_payables, get_purchase_orders | 72 | ? | ? |
| AP8 | DPO (Days Payable Outstanding) | get_payables | 70 | ? | ? |
| AP9 | Approved supplier catalog | get_suppliers | 88 | ? | ? |
| AP10 | Claim / duplicate detection | get_payables | 65 | ? | ? |

#### Finance Analyst (10 cases)

| # | Use case | Required tools | Previous score | Current score | ฮ” |
|---|-------------|---------------|:---------------:|:------------:|:-:|
| FA1 | Spend analysis by department (MoM) | spendesk_analyze_spend ร— 3-6 months | 83 | ? | ? |
| FA2 | Category benchmark vs previous period | spendesk_analyze_spend | 83 | ? | ? |
| FA3 | Anomaly detection (spend outliers) | get_payables, spendesk_analyze_spend | 70 | ? | ? |
| FA4 | Supplier ROI | Out of Spendesk scope | 10 | ? | ? |
| FA5 | SaaS spend analysis + growth | get_payables (subscription), get_suppliers | 83 | ? | ? |
| FA6 | Spend by employee (top spenders) | spendesk_analyze_spend, get_users | 78 | ? | ? |
| FA7 | Tail spend (long-tail supplier analysis) | spendesk_analyze_spend, get_suppliers | 75 | ? | ? |
| FA8 | Year-end forecast (YTD extrapolation) | spendesk_analyze_spend | 73 | ? | ? |
| FA9 | Hidden cost analysis (bank fees) | **Payable.payableSubType** (missing) | 25 | ? | ? |
| FA10 | Multi-source finance reporting consolidation | list_companies, spendesk_analyze_spend | 78 | ? | ? |

#### Procurement (10 cases)

| # | Use case | Required tools | Previous score | Current score | ฮ” |
|---|-------------|---------------|:---------------:|:------------:|:-:|
| P1 | Open PO tracking (% consumed, alerts) | get_purchase_orders | 87 | ? | ? |
| P2 | PO budget overrun alert | get_purchase_orders | 87 | ? | ? |
| P3 | Inactive POs (open without invoice > 60d) | get_purchase_orders, get_payables | 78 | ? | ? |
| P4 | Supplier purchase consolidation (negotiation) | spendesk_analyze_spend, get_suppliers | 85 | ? | ? |
| P5 | Maverick spend (off-PO spend) | get_payables, get_purchase_orders | 68 | ? | ? |
| P6 | Supplier due diligence | get_suppliers | 85 | ? | ? |
| P7 | Pending purchase requests (aging) | get_requests | 80 | ? | ? |
| P8 | Supplier concentration risk | spendesk_analyze_spend | 82 | ? | ? |
| P9 | Contract renewals (POs nearing term) | **PO.contractEndDate** (missing) | 55 | ? | ? |
| P10 | Purchasing category catalog | get_expense_categories, spendesk_analyze_spend | 80 | ? | ? |

---

## Phase 3 โ€” Calculating overall coverage

```
For each persona, calculate:
  Cases A (โ‰ฅ80): X/10
  Cases B (60-79): X/10
  Cases C (40-59): X/10
  Cases D (โ‰ค39): X/10
  Average score: (sum of scores) / 10
  Coverage (A+B): X/10

Overall coverage = (number of cases โ‰ฅ60 out of 50) / 50 ร— 100

Compare with the previous analysis:
  Previous coverage: 69%
  Current coverage: X%
  Change: +X pts
```

---

## Phase 4 โ€” Detecting changes vs the previous analysis

### Compare tool by tool

```
For each tool inventoried in Phase 1:
  Compare the fields returned with the "missing fields" listed in mcp-gap-analysis.md
  
  For each previously identified missing field:
    If the field NOW EXISTS โ†’ ๐ŸŸข GAP CLOSED
    If the field is STILL absent โ†’ ๐Ÿ”ด PERSISTENT GAP

For each newly discovered tool:
    โ†’ โญ NEW TOOL: X โ€” impacts use cases: [list]
```

### Assess the impact of new fields/tools

```
For each CLOSED GAP or NEW TOOL:
  Identify the impacted use cases (refer to the Phase 2 grids)
  Calculate the new score for these use cases
  Explain why the score changed
```

---

## Phase 5 โ€” Regenerating the mcp-gap-analysis.md report

Write the updated `scenarios/mcp-gap-analysis.md` file with:

### Structure of the report to produce

```markdown
# Spendesk MCP โ€” Gap analysis by persona

> Version: [today's date]
> Previous version: [date of previous analysis]
> Coverage evolution: [X%] โ†’ [Y%] (+Z pts)

## Summary of changes since the last analysis

### Gaps closed (newly detected capabilities)
- [tool/field]: impact on [use cases]

### Newly detected gaps
- [missing tool/field]: impact on [use cases]

### Persistent gaps (not yet addressed)
- [tool/field]: X months without change

## Executive summary
[coverage table by persona โ€” updated]

## Inventory of available MCP tools
[updated with actual fields]

## Analysis by persona
[updated with new scores]

## Gap taxonomy
[updated โ€” remove closed gaps, add new ones]

## Recommended roadmap
[updated โ€” recalculate phases based on remaining gaps]

## UX friction points
[updated if new points identified]
```

---

## Usage notes

- **Run this skill after every MCP release** to automatically detect new fields or tools
- **Estimated duration:** 15โ€“25 minutes (MCP calls + analysis + generation)
- **Output:** updated `scenarios/mcp-gap-analysis.md` + summary of changes in chat
- **Tracking:** Each version of the report includes its date to allow historical tracking

## Example prompts
- "Run the MCP audit โ€” the MCP was just updated with new fields"
- "Redo the MCP coverage analysis to see what's changed"
- "Are there any new Spendesk MCP tools available?"

How to install this skill

/
  1. 1
    Download the file s00-mcp-coverage-audit.md using the button above.
  2. 2
    Place the file in the .claude/ directory of your project (or ~/.claude/ for a global install).
    cp s00-mcp-coverage-audit.md .claude/s00-mcp-coverage-audit.md
  3. 3
    Use in Claude Code โ€” the 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 get_payables, get_suppliers, get_purchase_orders, get_requests, get_cost_centers, get_users, get_settlements, get_wallet_summary, list_companies, spendesk_analyze_spend, spendesk_get_due_invoices, get_chart_of_accounts, get_expense_categories, get_analytical_fields, list_cards, get_wallet_loads, get_payable_attachments.

Similar skills

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
โ˜… Top
89/100ยท๐Ÿ” Ad hocยทIntermediate

Build a custom skill

Turns a precise business need into a brand-new tailored Claude skill, ready to use on the Spendesk MCP.

CFOControllerAP Manager

Interested in AI Agent services or Custom Integrations?