MCP tools reference

Bark MCP tools

14 tools for Bark on the Cotlet MCP server. Your agent picks them from tools/list.

MCP server
https://cotlet.dev/mcp/v1
Connects with
Your Bark professional (seller) account
Integration page
Bark
Bark Endpoints
Endpoint Access Description
bark_list_leads read Leads matched to your services and locations, newest first, with credit cost and signals.
bark_get_lead read Full request: the customer's answers, location, credit cost, responses so far and signals (urgent, verified phone, high hiring intent).
bark_list_responses read Leads you contacted (My Responses), with status, contact details and your notes.
bark_get_response read One contacted lead: customer's name, phone and email, request, estimate sent and status.
bark_get_credit_balance read Credits available now, from My Credits.
bark_list_invoices read Invoices from Invoices and billing details, with date, amount and a download link.
bark_get_lead_preferences read Your services, locations and coverage areas from Settings > Lead Preferences.
bark_add_note write Private note on a contacted lead, to track the job. The customer does not see it.
bark_update_response_status write Move a contacted lead to pending, hired or archived.
bark_contact_lead write Spend credits to contact a lead and get their name, phone and email. Bark notifies the customer.
bark_skip_lead write Mark a lead Not interested. No credits are charged; Bark tells the customer politely.
bark_send_estimate write Send a quote on a contacted lead. Bark notifies the customer.
bark_send_message write Email or text a contacted customer from My Responses, as free text or one of your saved templates.
bark_request_review write Invite a customer who hired you to review you on Bark. The lead must be marked hired.

List leads

read

MCP tool bark_list_leads

Returns the leads Bark matched to your services and locations, newest first by default. Each item has the credit cost and signals such as urgent, so you can decide before you spend anything. Reading a list spends no credits and notifies no customer.

Parameters

Parameters: list_leads
NameTypeDescription
view enum all, first_to_respond, urgent or free. Default: all.
service string Only this service, e.g. Web Design.
max_credits integer Skip leads that cost more credits.
since date Only leads submitted on or after this date.
sort enum relevance, date or credits. Default: date.
limit integer 1 to 50. Default: 20.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_list_leads",
    "arguments": {
      "view": "first_to_respond",
      "service": "Web Design",
      "max_credits": 15,
      "since": "2026-10-12",
      "sort": "credits",
      "limit": 20
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "leads": [
      {
        "lead_id": "61842207",
        "service": "Wedding Photography",
        "location": "Leeds, LS1",
        "credits": 12,
        "signals": [
          "urgent"
        ],
        "submitted": "2026-10-11"
      },
      {
        "lead_id": "61841930",
        "service": "Web Design",
        "location": "Manchester, M1",
        "credits": 9,
        "signals": [
          "first_to_respond"
        ],
        "submitted": "2026-10-11"
      }
    ]
  },
  "isError": false
}

Get lead

read

MCP tool bark_get_lead

Returns the full request before you buy it: the customer's answers, location, credit cost, how many professionals have responded and the signals Bark shows. The customer's contact details stay hidden until contact_lead. Read only: no credits are spent.

Parameters

Parameters: get_lead
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_get_lead",
    "arguments": {
      "lead_id": "lead_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "service": "Wedding Photography",
    "location": "Leeds, LS1",
    "credits": 12,
    "responses_so_far": 2,
    "signals": [
      "urgent",
      "verified_phone"
    ],
    "answers": {
      "Event date": "2027-06-12",
      "Hours of coverage": "Full day"
    }
  },
  "isError": false
}

MCP tool bark_list_responses

Returns the leads you contacted, as in My Responses, with their status, the customer's contact details and your notes. Use status to see only the open ones. Read only.

Parameters

Parameters: list_responses
NameTypeDescription
status enum pending, hired or all. Default: pending.
since date Only leads contacted on or after this date.
limit integer 1 to 100. Default: 50.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_list_responses",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "responses": [
      {
        "lead_id": "61842207",
        "service": "Wedding Photography",
        "customer": "Jordan",
        "status": "pending",
        "contacted": "2026-10-11",
        "note": "Sent estimate"
      },
      {
        "lead_id": "61790415",
        "service": "Kitchen Fitting",
        "customer": "Sam",
        "status": "pending",
        "contacted": "2026-10-08",
        "note": ""
      }
    ]
  },
  "isError": false
}

MCP tool bark_get_response

Returns one contacted lead with the customer's name, phone and email, the original request, the estimate you sent and the current status. Read only.

Parameters

Parameters: get_response
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_get_response",
    "arguments": {
      "lead_id": "lead_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "status": "pending",
    "service": "Wedding Photography",
    "customer": {
      "name": "Jordan",
      "email": "client@example.com",
      "phone": "+44 7700 900123"
    },
    "estimate": {
      "amount": "450",
      "message": "Full day coverage, edited gallery included."
    }
  },
  "isError": false
}

