Salesloft · Capability

Salesloft Sales Engagement

Sales engagement workflow combining account and people management with cadence enrollment. Used by sales reps to discover accounts, add prospects, and enroll them in structured outreach sequences to drive pipeline.

Run with Naftiko SalesEngagementCadencesAccountsPeopleSalesloft

What You Can Do

GET
List accounts — List all accounts
/v1/accounts
POST
Create account — Create a new account
/v1/accounts
GET
Fetch account — Get account by ID
/v1/accounts/{id}
PUT
Update account — Update an account
/v1/accounts/{id}
DELETE
Delete account — Delete an account
/v1/accounts/{id}
GET
List people — List all people
/v1/people
POST
Create person — Create a new person
/v1/people
GET
Fetch person — Get person by ID
/v1/people/{id}
PUT
Update person — Update a person
/v1/people/{id}
DELETE
Delete person — Delete a person
/v1/people/{id}
GET
List cadences — List all cadences
/v1/cadences
GET
Fetch cadence — Get cadence by ID
/v1/cadences/{id}
GET
List cadence memberships — List cadence enrollments
/v1/cadence-memberships
POST
Enroll person — Enroll a person in a cadence
/v1/cadence-memberships

MCP Tools

list-accounts

List Salesloft accounts to find target companies

read-only idempotent
create-account

Create a new company account in Salesloft

fetch-account

Get details for a specific account

read-only idempotent
update-account

Update account details in Salesloft

idempotent
list-people

List contacts and prospects in Salesloft

read-only idempotent
create-person

Add a new contact/prospect to Salesloft

fetch-person

Get details for a specific person

read-only idempotent
update-person

Update person/contact details

idempotent
list-cadences

List available sales cadences/outreach sequences

read-only idempotent
fetch-cadence

Get details for a specific cadence

read-only idempotent
enroll-person-in-cadence

Enroll a person in a sales cadence for structured outreach

list-cadence-memberships

List current cadence enrollments

read-only idempotent

APIs Used

salesloft

Capability Spec

Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "Salesloft Sales Engagement"
  description: >-
    Sales engagement workflow combining account and people management with cadence
    enrollment. Used by sales reps to discover accounts, add prospects, and enroll
    them in structured outreach sequences to drive pipeline.
  tags:
    - Sales
    - Engagement
    - Cadences
    - Accounts
    - People
    - Salesloft
  created: "2026-05-02"
  modified: "2026-05-02"

binds:
  - namespace: env
    keys:
      SALESLOFT_API_KEY: SALESLOFT_API_KEY

capability:
  consumes:
    - import: salesloft
      location: ./shared/salesloft.yaml

  exposes:
    - type: rest
      port: 8080
      namespace: sales-engagement-api
      description: "Unified REST API for Salesloft sales engagement workflows."
      resources:
        - path: /v1/accounts
          name: accounts
          description: "Manage company accounts"
          operations:
            - method: GET
              name: list-accounts
              description: "List all accounts"
              call: "salesloft.list-accounts"
              with:
                page: "rest.page"
                per_page: "rest.per_page"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: create-account
              description: "Create a new account"
              call: "salesloft.create-account"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/accounts/{id}
          name: account-by-id
          description: "Single account operations"
          operations:
            - method: GET
              name: fetch-account
              description: "Get account by ID"
              call: "salesloft.fetch-account"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: PUT
              name: update-account
              description: "Update an account"
              call: "salesloft.update-account"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: DELETE
              name: delete-account
              description: "Delete an account"
              call: "salesloft.delete-account"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/people
          name: people
          description: "Manage contacts and prospects"
          operations:
            - method: GET
              name: list-people
              description: "List all people"
              call: "salesloft.list-people"
              with:
                page: "rest.page"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: create-person
              description: "Create a new person"
              call: "salesloft.create-person"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/people/{id}
          name: person-by-id
          description: "Single person operations"
          operations:
            - method: GET
              name: fetch-person
              description: "Get person by ID"
              call: "salesloft.fetch-person"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: PUT
              name: update-person
              description: "Update a person"
              call: "salesloft.update-person"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: DELETE
              name: delete-person
              description: "Delete a person"
              call: "salesloft.delete-person"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/cadences
          name: cadences
          description: "Sales cadences and outreach sequences"
          operations:
            - method: GET
              name: list-cadences
              description: "List all cadences"
              call: "salesloft.list-cadences"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/cadences/{id}
          name: cadence-by-id
          description: "Single cadence operations"
          operations:
            - method: GET
              name: fetch-cadence
              description: "Get cadence by ID"
              call: "salesloft.fetch-cadence"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/cadence-memberships
          name: cadence-memberships
          description: "Enroll people in cadences"
          operations:
            - method: GET
              name: list-cadence-memberships
              description: "List cadence enrollments"
              call: "salesloft.list-cadence-memberships"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: enroll-person
              description: "Enroll a person in a cadence"
              call: "salesloft.create-cadence-membership"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9080
      namespace: sales-engagement-mcp
      transport: http
      description: "MCP server for AI-assisted Salesloft sales engagement workflows."
      tools:
        - name: list-accounts
          description: "List Salesloft accounts to find target companies"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.list-accounts"
          with:
            page: "tools.page"
          outputParameters:
            - type: object
              mapping: "$."

        - name: create-account
          description: "Create a new company account in Salesloft"
          hints:
            readOnly: false
          call: "salesloft.create-account"
          outputParameters:
            - type: object
              mapping: "$."

        - name: fetch-account
          description: "Get details for a specific account"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.fetch-account"
          with:
            id: "tools.id"
          outputParameters:
            - type: object
              mapping: "$."

        - name: update-account
          description: "Update account details in Salesloft"
          hints:
            readOnly: false
            idempotent: true
          call: "salesloft.update-account"
          with:
            id: "tools.id"
          outputParameters:
            - type: object
              mapping: "$."

        - name: list-people
          description: "List contacts and prospects in Salesloft"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.list-people"
          outputParameters:
            - type: object
              mapping: "$."

        - name: create-person
          description: "Add a new contact/prospect to Salesloft"
          hints:
            readOnly: false
          call: "salesloft.create-person"
          outputParameters:
            - type: object
              mapping: "$."

        - name: fetch-person
          description: "Get details for a specific person"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.fetch-person"
          with:
            id: "tools.id"
          outputParameters:
            - type: object
              mapping: "$."

        - name: update-person
          description: "Update person/contact details"
          hints:
            readOnly: false
            idempotent: true
          call: "salesloft.update-person"
          with:
            id: "tools.id"
          outputParameters:
            - type: object
              mapping: "$."

        - name: list-cadences
          description: "List available sales cadences/outreach sequences"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.list-cadences"
          outputParameters:
            - type: object
              mapping: "$."

        - name: fetch-cadence
          description: "Get details for a specific cadence"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.fetch-cadence"
          with:
            id: "tools.id"
          outputParameters:
            - type: object
              mapping: "$."

        - name: enroll-person-in-cadence
          description: "Enroll a person in a sales cadence for structured outreach"
          hints:
            readOnly: false
          call: "salesloft.create-cadence-membership"
          outputParameters:
            - type: object
              mapping: "$."

        - name: list-cadence-memberships
          description: "List current cadence enrollments"
          hints:
            readOnly: true
            idempotent: true
          call: "salesloft.list-cadence-memberships"
          outputParameters:
            - type: object
              mapping: "$."