---
title: "Salesbuildr MCP server for AI agents - actionlake"
description: "Give Claude 74 Salesbuildr actions through one MCP server: contacts, products, companies. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/salesbuildr
updated: 2026-10-23
---

Connectors · MSP & PSA

# Salesbuildr MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Salesbuildr and the rest of your systems. It gives your agent 74 Salesbuildr actions (31 reads, 36 writes and 7 that wait for a confirmation) and holds the Salesbuildr credential itself, so the agent never does. It paces Salesbuildr's limits and records every call.

[Connect Salesbuildr free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

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/mcp`

the first call

```
do {
  action: "salesbuildr.contacts.list",
  intent: "check which Salesbuildr account is connected"
}
# Search contacts · read · 1 upstream call
```

- 74 actions in one signed file
- 31 read look, never change
- 36 write create and update
- 7 wait for a yes destructive, confirmed first

Set up

## Connect Salesbuildr in three steps.

1. 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`
2. 02
   ### Connect Salesbuildr.
   API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `api_key` Salesbuildr API key
   - `host` Where your Salesbuildr lives: your host
   ```
   account { op: "connections.requirements", service: "salesbuildr" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "salesbuildr.contacts.list" }
   # search contacts · read · 1 upstream call
   check { action: "salesbuildr.contacts.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Salesbuildr at a glance

**Sign-in**

API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`api_key`

**Setup fields**

`host`

**Limits we pace to**

500 calls per 10 minutes, per connection

**API covered**

Salesbuildr Public API 1.0.0 (OpenAPI 3.0.0)`portal.salesbuildr.com`

**Built from**

Salesbuildr's documentation, read 23 October 2026[portal.salesbuildr.com](https://portal.salesbuildr.com/public-api)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

29 of 31 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

5, so ask can line Salesbuildr up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Salesbuildr.

74 actions in 15 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **31** read look, never change
- **36** write create and update
- **7** destructive wait for a confirmation

1. ### Contacts
   11
   3 read · 6 write · 2 destructive
   Search contacts · Create a contact · Get a contact · Update a contact
2. ### Products
   11
   3 read · 6 write · 2 destructive
   Search products · Create a product · Get a product · Update a product
3. ### Companies
   8
   3 read · 3 write · 2 destructive
   Search companies · Create a company · Get a company · Update a company
4. ### Opportunities
   8
   3 read · 5 write · 0 destructive
   Search opportunities · Create an opportunity · Get an opportunity · Update an opportunity
5. ### Quotes
   7
   3 read · 4 write · 0 destructive
   Search quotes · Create a draft quote · Get a quote · Update a draft quote's header
6. ### Quote widget templates
   6
   3 read · 2 write · 1 destructive
   Create a quote widget template · List quote widget templates · Validate quote widget template data · Get a quote widget template
7. ### Discount groups
   5
   2 read · 3 write · 0 destructive
   Create a quote discount group · List quote discount groups · Get a quote discount group · Assign a discount group to companies
8. ### Quote templates
   5
   3 read · 2 write · 0 destructive
   Create a quote template · List quote templates · Validate quote template data · Get a quote template

**7 more areas · 13 actions**

- Pricing books **4**
- Categories **2**
- Fields **2**
- Product labels **2**
- Contract items **1**
- Product inventories **1**
- Sync states **1**

Top actions

## The Salesbuildr API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 28 of Salesbuildr's 28 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `salesbuildr.contacts.list` Search contacts | Search contacts. | read | `crm.contact.list` 177 connectors |
| `salesbuildr.companies.list` Search companies | Search companies. | read | `crm.company.list` 162 connectors |
| `salesbuildr.opportunities.list` Search opportunities | Search opportunities. | read | `crm.deal.list` 43 connectors |
| `salesbuildr.products.list` Search products | Search products. | read | `commerce.product.list` 112 connectors |
| `salesbuildr.contacts.create` Create a contact | Create a contact. | write | `crm.contact.create` 161 connectors |
| `salesbuildr.companies.create` Create a company | Create a company. | write | `crm.company.create` 142 connectors |
| `salesbuildr.opportunities.create` Create an opportunity | Create an opportunity. | write | `crm.deal.create` 43 connectors |
| `salesbuildr.contacts.delete` Delete a contact | Delete a contact. | destructive | `crm.contact.delete` 147 connectors |
| `salesbuildr.products.create` Create a product | Create a product. | write | `commerce.product.create` 92 connectors |
| `salesbuildr.quotes.list` Search quotes | Search quotes. | read | `finance.quote.list` 52 connectors |
| `salesbuildr.quotes.create` Create a draft quote | Create a draft quote. | write | `finance.quote.create` 52 connectors |
| `salesbuildr.categories.list` List categories | List categories. | read | this connector |

Try it

## Prompts to paste into Claude.

Each one names the Salesbuildr actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Which Salesbuildr deals are due to close this month, and what are they worth in total?
   calls `salesbuildr.opportunities.list`
2. Write write
   Create a contact in Salesbuildr. Show me exactly what you will send before you save it.
   calls `salesbuildr.contacts.create`
3. Across systems read
   Which Salesbuildr companies have invoices in NetSuite, and how many each?
   calls `salesbuildr.companies.list` `netsuite.views.invoices`

Across your systems

## Salesbuildr, joined to the rest of your business.

One `ask` fetches from Salesbuildr and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

- Which Salesbuildr companies have invoices in NetSuite, and how many each?
  `salesbuildr.companies.list` + `netsuite.views.invoices`, on `crm.company` · [NetSuite](https://actionlake.com/connectors/netsuite)
- Which Salesbuildr companies have tickets in HubSpot CRM, and how many each?
  `salesbuildr.companies.list` + `hubspot_crm.tickets.list`, on `crm.company` · [HubSpot CRM](https://actionlake.com/connectors/hubspot-crm)

Also mapped by other connectors `crm.company` **227** `crm.contact` **192** `commerce.product` **109** `finance.quote` **45** `crm.deal` **43**

ask

```
ask {
  intent: "which Salesbuildr companies have invoices in NetSuite, and how many each",
  steps: [
    { action: "salesbuildr.companies.list", as: "co", input: {}, limit: 100, max_pages: 5 },
    { action: "netsuite.views.invoices", as: "inv", input: {}, limit: 100, max_pages: 5 },
    { join: {
        left: "co",
        right: "inv",
        on: "crm.company",
        group_by: "co.name",
        select: ["co.name", "count(inv.id) as invoices"]
    } }
  ]
}
```

Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for Salesbuildr

## Destructive actions wait for a yes.

7 Salesbuildr actions are destructive. These are all of them:

- Delete a contact `salesbuildr.contacts.delete`
- Delete a company `salesbuildr.companies.delete`
- Delete a product `salesbuildr.products.delete`
- Delete a quote widget template `salesbuildr.quote_widget_templates.delete`
- Delete a contact by external identifier `salesbuildr.contacts.delete_by_external_id`
- Delete a product by external identifier `salesbuildr.products.delete_by_external_id`
- Delete a company by external identifier `salesbuildr.companies.delete_by_external_id`

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.

do salesbuildr.contacts.delete confirm_policy: **human**

Delete a contact?

**intent:** the user asked me to delete a contact

run suspended · waiting for a named person · key _salesbuildr-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "salesbuildr-agent",
  allowed_actions: ["salesbuildr.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "salesbuildr.contacts.delete", approver: "lead@example.com" },
    { match: "salesbuildr.companies.delete", approver: "lead@example.com" },
    { match: "salesbuildr.products.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Salesbuildr only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Salesbuildr costs on actionlake.

Every Salesbuildr action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Salesbuildr 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.

- 1 upstream call per action all 74 Salesbuildr actions
- 74 actions page each page of a long list is one call
- 29 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Salesbuildr action.

74 actions by area: the id your agent calls, what it does, and its effect.

**Contacts 11**

- `salesbuildr.contacts.create` Create a contact write
- `salesbuildr.contacts.delete` Delete a contact destructive
- `salesbuildr.contacts.delete_by_external_id` Delete a contact by external identifier destructive
- `salesbuildr.contacts.get` Get a contact read
- `salesbuildr.contacts.get_by_external_id` Get a contact by external identifier read
- `salesbuildr.contacts.list` Search contacts read
- `salesbuildr.contacts.undelete` Restore a deleted contact write
- `salesbuildr.contacts.undelete_by_external_id` Restore a deleted contact by external identifier write
- `salesbuildr.contacts.update` Update a contact write
- `salesbuildr.contacts.upsert_by_email` Create or update a contact by email address write
- `salesbuildr.contacts.upsert_by_external_id` Create or update a contact by external identifier write

**Products 11**

- `salesbuildr.products.assign_labels` Assign labels to a product write
- `salesbuildr.products.create` Create a product write
- `salesbuildr.products.create_batch` Create products in batch (up to 100) write
- `salesbuildr.products.delete` Delete a product destructive
- `salesbuildr.products.delete_by_external_id` Delete a product by external identifier destructive
- `salesbuildr.products.get` Get a product read
- `salesbuildr.products.get_by_external_id` Get a product by external identifier read
- `salesbuildr.products.list` Search products read
- `salesbuildr.products.unassign_labels` Unassign labels from a product write
- `salesbuildr.products.update` Update a product write
- `salesbuildr.products.upsert_by_external_id` Create or update a product by external identifier write

**Companies 8**

- `salesbuildr.companies.create` Create a company write
- `salesbuildr.companies.delete` Delete a company destructive
- `salesbuildr.companies.delete_by_external_id` Delete a company by external identifier destructive
- `salesbuildr.companies.get` Get a company read
- `salesbuildr.companies.get_by_external_id` Get a company by external identifier read
- `salesbuildr.companies.list` Search companies read
- `salesbuildr.companies.update` Update a company write
- `salesbuildr.companies.upsert_by_external_id` Create or update a company by external identifier write

**Opportunities 8**

- `salesbuildr.opportunities.create` Create an opportunity write
- `salesbuildr.opportunities.get` Get an opportunity read
- `salesbuildr.opportunities.get_by_external_id` Get an opportunity by external identifier read
- `salesbuildr.opportunities.list` Search opportunities read
- `salesbuildr.opportunities.lose` Mark an opportunity lost write
- `salesbuildr.opportunities.update` Update an opportunity write
- `salesbuildr.opportunities.upsert_by_external_id` Create or update an opportunity by external identifier write
- `salesbuildr.opportunities.win` Mark an opportunity won write

**Quotes 7**

- `salesbuildr.quotes.create` Create a draft quote write
- `salesbuildr.quotes.create_approved` Create an approved quote write
- `salesbuildr.quotes.get` Get a quote read
- `salesbuildr.quotes.list` Search quotes read
- `salesbuildr.quotes.list_approved` List approved quotes read
- `salesbuildr.quotes.update_header` Update a draft quote's header write
- `salesbuildr.quotes.update_header_by_external_id` Update a draft quote's header by external identifier write

**Quote widget templates 6**

- `salesbuildr.quote_widget_templates.create` Create a quote widget template write
- `salesbuildr.quote_widget_templates.delete` Delete a quote widget template destructive
- `salesbuildr.quote_widget_templates.get` Get a quote widget template read
- `salesbuildr.quote_widget_templates.list` List quote widget templates read
- `salesbuildr.quote_widget_templates.update` Update a quote widget template write
- `salesbuildr.quote_widget_templates.validate` Validate quote widget template data read

**Discount groups 5**

- `salesbuildr.discount_groups.create` Create a quote discount group write
- `salesbuildr.discount_groups.get` Get a quote discount group read
- `salesbuildr.discount_groups.list` List quote discount groups read
- `salesbuildr.discount_groups.set_companies` Assign a discount group to companies write
- `salesbuildr.discount_groups.update` Update a quote discount group write

**Quote templates 5**

- `salesbuildr.quote_templates.create` Create a quote template write
- `salesbuildr.quote_templates.get` Get a quote template read
- `salesbuildr.quote_templates.list` List quote templates read
- `salesbuildr.quote_templates.update` Update a quote template write
- `salesbuildr.quote_templates.validate` Validate quote template data read

**Pricing books 4**

- `salesbuildr.pricing_books.create` Create a pricing book write
- `salesbuildr.pricing_books.get` Get a pricing book read
- `salesbuildr.pricing_books.list` List pricing books read
- `salesbuildr.pricing_books.update` Update a pricing book write

**Categories 2**

- `salesbuildr.categories.list` List categories read
- `salesbuildr.categories.tree` Get the category tree read

**Fields 2**

- `salesbuildr.fields.get` Get a field and its values read
- `salesbuildr.fields.upsert` Create or update a field's values write

**Product labels 2**

- `salesbuildr.product_labels.get` Get a product label read
- `salesbuildr.product_labels.list` List product labels read

**Contract items 1**

- `salesbuildr.contract_items.list` List contract items (beta) read

**Product inventories 1**

- `salesbuildr.product_inventories.replace` Replace a product's inventories write

**Sync states 1**

- `salesbuildr.sync_states.update` Report the sync status of a quote or product write

Questions

## The Salesbuildr MCP server, answered.

**Is there a Salesbuildr MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 74 Salesbuildr actions across contacts, products, companies and opportunities, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Salesbuildr.

**What do I need to connect Salesbuildr?**

Salesbuildr API key. Plus your host. The free call account { op: "connections.requirements", service: "salesbuildr" } lists exactly what to paste.

**Can an AI agent delete or change things in Salesbuildr?**

Only if its key allows it, and only with an explicit confirmation. 7 Salesbuildr actions are destructive, including delete a contact, delete a company and delete a product. 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 Salesbuildr API limit?**

actionlake paces every call to the limits in the Salesbuildr service file: 500 calls per 10 minutes per connection. Repeated reads are answered from cache (29 Salesbuildr actions can be), which never reaches Salesbuildr.

**What does a Salesbuildr action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (74 Salesbuildr actions page). Cache hits, searches, dry runs and calls Salesbuildr 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 Salesbuildr API does it cover?**

The Salesbuildr Public API 1.0.0 (OpenAPI 3.0.0) at portal.salesbuildr.com by default, or the base URL set when you connect. It is built from Salesbuildr's documentation as read on 23 October 2026. 74 actions in 15 areas, each one in the signed service file (version 1.0.0).

**Can I combine Salesbuildr with my other systems?**

Yes. ask joins Salesbuildr to NetSuite or HubSpot CRM on the same customer and returns the answer rather than every row. Salesbuildr maps crm.company, which 227 other connectors also map.

**Does actionlake keep my Salesbuildr 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 Salesbuildr 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.

## More connectors like Salesbuildr

Shares the most action names with

- [Zomentum 19](https://actionlake.com/connectors/zomentum)
- [Accelo 18](https://actionlake.com/connectors/accelo)
- [ArrowSphere 15](https://actionlake.com/connectors/arrowsphere)
- [Atera 15](https://actionlake.com/connectors/atera)
- [Quoter 12](https://actionlake.com/connectors/quoter)
- [Domotz 10](https://actionlake.com/connectors/domotz)

Joins with, on shared entities

- [Salesforce Sales Cloud 5](https://actionlake.com/connectors/salesforce-sales-cloud)
- [ERPNext (Frappe) 5](https://actionlake.com/connectors/erpnext-frappe)
- [Microsoft Dynamics 365 5](https://actionlake.com/connectors/microsoft-dynamics-365)
- [Microsoft Dynamics 365 Business Central 5](https://actionlake.com/connectors/microsoft-dynamics-365-business-central)
- [Insightly CRM 5](https://actionlake.com/connectors/insightly-crm)
- [Zoho CRM 5](https://actionlake.com/connectors/zoho-crm)

Browse

- [All MSP & PSA connectors](https://actionlake.com/connectors/category/msp-and-psa)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Salesbuildr; the name is the vendor's own. Counts are from the Salesbuildr service file, version 1.0.0.

## Give your agent Salesbuildr today.

[Connect Salesbuildr free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/salesbuildr
More: https://actionlake.com/llms.txt
