Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add SalesforceCommerceCloud/b2c-developer-tooling --skill b2c-scapi-customgit clone --depth 1 https://github.com/SalesforceCommerceCloud/b2c-developer-toolingWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/salesforcecommercecloud/b2c-developer-tooling/b2c-scapi-custom)<a href="https://agentmods.dev/skills/salesforcecommercecloud/b2c-developer-tooling/b2c-scapi-custom"><img src="https://agentmods.dev/badge/skills/salesforcecommercecloud/b2c-developer-tooling/b2c-scapi-custom/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/salesforcecommercecloud/b2c-developer-tooling/b2c-scapi-custom"><img src="https://agentmods.dev/badge/skills/salesforcecommercecloud/b2c-developer-tooling/b2c-scapi-custom.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 10 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00084 | $0.01338 |
| Opus 5.5 | $0.00034 | $0.00535 |
| Sonnet 5.5 | $0.00017 | $0.00268 |
| Haiku 4.5 | $0.00008 | $0.00134 |
Grade A, and why
b2c-scapi-custom scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 17d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
When you mint a token **by hand** (with `b2c auth token` or curl) to call a custom Admin API directly, that injection does **not** happen — you must list both the tenant scope and your scope(s) yourself. `b2c auth token` How it starts
The opening of the file, as written. The whole thing — 127 lines — stays where its author put it; the contents beside it link to each section on GitHub.
B2C SCAPI Custom APIs Skill
Use the b2c CLI plugin to manage SCAPI Custom API endpoints and check their registration status.
When B2C MCP is available, prefer scapi_custom_apis_get_status for registration
and scapi_schemas_list for live contracts. For Admin custom API execution, read
skill://mcp/b2c-mcp-scapi/SKILL.md; fetch the contract through scapi.request in the
program before calling its endpoints. Schema reads need sfcc.scapi-schemas;
execution needs the declared c_* scope. Shopper execution is unsupported.
Tip: If
b2cis not installed globally, usenpx @salesforce/b2c-cliinstead (e.g.,npx @salesforce/b2c-cli scapi custom status).
Configuration
Values like tenantId, shortCode, clientId, and clientSecret resolve from dw.json / SFCC_* env vars / the active instance / configuration plugins. Examples below show minimal usage; add flags only to override configured values — passing --client-id/--client-secret/--tenant-id/--short-code is usually unnecessary. If a required value is missing, the CLI emits an actionable error pointing at the flag, env var, and config key.
Run b2c setup inspect to see the resolved configuration and which source provided each value (--json for scripting; secrets stay masked by default). For precedence rules and troubleshooting, see the b2c-cli:b2c-config skill.
Tenant ID vs. Organization ID
The tenant ID identifies your B2C Commerce instance. It is not the same as the organization ID:
- Tenant ID:
zzxy_prd(thetenantIdvalue in dw.json, or--tenant-idoverride) - Organization ID:
f_ecom_zzxy_prd(used in SCAPI URLs, hasf_ecom_prefix)
Deriving Tenant ID from Hostname
For sandbox instances, derive the tenant ID from the hostname by replacing hyphens with underscores:
| Hostname | Tenant ID |
|---|---|
zzpq-013.dx.commercecloud.salesforce.com |
zzpq_013 |
zzxy-001.dx.commercecloud.salesforce.com |
zzxy_001 |
abcd-dev.dx.commercecloud.salesforce.com |
abcd_dev |
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 17d ago Changed 0e80963b60c3
- 1mo ago Changed · +6 lines 8605ce579059
- 1mo ago First seen · 121 lines · 84 tokens per session scan A b1126e7c8329
b2c-scapi-custom is a skill published in the GitHub repository SalesforceCommerceCloud/b2c-developer-tooling (56 stars, last pushed today), licensed Apache-2.0. It adds 84 tokens to every session and 1,338 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
grow-payment-gateway
Integrate Grow by Meshulam payment gateway into Israeli applications -- covers payment pages (iframe/redirect/SDK), tokenization, recurring billing, payment links, refunds, invoices, webhooks, and 3DS authentication via the Grow Light API. Use when user asks to accept payments via Grow or Meshulam, set up "slikat…
shopify-app-development
Build embedded Shopify apps using the Remix framework, App Bridge for UI integration, Polaris components, and OAuth authentication flow.
israeli-shipping-manager
Build and manage shipping integrations with Israeli carriers, including Israel Post, Cheetah, HFD, Mahir Li, GetPackage, and UPS Israel, plus locker pickup services (BOX2GO, Shlager, Done, UPS lockers). Use when user asks about "shipping Israel", "Cheetah delivery", "meshloach", "shipping label", "HFD", "locker pickup…
sfcc-ocapi-scapi
Integrate with Salesforce Commerce Cloud's headless APIs (OCAPI and Shopper APIs) to build custom storefronts and mobile commerce experiences.
convex-billing
Add Stripe billing/payments to the Convex app via @convex-dev/stripe (checkout + webhook + gating).
wikipedia
Search and read Wikipedia via x wkp — MediaWiki API, no API key, zero install; query, extract, suggest, and DDG route in one module. Load for wiki, wikipedia, encyclopedia lookup, article summary.