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 15 tools for managing domains and their associated registration data. These tools are organized into three categories: domains, domain contacts, and domain registrations.
Domain Contacts on this page are the registrant, admin, and tech contacts attached to a domain registration (WHOIS data). They are distinct from CRM Contacts (people in your address book) — see Contact Tools for those.
Domains
Tools for managing domain records used for DNS and email.
createDomain
Create a new domain record for DNS and email management.
Permission: domains:write
Parameters:
Name Type Required Default Description domainstring Yes - The domain name (e.g., example.com) statusstring No ”pending” Domain status (e.g., active, pending, inactive) zoneIdstring | null No - Optional DNS zone ID for the domain createdBystring (UUID) | null No - Optional user ID who created the domain
Verification, registrar, and Resend-related fields are managed by the platform — do not pass them in here, as they are overwritten or ignored.
Returns: The created domain object.
getDomain
Get a specific domain by ID.
Permission: domains:read
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain to retrieve
Returns: Domain object, or null if not found.
listDomains
List all domains for the organization with pagination.
Permission: domains:read
Parameters:
Name Type Required Default Description limitnumber No 10 Maximum number of items to return (max: 100) offsetnumber No 0 Number of items to skip for pagination sortOrderstring No ”desc” Sort order by creation date (“asc” or “desc”)
Returns:
{
"domains" : [ ... ],
"count" : 12 ,
"limit" : 10 ,
"offset" : 0
}
updateDomain
Update an existing domain record.
Permission: domains:write
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain to update domainstring No The domain name (e.g., example.com) statusstring No Domain status (e.g., active, pending, inactive) zoneIdstring | null No DNS zone ID for the domain createdBystring (UUID) | null No User ID who created the domain
Returns: The updated domain object.
deleteDomain
Delete a domain (soft delete).
Permission: domains:delete
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain to delete
Returns: The deleted domain object.
Domain Contacts
Tools for managing the registrant, admin, and tech contacts attached to a domain registration. These are WHOIS-style contacts at the domain registrar — not CRM contacts.
createDomainContact
Create a new domain contact for domain registration and administrative purposes.
Permission: domain-contacts:write
Parameters:
Name Type Required Description externalIdstring Yes External ID from the domain registrar accountIdstring Yes Account ID at the domain registrar labelstring | null No Optional label for the contact (e.g., “Primary Contact”) firstNamestring Yes First name of the contact lastNamestring Yes Last name of the contact organizationNamestring | null No Optional organization/company name jobTitlestring | null No Optional job title of the contact address1string | null No Primary address line address2string | null No Secondary address line citystring | null No City stateProvincestring | null No State or province postalCodestring | null No Postal/ZIP code countrystring | null No Country code (e.g., US, CA) emailstring Yes Contact email address phonestring Yes Contact phone number createdBystring (UUID) | null No Optional user ID who created the contact
Returns: The created domain contact object.
getDomainContact
Get a specific domain contact by ID.
Permission: domain-contacts:read
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain contact to retrieve
Returns: Domain contact object, or null if not found.
listDomainContacts
List all domain contacts for the organization with pagination.
Permission: domain-contacts:read
Parameters:
Name Type Required Default Description limitnumber No 10 Maximum number of items to return (max: 100) offsetnumber No 0 Number of items to skip for pagination sortOrderstring No ”desc” Sort order by creation date (“asc” or “desc”)
Returns:
{
"domainContacts" : [ ... ],
"count" : 8 ,
"limit" : 10 ,
"offset" : 0
}
updateDomainContact
Update an existing domain contact record.
Permission: domain-contacts:write
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain contact to update externalIdstring No External ID from the domain registrar accountIdstring No Account ID at the domain registrar labelstring | null No Label for the contact (e.g., “Primary Contact”) firstNamestring No First name of the contact lastNamestring No Last name of the contact organizationNamestring | null No Organization/company name jobTitlestring | null No Job title of the contact address1string | null No Primary address line address2string | null No Secondary address line citystring | null No City stateProvincestring | null No State or province postalCodestring | null No Postal/ZIP code countrystring | null No Country code (e.g., US, CA) emailstring No Contact email address phonestring No Contact phone number createdBystring (UUID) | null No User ID who created the contact
Returns: The updated domain contact object.
deleteDomainContact
Delete a domain contact (soft delete).
Permission: domain-contacts:delete
Parameters:
Name Type Required Description idstring (UUID) Yes The ID of the domain contact to delete
Returns: The deleted domain contact object.
Domain Registrations
Tools for managing domain registration records that track ownership, renewal, and registrar metadata.
createDomainRegistration
Create a new domain registration record to track domain ownership and renewal.
Permission: domain-registrations:write
Parameters:
Name Type Required Description statestring Yes Registration state (e.g., registered, pending, expired) externalDomainIdstring Yes External domain ID from the registrar externalIdstring Yes External registration ID from the registrar autoRenewboolean Yes Whether auto-renewal is enabled whoisPrivacyboolean Yes Whether WHOIS privacy is enabled transferLockboolean Yes Whether domain transfer lock is enabled periodnumber Yes Registration period in years domainIdstring (UUID) | null No Optional reference to the related domain record createdBystring (UUID) | null No Optional user ID who created the registration
Returns: The created domain registration object.
getDomainRegistration
Get a specific domain registration by ID.
Permission: domain-registrations:read
Parameters:
Name Type Required Description registrationIdstring (UUID) Yes The ID of the domain registration to retrieve
Returns: Domain registration object, or null if not found.
listDomainRegistrations
List all domain registrations for the organization with pagination.
Permission: domain-registrations:read
Parameters:
Name Type Required Default Description limitnumber No 10 Maximum number of items to return (max: 100) offsetnumber No 0 Number of items to skip for pagination sortOrderstring No ”desc” Sort order by creation date (“asc” or “desc”)
Returns:
{
"domainRegistrations" : [ ... ],
"count" : 5 ,
"limit" : 10 ,
"offset" : 0
}
updateDomainRegistration
Update an existing domain registration record - all fields are optional except registrationId.
Permission: domain-registrations:write
Parameters:
Name Type Required Description registrationIdstring (UUID) Yes The ID of the domain registration to update statestring No Update the registration state (e.g., registered, pending, expired) externalDomainIdstring No Update the external domain ID from the registrar externalIdstring No Update the external registration ID from the registrar autoRenewboolean No Update whether auto-renewal is enabled whoisPrivacyboolean No Update whether WHOIS privacy is enabled transferLockboolean No Update whether domain transfer lock is enabled periodnumber No Update the registration period in years createdBystring (UUID) | null No Update the user ID who created the registration
Returns: The updated domain registration object.
deleteDomainRegistration
Delete a domain registration (soft delete).
Permission: domain-registrations:delete
Parameters:
Name Type Required Description registrationIdstring (UUID) Yes The ID of the domain registration to delete
Returns: The deleted domain registration object.
Next Steps
Contact Tools Manage CRM contacts, distinct from the WHOIS-style domain contacts above
Authentication Learn how MCP clients authenticate to the server