Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.shingleai.com/llms.txt

Use this file to discover all available pages before exploring further.

The ShingleAI MCP server provides 10 tools for managing customers and their transactions. These tools are organized into two categories: customers and customer transactions.

Customers

Core tools for creating, reading, updating, and deleting customer records.

createCustomer

Create a new customer record with business association and contact information. Permission: customers:write Parameters:
NameTypeRequiredDescription
businessIdstring (UUID)YesThe ID of the business this customer belongs to
typestringYesCustomer type (e.g., individual, business, enterprise)
contactIdstring (UUID) | nullNoOptional reference to an existing contact record
namestring | nullNoCustomer display name
emailstring | nullNoPrimary email address
phonestring | nullNoPrimary phone number
notesstring | nullNoInternal notes and comments about the customer
statusstring | nullNoCustomer status (e.g., active, inactive, pending)
customerSincestring | nullNoDate when the customer relationship began (ISO 8601)
Returns: The created customer object.

getCustomer

Get a specific customer by ID. Permission: customers:read Parameters:
NameTypeRequiredDescription
idstring (UUID)YesThe ID of the customer to retrieve
Returns: Customer object, or null if not found.

listCustomers

List all customers for the organization with pagination. Permission: customers:read Parameters:
NameTypeRequiredDefaultDescription
limitnumberNo10Number of customers to return (1-100)
offsetnumberNo0Number of customers to skip for pagination
sortOrderstringNo”desc”Sort order by creation date (“asc” or “desc”)
Returns:
{
  "customers": [...],
  "count": 10,
  "limit": 10,
  "offset": 0
}

updateCustomer

Update an existing customer record. Permission: customers:write Parameters:
NameTypeRequiredDescription
idstring (UUID)YesThe ID of the customer to update
businessIdstring (UUID)NoThe ID of the business this customer belongs to
contactIdstring (UUID) | nullNoReference to an existing contact record
typestringNoCustomer type (e.g., individual, business, enterprise)
namestring | nullNoCustomer display name
emailstring | nullNoPrimary email address
phonestring | nullNoPrimary phone number
notesstring | nullNoInternal notes and comments about the customer
statusstring | nullNoCustomer status (e.g., active, inactive, pending)
customerSincestring | nullNoDate when the customer relationship began (ISO 8601)
Returns: The updated customer object.

deleteCustomer

Delete a customer (soft delete). Permission: customers:delete Parameters:
NameTypeRequiredDescription
idstring (UUID)YesThe ID of the customer to delete
Returns: The deleted customer object.

Customer Transactions

Tools for recording and managing financial transactions associated with customers.

createCustomerTransaction

Create a new customer transaction to record a financial activity. Permission: customers.transactions:write Parameters:
NameTypeRequiredDescription
customerIdstring (UUID)YesUUID of the customer this transaction belongs to
businessIdstring (UUID)YesUUID of the business associated with the transaction
amountstringYesTransaction amount as a string (to handle decimal precision)
currencystringYesCurrency code (e.g., USD, EUR)
statusstringYesTransaction status (e.g., pending, completed, failed)
typestringYesTransaction type (e.g., purchase, refund, subscription)
descriptionstring | nullNoOptional description of the transaction
transactionDatestring | nullNoOptional date when the transaction occurred (ISO 8601 format)
Returns: The created customer transaction object.

getCustomerTransaction

Get a specific customer transaction by its ID. Permission: customers.transactions:read Parameters:
NameTypeRequiredDescription
transactionIdstring (UUID)YesUUID of the customer transaction to retrieve
Returns: Customer transaction object, or null if not found.

listCustomerTransactions

List all transactions for a specific customer with pagination support. Permission: customers.transactions:read Parameters:
NameTypeRequiredDefaultDescription
customerIdstring (UUID)Yes-UUID of the customer whose transactions to retrieve
limitnumberNo10Maximum number of items to return (1-100)
offsetnumberNo0Number of items to skip for pagination
sortOrderstringNo”desc”Sort order by creation date (“asc” or “desc”)
Returns:
{
  "transactions": [...],
  "count": 25,
  "limit": 10,
  "offset": 0
}

updateCustomerTransaction

Update an existing customer transaction - all fields are optional except transactionId. Permission: customers.transactions:write Parameters:
NameTypeRequiredDescription
transactionIdstring (UUID)YesUUID of the customer transaction to update
businessIdstring (UUID)NoUpdate the business associated with the transaction
amountstringNoUpdate the transaction amount as a string (to handle decimal precision)
currencystringNoUpdate the currency code (e.g., USD, EUR)
statusstringNoUpdate the transaction status (e.g., pending, completed, failed)
typestringNoUpdate the transaction type (e.g., purchase, refund, subscription)
descriptionstring | nullNoUpdate the description of the transaction
transactionDatestring | nullNoUpdate the date when the transaction occurred (ISO 8601 format)
Returns: The updated customer transaction object.

deleteCustomerTransaction

Delete a customer transaction (soft delete). Permission: customers.transactions:delete Parameters:
NameTypeRequiredDescription
transactionIdstring (UUID)YesUUID of the customer transaction to delete
Returns: The deleted customer transaction object.

Next Steps

Contact Tools

Manage contacts that may be linked to customers

Authentication

Learn how MCP clients authenticate to the server