Connectors · Commerce
Salesforce B2C Commerce API (SCAPI) MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Salesforce B2C Commerce API (SCAPI) and the rest of your systems. It gives your agent 248 Salesforce B2C Commerce API (SCAPI) actions (99 reads, 106 writes and 43 that wait for a confirmation) and holds the Salesforce B2C Commerce API (SCAPI) credential itself, so the agent never does. It paces Salesforce B2C Commerce API (SCAPI)'s limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "salesforce_commerce_cloud.catalogs.get_catalogs", intent: "check which Salesforce B2C Commerce API (SCAPI) account is connected"}# Retrieve a list of catalog IDs · read · 1 upstream call- 248actionsin one signed file
- 99readlook, never change
- 106writecreate and update
- 43wait for a yesdestructive, confirmed first
Set up
Connect Salesforce B2C Commerce API (SCAPI) in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect Salesforce B2C Commerce API (SCAPI).
OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in. actionlake stores what you paste write-only, sealed under your tenant's key.
client_idAccount Manager API client IDclient_secretAccount Manager API client password (the client secret set when the API client was created)api_scopesYour Salesforce B2C Commerce API (SCAPI) api scopesorganization_idYour Salesforce B2C Commerce API (SCAPI) organization idshort_codeYour Salesforce B2C Commerce API (SCAPI) short code
account { op: "connections.requirements", service: "salesforce_commerce_cloud" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "salesforce_commerce_cloud.catalogs.get_catalogs" }# retrieve a list of catalog ids · read · 1 upstream callcheck { action: "salesforce_commerce_cloud.products.create_product", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Salesforce B2C Commerce API (SCAPI) at a glance
- Sign-in
- OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in.
- You provide
client_idclient_secret- Setup fields
api_scopesorganization_idshort_code- Limits we pace to
- 600 calls a minute, per connection
- API covered
- Salesforce Commerce API (SCAPI) Admin APIs, v1 (OpenAPI 3.0, commerce-sdk assignments 1.0.39, auth-admin 1.19.1, campaigns 1.1.1, catalogs 1.0.47, cors 1.1.1, coupons 1.0.44, customers 1.1.4, gift-certificates 1.0.43, orders 1.6.4, preferences 1.2.3, products 1.2.0, promotions 1.2.0, source-code-groups 1.0.42, zones 1.3.0), at your own api.commercecloud.salesforce.com address, set when you connect
- Built from
- Salesforce B2C Commerce API (SCAPI)'s documentation, read 23 October 2026OpenAPI spec (GitHub)OpenAPI spec (GitHub)OpenAPI spec (GitHub)
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 94 of 99 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 3, so ask can line Salesforce B2C Commerce API (SCAPI) up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Salesforce B2C Commerce API (SCAPI).
248 actions in 14 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 99readlook, never change
- 106writecreate and update
- 43destructivewait for a confirmation
CDN zones
8231 read · 37 write · 14 destructive
Add certificate for a zone · Create a cache rule · Set up two-factor mTLS certificates for the account and associate the staging zone code upload hostname · Create a custom rule
Products
3615 read · 14 write · 7 destructive
Search products · Create or overwrite a product with provided data · Get product information · Partially update fields of an existing product
Catalogs
3215 read · 10 write · 7 destructive
Retrieve all categories within a catalog · Add products to the exclusion list · Create a category product assignment · Create or update a category within a catalog
Customers
156 read · 6 write · 3 destructive
Search for customers in a customer list · Get a list of customer addresses · Add a new customer address · Get a list of customer groups
Slas admin
156 read · 5 write · 4 destructive
Create or update a client · Create or update an identity provider · Create or update a password action template · Create or update a tenant. Use the request body to provide identification and contact information for the tenant and it…
Orders
142 read · 12 write · 0 destructive
Return order details that match the query filters. By default, calling this API with no filter returns the 100 most rec… · Create an order · Submit a third-party OMS status event for an order · Return order details for the specified order number
Promotions
124 read · 6 write · 2 destructive
Create a promotion using the information provided · Create or replace the compatibility settings for a promotion · Create or replace the discount rule for a promotion · Search for promotions
Campaigns
104 read · 4 write · 2 destructive
Create or replace a promotion campaign assignment · Search for campaigns using a search request object that allows filtering on various attributes · Create a campaign using the information provided · List promotions assigned to a campaign
6 more areas · 32 actions
- Coupons 9
- Preferences 9
- Gift certificates 5
- Source code groups 5
- Cors 3
- Assignments 1
Top actions
The Salesforce B2C Commerce API (SCAPI) API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 14 of Salesforce B2C Commerce API (SCAPI)'s 15 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
salesforce_commerce_cloud.orders.get_ordersReturn order details that match the query filters. By default, calling this API with no filter returns the 100 most rec… | Return order details that match the query filters. By default, calling this API with no filter returns the 100 most rec…. | read | commerce.order.list82 connectors |
salesforce_commerce_cloud.products.search_productsSearch products | Search products. | read | commerce.product.search18 connectors |
salesforce_commerce_cloud.products.create_productCreate or overwrite a product with provided data | Create or overwrite a product with provided data. | write | commerce.product.create92 connectors |
salesforce_commerce_cloud.orders.create_ordersCreate an order | Create an order. | write | commerce.order.create67 connectors |
salesforce_commerce_cloud.products.delete_productDeletes the product by ID | Deletes the product by ID. | destructive | commerce.product.delete80 connectors |
salesforce_commerce_cloud.customers.search_customer_in_customer_listSearch for customers in a customer list | Search for customers in a customer list. | read | commerce.customer.search3 connectors |
salesforce_commerce_cloud.catalogs.get_categories_from_catalogRetrieve all categories within a catalog | Retrieve all categories within a catalog. | read | commerce.product_category.list25 connectors |
salesforce_commerce_cloud.products.get_variations_for_master_productList all variations of a master product | List all variations of a master product. | read | commerce.product_variant.list16 connectors |
salesforce_commerce_cloud.customers.get_addresses_for_customer_from_customer_listGet a list of customer addresses | Get a list of customer addresses. | read | commerce.customer_address.list10 connectors |
salesforce_commerce_cloud.customers.get_customer_groupsGet a list of customer groups | Get a list of customer groups. | read | commerce.customer_group.list9 connectors |
salesforce_commerce_cloud.customers.create_address_for_customer_in_customer_listAdd a new customer address | Add a new customer address. | write | commerce.customer_address.create9 connectors |
salesforce_commerce_cloud.products.search_product_variationsSearch product variations using complex queries and filters | Search product variations using complex queries and filters. | read | this connector |
Try it
Prompts to paste into Claude.
Each one names the Salesforce B2C Commerce API (SCAPI) actions it will call, so you know what it reads and what it changes before you send it.
- Readread
Which Salesforce B2C Commerce API (SCAPI) orders from the last seven days are still unfulfilled?
calls
salesforce_commerce_cloud.orders.get_orders - Writewrite
Create or overwrite a product with provided data in Salesforce B2C Commerce API (SCAPI). Show me exactly what you will send before you save it.
calls
salesforce_commerce_cloud.products.create_product
Governance for Salesforce B2C Commerce API (SCAPI)
Destructive actions wait for a yes.
43 Salesforce B2C Commerce API (SCAPI) actions are destructive. The first 10:
- Deletes the product by ID
salesforce_commerce_cloud.products.delete_product - Delete a rule
salesforce_commerce_cloud.catalogs.delete_rule - Delete all rules and conditions for a catalog and category
salesforce_commerce_cloud.catalogs.delete_category_rules - Delete or unbind a product option
salesforce_commerce_cloud.products.delete_product_option - Remove a variation attribute
salesforce_commerce_cloud.products.delete_variation_attribute - Delete a product option value
salesforce_commerce_cloud.products.delete_product_option_value - Delete a specific category from a catalog
salesforce_commerce_cloud.catalogs.delete_category_from_catalog - Delete a condition
salesforce_commerce_cloud.catalogs.delete_category_rule_condition - Remove a category product assignment
salesforce_commerce_cloud.catalogs.unassign_product_from_category - Delete all conditions for a rule
salesforce_commerce_cloud.catalogs.delete_category_rule_conditions
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Deletes the product by ID?
intent: the user asked me to deletes the product by ID
account { op: "keys.create", name: "salesforce-commerce-cloud-agent", allowed_actions: ["salesforce_commerce_cloud.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "salesforce_commerce_cloud.products.delete_product", approver: "[email protected]" }, { match: "salesforce_commerce_cloud.catalogs.delete_rule", approver: "[email protected]" }, { match: "salesforce_commerce_cloud.catalogs.delete_category_rules", approver: "[email protected]" } ]}Cost
What Salesforce B2C Commerce API (SCAPI) costs on actionlake.
Every Salesforce B2C Commerce API (SCAPI) action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Salesforce B2C Commerce API (SCAPI) refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 248 Salesforce B2C Commerce API (SCAPI) actions
- 248actions pageeach page of a long list is one call
- 94reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Salesforce B2C Commerce API (SCAPI) action.
248 actions by area: the id your agent calls, what it does, and its effect.
CDN zones82
salesforce_commerce_cloud.cdn_zones.add_certificate_for_zoneAdd certificate for a zonewritesalesforce_commerce_cloud.cdn_zones.cache_purgePurge the cache for the host specified in the request bodydestructivesalesforce_commerce_cloud.cdn_zones.create_cache_ruleCreate a cache rulewritesalesforce_commerce_cloud.cdn_zones.create_code_upload_certificateSet up two-factor mTLS certificates for the account and associate the staging zone code upload hostnamewritesalesforce_commerce_cloud.cdn_zones.create_custom_ruleCreate a custom rulewritesalesforce_commerce_cloud.cdn_zones.create_logpush_jobCreate Logpush jobwritesalesforce_commerce_cloud.cdn_zones.create_logpush_ownershipCreate Logpush ownership token filewritesalesforce_commerce_cloud.cdn_zones.create_mrt_rulesCreate MRT rules to route to a new MRT environmentwritesalesforce_commerce_cloud.cdn_zones.create_page_shield_policyCreate page shield policywritesalesforce_commerce_cloud.cdn_zones.create_rate_limiting_ruleCreate a rate limiting rulewritesalesforce_commerce_cloud.cdn_zones.create_storefront_zoneCreate a new storefront zonewritesalesforce_commerce_cloud.cdn_zones.create_turnstile_widgetCreate a Turnstile widget for the requesting instancewritesalesforce_commerce_cloud.cdn_zones.create_webhookCreate webhookwritesalesforce_commerce_cloud.cdn_zones.delete_cache_ruleDelete a cache ruledestructivesalesforce_commerce_cloud.cdn_zones.delete_certificateDelete a custom hostname and the certificate associated with it. Note that a valid certificate is necessary for a site…destructivesalesforce_commerce_cloud.cdn_zones.delete_code_upload_certificateRemove an mTLS certificate and associated hostnamedestructivesalesforce_commerce_cloud.cdn_zones.delete_custom_ruleDelete a specific custom ruledestructivesalesforce_commerce_cloud.cdn_zones.delete_logpush_jobDelete Logpush job by job IDdestructivesalesforce_commerce_cloud.cdn_zones.delete_mrt_ruleDelete an MRT ruledestructivesalesforce_commerce_cloud.cdn_zones.delete_mrt_rulesetDelete the MRT ruleset and all rules within the rulesetdestructivesalesforce_commerce_cloud.cdn_zones.delete_origin_header_modificationDelete the origin header modification associated with a zone. Only the `mrt` type is supporteddestructivesalesforce_commerce_cloud.cdn_zones.delete_page_shield_notificationDelete page shield notification webhookdestructivesalesforce_commerce_cloud.cdn_zones.delete_page_shield_policyDelete page shield policydestructivesalesforce_commerce_cloud.cdn_zones.delete_rate_limiting_ruleDelete a specific rate limiting ruledestructivesalesforce_commerce_cloud.cdn_zones.delete_turnstile_widgetDelete a Turnstile widgetdestructivesalesforce_commerce_cloud.cdn_zones.delete_webhookDelete webhookdestructivesalesforce_commerce_cloud.cdn_zones.get_cache_rulesRetrieve existing cache rulesreadsalesforce_commerce_cloud.cdn_zones.get_certificatesList certificates for a zonereadsalesforce_commerce_cloud.cdn_zones.get_cipher_suitesGet cipher suites settings by zoneIdreadsalesforce_commerce_cloud.cdn_zones.get_code_upload_certificateReturn the mTLS certificate for the given account's mTLS certificate IDreadsalesforce_commerce_cloud.cdn_zones.get_code_upload_certificatesReturn all the mTLS certificates for the accountreadsalesforce_commerce_cloud.cdn_zones.get_custom_ruleRetrieve a specific custom rulereadsalesforce_commerce_cloud.cdn_zones.get_custom_rulesRetrieve existing custom rulesreadsalesforce_commerce_cloud.cdn_zones.get_logpush_jobGet Logpush job detailsreadsalesforce_commerce_cloud.cdn_zones.get_mrt_rulesGet all MRT rulesreadsalesforce_commerce_cloud.cdn_zones.get_origin_header_modificationGet the origin header modification associated with a zone. Only the `mrt` type is supportedreadsalesforce_commerce_cloud.cdn_zones.get_owasp_waf_packageGet an OWASP ModSecurity Core Rule Setreadsalesforce_commerce_cloud.cdn_zones.get_page_shield_notificationGet page shield notification webhooksreadsalesforce_commerce_cloud.cdn_zones.get_page_shield_policiesList page shield policiesreadsalesforce_commerce_cloud.cdn_zones.get_page_shield_policyGet page shield policy by policy IDreadsalesforce_commerce_cloud.cdn_zones.get_page_shield_scriptFetch a script detected by Page Shield by script IDreadsalesforce_commerce_cloud.cdn_zones.get_page_shield_scriptsRetrieve a list of scripts detected by page shield for a specific zonereadsalesforce_commerce_cloud.cdn_zones.get_rate_limiting_ruleRetrieve a specific rate limiting rulereadsalesforce_commerce_cloud.cdn_zones.get_rate_limiting_rulesRetrieve existing rate limiting rulesreadsalesforce_commerce_cloud.cdn_zones.get_security_settingsRetrieve the security settings for a zonereadsalesforce_commerce_cloud.cdn_zones.get_speed_settingsRetrieve the speed settings for a zonereadsalesforce_commerce_cloud.cdn_zones.get_turnstile_widgetGet Turnstile widget detailsreadsalesforce_commerce_cloud.cdn_zones.get_waf_groupsRetrieve all WAF groups accessible to the callerreadsalesforce_commerce_cloud.cdn_zones.get_waf_managed_rules_in_rulesetRetrieve all rules in the specified WAFv2 managed rulesetreadsalesforce_commerce_cloud.cdn_zones.get_waf_managed_rulesetsRetrieve WAFv2 managed rulesetsreadsalesforce_commerce_cloud.cdn_zones.get_waf_ruleRetrieve details of a specific WAF rulereadsalesforce_commerce_cloud.cdn_zones.get_waf_rulesRetrieve WAF rules for the WAF group specified by the callerreadsalesforce_commerce_cloud.cdn_zones.get_webhookGet webhook by IDreadsalesforce_commerce_cloud.cdn_zones.get_webhooksList webhooksreadsalesforce_commerce_cloud.cdn_zones.get_zones_infoRetrieve zone informationreadsalesforce_commerce_cloud.cdn_zones.list_logpush_jobList Logpush jobreadsalesforce_commerce_cloud.cdn_zones.list_turnstile_widgetsList Turnstile widgets for the requesting instancereadsalesforce_commerce_cloud.cdn_zones.migrate_zone_to_waf_v2Migrate a zone to WAFv2. Only applicable for existing zones using WAFv1writesalesforce_commerce_cloud.cdn_zones.patch_owasp_waf_packagePatch an OWASP ModSecurity Core Rule Setwritesalesforce_commerce_cloud.cdn_zones.post_page_shield_notificationSetup page shield notification webhookwritesalesforce_commerce_cloud.cdn_zones.toggle_ocapi_caching_page_ruleEnable or disable the OCAPI Caching page rulewritesalesforce_commerce_cloud.cdn_zones.update_cache_ruleUpdate a cache rulewritesalesforce_commerce_cloud.cdn_zones.update_certificateUpdate the certificate for a given certificateId for a particular zonewritesalesforce_commerce_cloud.cdn_zones.update_cipher_suitesUpdate cipher suite settings for the zonewritesalesforce_commerce_cloud.cdn_zones.update_custom_ruleUpdate a specific custom rulewritesalesforce_commerce_cloud.cdn_zones.update_logpush_jobUpdate Logpush jobwritesalesforce_commerce_cloud.cdn_zones.update_mrt_ruleUpdate an MRT rulewritesalesforce_commerce_cloud.cdn_zones.update_mrt_rulesetUpdate the MRT environment hostname or add MRT rules to route to an existing MRT environmentwritesalesforce_commerce_cloud.cdn_zones.update_order_of_custom_rulesUpdate the order of all existing custom ruleswritesalesforce_commerce_cloud.cdn_zones.update_page_shield_notificationUpdate page shield notification webhookwritesalesforce_commerce_cloud.cdn_zones.update_page_shield_policyUpdate page shield policy by policy IDwritesalesforce_commerce_cloud.cdn_zones.update_rate_limiting_ruleUpdate a specific rate limiting rulewritesalesforce_commerce_cloud.cdn_zones.update_security_settingsUpdate the security settings for a zonewritesalesforce_commerce_cloud.cdn_zones.update_speed_settingsUpdate the speed settings for a zonewritesalesforce_commerce_cloud.cdn_zones.update_turnstile_widgetUpdate an existing Turnstile widgetwritesalesforce_commerce_cloud.cdn_zones.update_waf_groupUpdate the action or mode of a specific WAF groupwritesalesforce_commerce_cloud.cdn_zones.update_waf_managed_rule_in_rulesetUpdate a WAF managed rule in the specified WAFv2 managed rulesetwritesalesforce_commerce_cloud.cdn_zones.update_waf_managed_rulesetUpdate WAFv2 managed rulesetwritesalesforce_commerce_cloud.cdn_zones.update_waf_ruleUpdate the action of a specific WAF rulewritesalesforce_commerce_cloud.cdn_zones.update_webhookUpdate webhookwritesalesforce_commerce_cloud.cdn_zones.upsert_origin_header_modificationUpsert an origin header modification. Only the `mrt` type is supportedwritesalesforce_commerce_cloud.cdn_zones.validate_custom_hostnameTrigger the validation of a custom hostnamewrite
Products36
salesforce_commerce_cloud.products.assign_variation_for_master_productAssign a variation to a master product (creates if not exists)writesalesforce_commerce_cloud.products.assign_variation_group_to_master_productAssign or create a variation group for a productwritesalesforce_commerce_cloud.products.create_productCreate or overwrite a product with provided datawritesalesforce_commerce_cloud.products.create_product_optionCreate or bind a product optionwritesalesforce_commerce_cloud.products.create_product_option_valueCreate a product option valuewritesalesforce_commerce_cloud.products.create_variation_attributeCreate a variation attributewritesalesforce_commerce_cloud.products.create_variation_attribute_valueCreate a variation attribute valuewritesalesforce_commerce_cloud.products.delete_productDeletes the product by IDdestructivesalesforce_commerce_cloud.products.delete_product_optionDelete or unbind a product optiondestructivesalesforce_commerce_cloud.products.delete_product_option_valueDelete a product option valuedestructivesalesforce_commerce_cloud.products.delete_variation_attributeRemove a variation attributedestructivesalesforce_commerce_cloud.products.delete_variation_attribute_valueDelete a variation attribute valuedestructivesalesforce_commerce_cloud.products.get_categorization_attribute_definitionsGet allowed attributes, values, and operators for creating rule-based categorization conditionsreadsalesforce_commerce_cloud.products.get_productGet product informationreadsalesforce_commerce_cloud.products.get_product_optionRetrieve a specific product optionreadsalesforce_commerce_cloud.products.get_product_option_valueRetrieve a product option valuereadsalesforce_commerce_cloud.products.get_product_optionsRetrieve product options for a productreadsalesforce_commerce_cloud.products.get_variation_attributeRetrieve a specific variation attributereadsalesforce_commerce_cloud.products.get_variation_attribute_valueRetrieve a variation attribute valuereadsalesforce_commerce_cloud.products.get_variation_attributesRetrieve variation attributes of a productreadsalesforce_commerce_cloud.products.get_variation_for_master_productGet details of a specific variationreadsalesforce_commerce_cloud.products.get_variation_group_for_master_productGet a specific variation groupreadsalesforce_commerce_cloud.products.get_variation_groups_for_master_productList all variation groups of a productreadsalesforce_commerce_cloud.products.get_variations_for_master_productList all variations of a master productreadsalesforce_commerce_cloud.products.search_product_variationsSearch product variations using complex queries and filtersreadsalesforce_commerce_cloud.products.search_productsSearch productsreadsalesforce_commerce_cloud.products.search_unassigned_productsSearch for unassigned productsreadsalesforce_commerce_cloud.products.unassign_variation_from_master_productUnassign a variation from a product (does not delete it)destructivesalesforce_commerce_cloud.products.unassign_variation_group_from_master_productUnassign a variation group (product not deleted)destructivesalesforce_commerce_cloud.products.update_productPartially update fields of an existing productwritesalesforce_commerce_cloud.products.update_product_optionUpdate a product optionwritesalesforce_commerce_cloud.products.update_product_option_valueUpdate a product option valuewritesalesforce_commerce_cloud.products.update_variation_attributeUpdate a variation attributewritesalesforce_commerce_cloud.products.update_variation_attribute_valueUpdate a variation attribute valuewritesalesforce_commerce_cloud.products.update_variation_for_master_productUpdate a specific product variationwritesalesforce_commerce_cloud.products.update_variation_group_for_master_productUpdate an existing variation groupwrite
Catalogs32
salesforce_commerce_cloud.catalogs.add_products_to_exclusion_listAdd products to the exclusion listwritesalesforce_commerce_cloud.catalogs.assign_product_to_categoryCreate a category product assignmentwritesalesforce_commerce_cloud.catalogs.create_category_in_catalogCreate or update a category within a catalogwritesalesforce_commerce_cloud.catalogs.create_category_rulesCreate rules and conditions for a catalog and categorywritesalesforce_commerce_cloud.catalogs.create_or_update_category_rule_conditionCreate or update a conditionwritesalesforce_commerce_cloud.catalogs.create_update_ruleCreate or update a rulewritesalesforce_commerce_cloud.catalogs.delete_category_from_catalogDelete a specific category from a catalogdestructivesalesforce_commerce_cloud.catalogs.delete_category_rule_conditionDelete a conditiondestructivesalesforce_commerce_cloud.catalogs.delete_category_rule_conditionsDelete all conditions for a ruledestructivesalesforce_commerce_cloud.catalogs.delete_category_rulesDelete all rules and conditions for a catalog and categorydestructivesalesforce_commerce_cloud.catalogs.delete_ruleDelete a ruledestructivesalesforce_commerce_cloud.catalogs.get_assigned_product_from_categoryRetrieve a category product assignmentreadsalesforce_commerce_cloud.catalogs.get_catalogRetrieve details of a specific catalogreadsalesforce_commerce_cloud.catalogs.get_catalogsRetrieve a list of catalog IDsreadsalesforce_commerce_cloud.catalogs.get_categories_from_catalogRetrieve all categories within a catalogreadsalesforce_commerce_cloud.catalogs.get_categorization_statusGet the status of the latest categorization jobreadsalesforce_commerce_cloud.catalogs.get_category_from_catalogRetrieve details of a specific category within a catalogreadsalesforce_commerce_cloud.catalogs.get_category_rule_conditionRetrieve a condition by IDreadsalesforce_commerce_cloud.catalogs.get_category_rule_conditionsRetrieve conditions for a rulereadsalesforce_commerce_cloud.catalogs.get_category_rulesRetrieve all rules for a catalog and categoryreadsalesforce_commerce_cloud.catalogs.get_exclusion_listGet the list of excluded productsreadsalesforce_commerce_cloud.catalogs.get_rule_by_idRetrieve a rule by IDreadsalesforce_commerce_cloud.catalogs.remove_products_from_exclusion_listRemove products from the exclusion listdestructivesalesforce_commerce_cloud.catalogs.run_category_rulesSubmit a job to evaluate or execute the ruleswritesalesforce_commerce_cloud.catalogs.search_catalogsSearch for catalogsreadsalesforce_commerce_cloud.catalogs.search_categoriesSearch for categories within an organizationreadsalesforce_commerce_cloud.catalogs.search_categories_in_catalogSearch for catalog categoriesreadsalesforce_commerce_cloud.catalogs.search_products_assigned_to_categorySearch for category product assignmentsreadsalesforce_commerce_cloud.catalogs.unassign_product_from_categoryRemove a category product assignmentdestructivesalesforce_commerce_cloud.catalogs.update_catalogUpdate details of a specific catalogwritesalesforce_commerce_cloud.catalogs.update_category_in_catalogUpdate a specific category within a catalogwritesalesforce_commerce_cloud.catalogs.update_product_category_assignmentUpdate a category product assignmentwrite
Customers15
salesforce_commerce_cloud.customers.assign_customer_group_membersAssign multiple customers to a customer groupwritesalesforce_commerce_cloud.customers.create_address_for_customer_in_customer_listAdd a new customer addresswritesalesforce_commerce_cloud.customers.create_customer_in_customer_listCreate a new customer in a customer listwritesalesforce_commerce_cloud.customers.create_customer_listCreate a new customer in a customer listwritesalesforce_commerce_cloud.customers.delete_customer_from_customer_listDelete a customer from a customer listdestructivesalesforce_commerce_cloud.customers.get_address_for_customer_from_customer_listGet a customer addressreadsalesforce_commerce_cloud.customers.get_addresses_for_customer_from_customer_listGet a list of customer addressesreadsalesforce_commerce_cloud.customers.get_customer_from_customer_listGet customer informationreadsalesforce_commerce_cloud.customers.get_customer_groupsGet a list of customer groupsreadsalesforce_commerce_cloud.customers.remove_address_for_customer_in_customer_listDelete a customer addressdestructivesalesforce_commerce_cloud.customers.search_customer_groupSearch for customer groupsreadsalesforce_commerce_cloud.customers.search_customer_in_customer_listSearch for customers in a customer listreadsalesforce_commerce_cloud.customers.unassign_customer_group_membersUnassign multiple customers from a customer groupdestructivesalesforce_commerce_cloud.customers.update_address_for_customer_in_customer_listUpdate a customer addresswritesalesforce_commerce_cloud.customers.update_customer_in_customer_listUpdate a customer in a customer listwrite
Slas admin15
salesforce_commerce_cloud.slas_admin.batch_logoutLog out multiple shoppers in a single request by revoking active refresh and access tokens for each shopper and all the…writesalesforce_commerce_cloud.slas_admin.delete_clientDelete a clientdestructivesalesforce_commerce_cloud.slas_admin.delete_identity_providerDelete an identity providerdestructivesalesforce_commerce_cloud.slas_admin.delete_pwd_action_templateDelete a password action templatedestructivesalesforce_commerce_cloud.slas_admin.delete_shopperDelete all shopper records associated with a shopper's customer ID. The email ID is used if it's passed as a query para…destructivesalesforce_commerce_cloud.slas_admin.register_clientCreate or update a clientwritesalesforce_commerce_cloud.slas_admin.register_identity_providerCreate or update an identity providerwritesalesforce_commerce_cloud.slas_admin.register_pwd_action_templateCreate or update a password action templatewritesalesforce_commerce_cloud.slas_admin.register_tenantCreate or update a tenant. Use the request body to provide identification and contact information for the tenant and it…writesalesforce_commerce_cloud.slas_admin.retrieve_clientRetrieve a clientreadsalesforce_commerce_cloud.slas_admin.retrieve_clientsRetrieve/Get all tenant clientsreadsalesforce_commerce_cloud.slas_admin.retrieve_identity_providerRetrieve/Get a specific identity providerreadsalesforce_commerce_cloud.slas_admin.retrieve_identity_providersRetrieve/Get all tenant identity providersreadsalesforce_commerce_cloud.slas_admin.retrieve_pwd_action_templateRetrieve/get a password action templatereadsalesforce_commerce_cloud.slas_admin.retrieve_tenantRetrieve a tenant by tenant IDread
Orders14
salesforce_commerce_cloud.orders.create_oms_status_eventSubmit a third-party OMS status event for an orderwritesalesforce_commerce_cloud.orders.create_ordersCreate an orderwritesalesforce_commerce_cloud.orders.get_orderReturn order details for the specified order numberreadsalesforce_commerce_cloud.orders.get_ordersReturn order details that match the query filters. By default, calling this API with no filter returns the 100 most rec…readsalesforce_commerce_cloud.orders.update_orderUpdate an orderwritesalesforce_commerce_cloud.orders.update_order_confirmation_statusUpdate order confirmation statuswritesalesforce_commerce_cloud.orders.update_order_export_statusUpdate order export status. If on-order inventory is enabled for the associated inventory list, then setting the export…writesalesforce_commerce_cloud.orders.update_order_external_statusUpdate order external statuswritesalesforce_commerce_cloud.orders.update_order_payment_instrumentUpdate the payment instrument of an orderwritesalesforce_commerce_cloud.orders.update_order_payment_statusUpdate order payment statuswritesalesforce_commerce_cloud.orders.update_order_payment_transactionUpdate the transaction of an order payment instrumentwritesalesforce_commerce_cloud.orders.update_order_shipping_addressCreate or replace a shipping addresswritesalesforce_commerce_cloud.orders.update_order_shipping_statusUpdate order shipping statuswritesalesforce_commerce_cloud.orders.update_order_statusUpdate order statuswrite
Promotions12
salesforce_commerce_cloud.promotions.create_promotionCreate a promotion using the information providedwritesalesforce_commerce_cloud.promotions.create_promotion_compatibilityCreate or replace the compatibility settings for a promotionwritesalesforce_commerce_cloud.promotions.create_promotion_discount_ruleCreate or replace the discount rule for a promotionwritesalesforce_commerce_cloud.promotions.delete_promotionDelete a promotion for a specified IDdestructivesalesforce_commerce_cloud.promotions.delete_promotion_discount_ruleDelete the discount rule for a promotiondestructivesalesforce_commerce_cloud.promotions.get_promotionRetrieve promotion informationreadsalesforce_commerce_cloud.promotions.get_promotion_compatibilityRetrieve the compatibility settings for a promotionreadsalesforce_commerce_cloud.promotions.get_promotion_discount_ruleRetrieve the discount rule for a promotionreadsalesforce_commerce_cloud.promotions.promotions_searchSearch for promotionsreadsalesforce_commerce_cloud.promotions.update_promotionUpdate a promotion with the specified informationwritesalesforce_commerce_cloud.promotions.update_promotion_compatibilityUpdate the compatibility settings for a promotionwritesalesforce_commerce_cloud.promotions.update_promotion_discount_ruleUpdate the discount rule for a promotionwrite
Campaigns10
salesforce_commerce_cloud.campaigns.assign_promotion_to_campaignCreate or replace a promotion campaign assignmentwritesalesforce_commerce_cloud.campaigns.campaigns_searchSearch for campaigns using a search request object that allows filtering on various attributesreadsalesforce_commerce_cloud.campaigns.create_campaignCreate a campaign using the information providedwritesalesforce_commerce_cloud.campaigns.delete_campaignDeletes a campaign with a specified IDdestructivesalesforce_commerce_cloud.campaigns.get_campaignGet campaign informationreadsalesforce_commerce_cloud.campaigns.get_campaign_promotion_assignmentGet a promotion campaign assignmentreadsalesforce_commerce_cloud.campaigns.get_campaign_promotion_assignmentsList promotions assigned to a campaignreadsalesforce_commerce_cloud.campaigns.unassign_promotion_from_campaignUnassign a promotion from a campaigndestructivesalesforce_commerce_cloud.campaigns.update_campaignUpdate a campaign with the specified informationwritesalesforce_commerce_cloud.campaigns.update_campaign_promotion_assignmentUpdate a promotion campaign assignmentwrite
Coupons9
salesforce_commerce_cloud.coupons.coupon_redemptions_searchSearch for coupon redemptionsreadsalesforce_commerce_cloud.coupons.coupons_searchSearch for couponsreadsalesforce_commerce_cloud.coupons.create_couponCreate a coupon using the information provided. If a coupon with the specified identifier already exists, the existing…writesalesforce_commerce_cloud.coupons.delete_couponDelete a coupon with a specified IDdestructivesalesforce_commerce_cloud.coupons.get_couponReturn coupon information for the specified coupon IDreadsalesforce_commerce_cloud.coupons.get_coupon_codesGet the coupon codes for the given coupon. If the user role does not have the View_Coupon_Codes permission, then the co…readsalesforce_commerce_cloud.coupons.redeem_couponRedeem a coupon code for an existing coupon for the specified sitewritesalesforce_commerce_cloud.coupons.update_couponUpdate a coupon with the specified informationwritesalesforce_commerce_cloud.coupons.update_coupon_codesAdd or delete (modify) multiple codes to and from the supplied couponwrite
Preferences9
salesforce_commerce_cloud.preferences.get_global_custom_preference_listRetrieves the Global Custom Preferencesreadsalesforce_commerce_cloud.preferences.get_global_preference_groupRead the custom preferences in a global preference group for a given instance typereadsalesforce_commerce_cloud.preferences.get_site_custom_preference_listRetrieves the Custom Preferences for a specified siteIdreadsalesforce_commerce_cloud.preferences.get_site_preferenceRead a single preference value across sites in a preference group for a given instance typereadsalesforce_commerce_cloud.preferences.get_site_preference_groupRead the custom preferences in a site preference group for a given instance typereadsalesforce_commerce_cloud.preferences.search_site_preferencesSearch preferences across sites in a preference group for a given instance typereadsalesforce_commerce_cloud.preferences.update_global_preference_groupUpdate the custom preferences in a global preference group for a given instance typewritesalesforce_commerce_cloud.preferences.update_site_preferenceUpdate a single preference value across sites in a preference group for a given instance typewritesalesforce_commerce_cloud.preferences.update_site_preference_groupUpdate the custom preferences in a site preference group for a given instance typewrite
Gift certificates5
salesforce_commerce_cloud.gift_certificates.create_gift_certificateCreate a gift certificate using the information providedwritesalesforce_commerce_cloud.gift_certificates.delete_gift_certificateDelete gift certificate information for a specified merchant IDdestructivesalesforce_commerce_cloud.gift_certificates.get_gift_certificategetGiftCertificatereadsalesforce_commerce_cloud.gift_certificates.gift_certificates_searchSearch for gift certificatesreadsalesforce_commerce_cloud.gift_certificates.update_gift_certificateUpdate gift certificate information for a specified merchant IDwrite
Source code groups5
salesforce_commerce_cloud.source_code_groups.create_source_code_groupCreate a source code group using the information providedwritesalesforce_commerce_cloud.source_code_groups.delete_source_code_groupDelete the specified source code group IDdestructivesalesforce_commerce_cloud.source_code_groups.get_source_code_groupRetrieve source code group informationreadsalesforce_commerce_cloud.source_code_groups.source_code_groups_searchSearch for source code groupsreadsalesforce_commerce_cloud.source_code_groups.update_source_code_groupUpdate the source code group with the specified informationwrite
Cors3
salesforce_commerce_cloud.cors.delete_cors_preferencesDelete all CORS preferences for the given sitedestructivesalesforce_commerce_cloud.cors.get_cors_preferencesReturn all CORS preferences for the given sitereadsalesforce_commerce_cloud.cors.update_cors_preferencesCreate or replace all CORS preferences for the given sitewrite
Assignments1
salesforce_commerce_cloud.assignments.assignments_searchSearch for promotion campaign assignmentsread
Questions
The Salesforce B2C Commerce API (SCAPI) MCP server, answered.
Is there a Salesforce B2C Commerce API (SCAPI) MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 248 Salesforce B2C Commerce API (SCAPI) actions across CDN zones, products, catalogs and customers, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Salesforce B2C Commerce API (SCAPI).
What do I need to connect Salesforce B2C Commerce API (SCAPI)?
Account Manager API client ID and Account Manager API client password (the client secret set when the API client was created). Plus your api scopes, your organization id and your short code. The free call account { op: "connections.requirements", service: "salesforce_commerce_cloud" } lists exactly what to paste.
Can an AI agent delete or change things in Salesforce B2C Commerce API (SCAPI)?
Only if its key allows it, and only with an explicit confirmation. 43 Salesforce B2C Commerce API (SCAPI) actions are destructive, including deletes the product by ID, delete a rule and delete all rules and conditions for a catalog and category. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my Salesforce B2C Commerce API (SCAPI) API limit?
actionlake paces every call to the limits in the Salesforce B2C Commerce API (SCAPI) service file: 600 calls a minute per connection. Repeated reads are answered from cache (94 Salesforce B2C Commerce API (SCAPI) actions can be), which never reaches Salesforce B2C Commerce API (SCAPI).
What does a Salesforce B2C Commerce API (SCAPI) action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (248 Salesforce B2C Commerce API (SCAPI) actions page). Cache hits, searches, dry runs and calls Salesforce B2C Commerce API (SCAPI) refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which Salesforce B2C Commerce API (SCAPI) API does it cover?
The Salesforce Commerce API (SCAPI) Admin APIs, v1 (OpenAPI 3.0, commerce-sdk assignments 1.0.39, auth-admin 1.19.1, campaigns 1.1.1, catalogs 1.0.47, cors 1.1.1, coupons 1.0.44, customers 1.1.4, gift-certificates 1.0.43, orders 1.6.4, preferences 1.2.3, products 1.2.0, promotions 1.2.0, source-code-groups 1.0.42, zones 1.3.0) at your own api.commercecloud.salesforce.com address, set when you connect. It is built from Salesforce B2C Commerce API (SCAPI)'s documentation as read on 23 October 2026. 248 actions in 14 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Salesforce B2C Commerce API (SCAPI) data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Salesforce B2C Commerce API (SCAPI) credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent Salesforce B2C Commerce API (SCAPI) today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.