Local services & SaaS
Faire
Orders, inventory, reorders and messages for wholesale brands.
12 endpoints
Your AI agent turns booking requests into quotes, books one-off and recurring cleans and invoices finished jobs. Sign in to DusterBook once in your own Cloud Browser. No API, no Zapier.
8 tools Read and write
DusterBook has no MCP server, no ChatGPT or Claude app, no API and no Zapier app, and no calendar or accounting sync (DusterBook help, checked 9 Nov 2026). Cotlet runs 8 DusterBook tools hosted, over MCP for agents and REST for scripts, in your own DusterBook login.
| What you need | DusterBook API | By hand | Cotlet |
|---|---|---|---|
| Booking requests and quotes | No API | Yes, one by one | Yes |
| Schedule cleans | No API | Yes, one by one | Yes |
| Invoices | No API | Yes | Yes, after your OK |
| Ask in ChatGPT or Claude | No | No | Yes |
| Zapier app | None | None | Not needed |
Checked 8 Nov 2026. Sources: DusterBook help · DusterBook pricing · DusterBook about
Once, in a browser we host for you.
One address in its settings.
It drafts the work, you OK what customers get.
We never keep your DusterBook password, and no quote or invoice reaches a customer until you approve it. Who can see your session
Sign in to DusterBook in a Cloud Browser. Create a Cotlet account, open DusterBook in its Cloud Browser, sign in with your DusterBook login and press Enable for agents.
Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as the MCP server or connector URL in your agent.
Let the agent in. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts send an API key made in the console.
DusterBook shares the address https://cotlet.dev/mcp/v1 with every other app you enable, so one connector covers them all. Turned DusterBook on after connecting? Refresh the connector and the 8 tools appear.
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect
Claude Code:
claude mcp add --transport http cotlet \
https://cotlet.dev/mcp/v1 \
--header "Authorization: Bearer $COTLET_API_KEY" Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth // ~/.cursor/mcp.json
{
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
}
}
} # ~/.codex/config.toml
[mcp_servers.cotlet]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY" MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: dusterbook_read Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: dusterbook_write Booking page requests and customers with their properties. New customers reach no one, so they run at once.
Returns new requests with name, address, service and preferred time.
MCP calldusterbook_read → list_booking_requests
REST endpointGET https://cotlet.dev/api/v1/dusterbook/booking-requests
| Name | Type | Description |
|---|---|---|
| status string | string | New or Handled. Default: New. |
{
"requests": [
{
"request_id": "BR-331",
"name": "Priya Shah",
"service": "Deep clean, 3 bed",
"preferred": "2026-11-14 morning"
}
]
} Returns customers with ID, properties, open quotes and unpaid invoices.
MCP calldusterbook_read → list_customers
REST endpointGET https://cotlet.dev/api/v1/dusterbook/customers
| Name | Type | Description |
|---|---|---|
| query string | string | Name or address. |
| page integer | integer | Page number. Default: 1. |
{
"customers": [
{
"customer_id": "DB-1182",
"name": "Maria Johnson",
"properties": [
"2210 S Lamar Blvd, Austin, TX"
],
"open_quotes": 0,
"unpaid": "0.00"
}
],
"page": 1
} Creates the customer and their first property. Reaches no one, so it runs at once.
MCP calldusterbook_write → add_customer
REST endpointPOST https://cotlet.dev/api/v1/dusterbook/customers
| Name | Type | Description |
|---|---|---|
| name string required | string | Customer name. |
| address string required | string | Property address. |
| email string | string | Email. |
| phone string | string | Phone. |
{
"name": "Jane Doe",
"address": "address"
} {
"customer_id": "DB-1240",
"name": "Tom Alvarez",
"property": "415 W 6th St, Austin, TX"
} Drafts run at once; sending the accept link waits for your OK.
Builds the quote for a customer's property. Sending the accept link is a separate step, so drafting runs at once.
MCP calldusterbook_write → create_quote
REST endpointPOST https://cotlet.dev/api/v1/dusterbook/customers/{customer_id}/quotes
| Name | Type | Description |
|---|---|---|
| customer_id string required | string | Customer ID from list_customers. |
| items array required | array | Description, quantity, price. |
| valid_days integer | integer | Days the quote is valid. |
{
"customer_id": "customer_8c41d2",
"items": "items"
} {
"quote_id": "QT-2207",
"customer": "Tom Alvarez",
"total": "285.00",
"status": "Draft"
} Emails the customer the public link where they accept the quote. By default you confirm each call; you can switch that off for this tool.
MCP calldusterbook_write → send_quote
REST endpointPOST https://cotlet.dev/api/v1/dusterbook/quotes/{quote_id}
| Name | Type | Description |
|---|---|---|
| quote_id string required | string | Quote ID. |
{
"quote_id": "quote_8c41d2"
} {
"quote_id": "QT-2207",
"status": "Sent",
"sent_to": "tom@example.com"
} Jobs reach only your team, so scheduling runs at once. Invoices go to the customer, so they wait for your OK.
Returns jobs with customer, property, cleaner, time and status.
MCP calldusterbook_read → list_jobs
REST endpointGET https://cotlet.dev/api/v1/dusterbook/jobs
| Name | Type | Description |
|---|---|---|
| date_from string required | string | ISO date. |
| date_to string | string | ISO date. Default: date_from. |
| cleaner string | string | Cleaner name. |
{
"date_from": "date from"
} {
"jobs": [
{
"job_id": "JB-5510",
"customer": "Maria Johnson",
"cleaner": "Rosa",
"start": "2026-11-10T09:00",
"status": "Scheduled"
}
]
} Creates the job from an accepted quote or a property. DusterBook sends no customer reminders today, so it reaches only your team and runs at once.
MCP calldusterbook_write → schedule_job
REST endpointPOST https://cotlet.dev/api/v1/dusterbook/customers/{customer_id}/job/schedule
| Name | Type | Description |
|---|---|---|
| customer_id string required | string | Customer ID from list_customers. |
| start string required | string | ISO date and time. |
| cleaner string | string | Cleaner name. |
| quote_id string | string | Accepted quote to schedule. |
| repeat string | string | Weekly, Every 2 weeks, Monthly (Team plan). |
{
"customer_id": "DB-1240",
"start": "2026-11-13T10:00",
"cleaner": "Rosa",
"repeat": "Every 2 weeks"
} {
"job_id": "JB-5541",
"customer": "Tom Alvarez",
"cleaner": "Rosa",
"start": "2026-11-13T10:00",
"repeat": "Every 2 weeks",
"status": "Scheduled"
} Marks the job complete and issues the invoice the customer opens without an account. By default you confirm each call; you can switch that off for this tool.
MCP calldusterbook_write → create_invoice
REST endpointPOST https://cotlet.dev/api/v1/dusterbook/jobs/{job_id}/invoices
| Name | Type | Description |
|---|---|---|
| job_id string required | string | Job ID. |
{
"job_id": "job_8c41d2"
} {
"invoice_id": "IN-0918",
"job": "JB-5510",
"total": "160.00",
"status": "Sent"
} Your signed-in DusterBook profile, AES-256-GCM encrypted, in Finland. No password.
The 8 DusterBook tools, never the session cookie.
What your login sees: customers, quotes, jobs, invoices, booking requests.
Billing, team members, branding, exports, deletes.
You sign in again yourself, in the same Cloud Browser.
Disable for agents, reset the browser, or change your DusterBook password.
Cotlet never types your password: you sign in yourself, and the agent only uses the session. Our site scores A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results).
When DusterBook moves a button or renames a page, we fix the tool and your agent calls it the same way. status.cotlet.dev checks the site, console and API every 3 minutes.
| Action | Undo |
|---|---|
| Add a customer, draft a quote or schedule a job | Yes, edit or delete it in DusterBook |
| Send a quote or invoice | No, the customer has the link; void it in DusterBook |
2 of 8 tools ask first: send_quote, create_invoice. New customers, draft quotes and scheduled jobs reach no customer, so they run at once. You can turn the wait off per tool once you trust a routine.
{
"name": "schedule_job",
"arguments": {
"customer_id": "DB-1240",
"start": "2026-11-13T10:00",
"cleaner": "Rosa",
"repeat": "Every 2 weeks"
}
} curl -X POST https://cotlet.dev/api/v1/dusterbook/customers/DB-1240/job/schedule \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"start":"2026-11-13T10:00","cleaner":"Rosa","repeat":"Every 2 weeks"}' {
"job_id": "JB-5541",
"customer": "Tom Alvarez",
"cleaner": "Rosa",
"start": "2026-11-13T10:00",
"repeat": "Every 2 weeks",
"status": "Scheduled"
} A cron job or n8n flow can call the same tools over REST at /api/v1/dusterbook with the same key and price, in JSON. Failed calls are free. Each tool row above shows its REST path.
About $25 a monthfor a cleaning company with 5 cleaners, 4,340 credits. Your DusterBook plan stays as it is.
| Job | Calls | Credits |
|---|---|---|
| Booking request quoted | 3 × 25 | 750 |
| Quote sent | 1 × 25 | 250 |
| Clean scheduled | 1 × 30 | 300 |
| Invoices for the day | 6 × 22 | 1,320 |
| Tomorrow planned | 1 × 22 | 220 |
| Cloud Browser, 30 days | 1,500 | |
| Total | 4,340 |
DusterBook publishes no job counts, so the month is our example. Dollars at the $29 pack rate.
| Credits | Price, one time | Calls at 10 credits | Per 1,000 credits |
|---|---|---|---|
| 5,000 | $29 | 500 | $5.80 |
| 15,000 | $79 | 1,500 | $5.27 |
| 32,000 | $149 | 3,200 | $4.66 |
| 60,000 | $249 | 6,000 | $4.15 |
Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.
| Option | What it does | Where it stops |
|---|---|---|
| CSV export | Customers and reports out to a spreadsheet (Team plan). | One way and by hand. |
| Public booking page | Customers send requests themselves. | Requests still need quotes and scheduling. |
| By hand | Every screen of DusterBook, one job at a time. | Your evenings. |
DusterBook has no API or Zapier app, so there is nothing to connect a script to. To quote, schedule and invoice from ChatGPT or Claude this week, Cotlet works in the DusterBook account you already have.
Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), in business since 2019, led by its founders Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Questions about the DusterBook tools go to contact@cotlet.dev.
Sign up free at https://cotlet.dev, open DusterBook under Integrations in the console and sign in to DusterBook in its Cloud Browser. The trial starts with your first app and asks for no card.
Sign up at cotlet.dev, log in to DusterBook once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your DusterBook account through Cotlet, in their phone apps too.
With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in DusterBook: turn booking requests into quotes; send the quote; book recurring cleans. You ask in plain words, and anything that reaches other people waits for your OK first.
No. DusterBook has no ChatGPT or Claude connector of its own and DusterBook has no official MCP server (checked 9 Nov 2026). Cotlet is an independent one that works in ChatGPT, Claude, Cursor and any MCP client, on your signed-in account.
Yes, with Cotlet. ChatGPT turns booking requests into customers and draft quotes, and sends the accept link after your OK.
Yes, with Cotlet. ChatGPT puts one-off or recurring jobs on the calendar with the cleaner you name.
Yes, with Cotlet. ChatGPT invoices finished jobs after your OK; customers open the invoice without an account.
Only in how it is called. Both carry the same 8 tools, inputs, answers, API key and price. Agents use MCP; scripts and HTTP steps use REST.
No. Cotlet is independent and not affiliated with DusterBook.
Free 7-day trial with 2,000 credits, no card needed.
May we use Google Analytics to see which pages help people? It sets cookies only if you accept. No ads, and we never sell data. Cookie policy