MCP tool bark_get_credit_balance

Returns the credits available on your account now, as My Credits shows them. Read only.

Parameters

No parameters.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_get_credit_balance",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "credits": 88
  },
  "isError": false
}

MCP tool bark_list_invoices

Returns your Bark invoices with date, amount and a download link. Use since to limit the range. Read only.

Parameters

Parameters: list_invoices
NameTypeDescription
since date Only invoices on or after this date.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_list_invoices",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "invoices": [
      {
        "invoice_id": "INV-2026-0914",
        "date": "2026-09-14",
        "amount": "50.00",
        "download_url": "https://www.bark.com/invoices/example-0914.pdf"
      },
      {
        "invoice_id": "INV-2026-1002",
        "date": "2026-10-02",
        "amount": "100.00",
        "download_url": "https://www.bark.com/invoices/example-1002.pdf"
      }
    ]
  },
  "isError": false
}

MCP tool bark_get_lead_preferences

Returns the services, locations and coverage areas that decide which leads Bark sends you, from Lead Preferences in Settings. Read only.

Parameters

No parameters.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_get_lead_preferences",
    "arguments": {}
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "services": [
      "Web Design",
      "Wedding Photography"
    ],
    "locations": [
      {
        "place": "Leeds",
        "radius_miles": 25
      }
    ]
  },
  "isError": false
}

Add note

write

MCP tool bark_add_note

Adds a private note to a contacted lead. The customer is not told, so this tool does not ask for your OK, and you can change the note with another call.

Parameters

Parameters: add_note
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.
note required string Note text.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_add_note",
    "arguments": {
      "lead_id": "lead_8c41d2",
      "note": "note"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "note": "Wants a second shooter",
    "saved": true
  },
  "isError": false
}

Update response status

write Confirm

MCP tool bark_update_response_status

Moves a contacted lead to pending, hired or archived and returns the new status. A lead must be hired before request_review works. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: update_response_status
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.
status required enum pending, hired or archived.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_update_response_status",
    "arguments": {
      "lead_id": "lead_8c41d2",
      "status": "pending"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61790415",
    "status": "hired"
  },
  "isError": false
}

Contact lead

write Confirm

MCP tool bark_contact_lead

Spends credits to contact the lead and returns the customer's name, phone and email. Bark notifies the customer. Set max_credits and the call fails instead of buying a lead that costs more. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: contact_lead
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.
max_credits integer Fail instead of buying if the lead costs more.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_contact_lead",
    "arguments": {
      "lead_id": "61842207",
      "max_credits": 15
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "status": "pending",
    "credits_spent": 12,
    "credits_left": 88,
    "service": "Wedding Photography",
    "location": "Leeds, LS1",
    "customer": {
      "name": "Jordan",
      "email": "client@example.com",
      "phone": "+44 7700 900123"
    }
  },
  "isError": false
}

Skip lead

write Confirm

MCP tool bark_skip_lead

Marks the lead Not interested. No credits are charged, and Bark tells the customer politely. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: skip_lead
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_skip_lead",
    "arguments": {
      "lead_id": "lead_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61841930",
    "status": "skipped",
    "credits_spent": 0
  },
  "isError": false
}

Send estimate

write Confirm

MCP tool bark_send_estimate

Sends a quote on a lead you already contacted. Bark notifies the customer. The amount is in your Bark currency. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: send_estimate
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.
amount required string Quoted price in your Bark currency, e.g. 450.
message string What the price includes.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_send_estimate",
    "arguments": {
      "lead_id": "lead_8c41d2",
      "amount": "amount"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "amount": "450",
    "message": "Full day coverage, edited gallery included.",
    "sent": true
  },
  "isError": false
}

Send message

write Confirm

MCP tool bark_send_message

Emails or texts a customer you already contacted, as free text in body or from one of your saved Email or SMS templates. Required: body or template. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: send_message
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.
channel required enum email or sms.
body string Message text. Required unless template is set.
template string Name of a saved Email or SMS template.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_send_message",
    "arguments": {
      "lead_id": "61842207",
      "channel": "sms",
      "template": "Follow-up"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61842207",
    "channel": "sms",
    "sent": true
  },
  "isError": false
}

Request review

write Confirm

MCP tool bark_request_review

Invites the customer to review you on Bark. The lead must be marked hired first, otherwise the call fails. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: request_review
NameTypeDescription
lead_id required string Lead ID from list_leads or list_responses.

tools/call

JSON-RPC

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bark_request_review",
    "arguments": {
      "lead_id": "lead_8c41d2"
    }
  }
}

Example response

{
  "content": [
    {
      "type": "text",
      "text": "{ ... same JSON as structuredContent ... }"
    }
  ],
  "structuredContent": {
    "lead_id": "61790415",
    "review_requested": true
  },
  "isError": false
}