Bruknow connector for Claude
Last updated: October 1, 2026
The connector lets Claude work with your Bruknow workspace. Ask it in plain language to review a flow and fix what is broken, to find out why a bot is not answering a customer, or to open a ticket with our support team when it cannot solve something itself.
1. What you need
- A Bruknow account. The connector is included in every plan.
- A Claude account. Using Claude is billed by Anthropic under your own Claude plan; Bruknow does not charge for the connector.
- On Claude Team and Enterprise plans, an Owner of the Claude organization adds the connector first; each member then connects with their own Bruknow account.
2. How to connect
- In Claude, open Settings and then Connectors.
- Choose Bruknow in the directory. If it is not listed for you, choose Add custom connector and paste this address:
https://bruknow.com/mcp - Claude sends you to Bruknow to sign in.
- Check the workspace shown on the approval screen. If you belong to more than one workspace, the connector works with the one shown there.
- Choose what Claude may do: view your workspace, and, if you want it to edit flows and open tickets, make changes. Then approve.
Claude can never do more than you can: every request is checked against your role in the workspace at the moment it is made.
3. What Claude can do
Understand your flows
- List your flows and show how one is built: its steps, what leads from one to the next, and the full settings of any step.
- Run Bruknow's built-in review and report broken jumps, dead ends, unreachable steps, undefined variables and missing media.
- Show where real customers drop out of a flow, and when each version was published.
Build and fix flows
- Create a flow, add, change and remove steps and the connections between them, and change flow-wide settings and variables.
- Test a flow by holding a conversation with it.
- Publish a flow when you ask for it.
Tune your AI assistants
- Read an assistant's instructions, rules and conversation playbook, and change them.
- Publish an assistant when you ask for it, on every flow that uses it, and go back to an earlier version if a change did not work.
Work with your CRM
- Find a contact and read its details, notes, deals and recent activity.
- Summarize a pipeline stage by stage, and list the deals that are open, won, lost or stuck.
- Add a comment to a deal and move a deal to another stage when you ask for it. Moving a deal runs the automations of that stage, as it does on the board.
- List your web forms and read, filter and summarize what people answered.
Solve support questions
- Explain why a bot is not answering: subscription, quotas, a disconnected or paused channel, a channel with no published flow, or a customer paused by an operator.
- Look at one customer conversation: where it stopped, the path it took, and what is holding it.
- Read and summarize a conversation, search recent conversations for a word or phrase, and list the customers who wrote and are still waiting for a reply.
- List messages that could not be delivered and what the provider's error means.
- Show your plan, your usage against its limits, your channels and your WhatsApp templates with their approval status.
Start from scratch
- Set up a first bot with you: choose a starting template, create the assistant and its flow from what you tell Claude about your business, test it, publish it when you say so, and point you to where a channel is connected. In Claude, pick the “Set up my business” prompt of the bruknow connector, or just ask.
Write WhatsApp templates
- Read a template in full, including why WhatsApp rejected it.
- Write a new template as a draft for you to review: header, body, footer and buttons, with an example for each variable.
- Submit a draft to WhatsApp for approval when you ask for it. Only the workspace owner can do this, a submission cannot be undone, and Claude never changes or replaces a template that is already approved, pending or rejected.
Send WhatsApp campaigns
- Show your campaigns and their results: delivered, read, replied and failed, with what each failure means.
- Prepare a campaign with you: an approved template sent to the contacts that carry the tags you choose. Claude first shows how many people it reaches, who is left out, the schedule and what it uses from your plan, and sends nothing.
- Create the campaign only after you say yes to that preview. It never starts sooner than 15 minutes after it is created, so you can still cancel it; Claude can also pause, resume or cancel a campaign when you ask.
Work with your calendar
- Show what is on your calendar and when you are free, including your bookings and the busy times of your connected Google or Outlook calendar.
- List your meeting types with their booking links and the times still open for each.
- Schedule a meeting and cancel one when you ask for it. Guests are invited by your connected calendar, and each team member works only with their own calendar.
Answer questions about your numbers
- Report how your support team is doing: chats answered, resolved and abandoned, how long customers wait, ratings and sentiment, compared by agent, queue, department or channel.
- Summarize the results of a satisfaction survey: the score, the trend, each question and what customers wrote.
- Show the thumbs up and down and the end-of-chat ratings customers left in your web chat, and which answers they disliked.
Reach our team
- Show your support tickets and what our team answered, open a new ticket and reply to one.
4. Things to ask
Help me set up my business. I run a bakery that takes orders on WhatsApp.
Review my Sales flow and tell me what is broken. Then fix it, but do not publish.
A customer wrote to us on WhatsApp yesterday from +57 300 111 2233 and the bot never answered. Why?
Add a step to my Orders flow that asks for the customer's city before giving the price, test it, and show me the conversation.
Which of my WhatsApp templates were rejected, and why?
Write a WhatsApp template that tells a customer their order is ready, with a button to confirm pickup. Show it to me before submitting.
Where do customers abandon my Booking flow?
Who has been waiting for a reply for more than an hour, and what did each of them ask?
Which deals have been in Proposal sent the longest, and what was the last thing we told each one?
How did my support team do this week compared with what customers said in the satisfaction survey?
What did people ask for in my Contact form this month? Group the answers and give me a table.
How many people would my Promo template reach if I send it to everyone tagged VIP? Do not send anything yet.
What do I have on Thursday? Find me a free half hour in the afternoon and schedule a call with [email protected].
5. How your flows stay safe
- Edits go to the draft. Your customers keep getting the published version of a flow or an assistant until it is published. Claude publishes only when you ask.
- All or nothing. A set of changes is checked first; if one of them is not valid, none is saved.
- No overwriting your work. If someone changed the flow in the builder after Claude read it, Claude's change is refused and it reads the flow again.
- Tests do not reach your customers. By default a test stops before any step that sends a message, calls another system, writes to your CRM or books a calendar event, and tells you where it stopped. Those steps run only if you agree.
- AI tests are free for you. A test that lets your AI steps answer uses a daily allowance that Bruknow pays for. It is never charged to your plan. When the allowance for the day is used up, Claude tells you; contact our team if you need more.
- Credentials stay in Bruknow. API keys, tokens and passwords stored in your flows and channels are never sent to Claude.
- Everything is recorded. Each change made through the connector appears in your activity log.
6. Disconnecting
In Bruknow, open the menu under your name and choose Connected apps, then Disconnect. Claude loses access immediately. You can also remove the connector in Claude.
7. If something does not work
- Claude asks you to sign in again. The connection expired after 90 days without use, was disconnected, or you no longer belong to that workspace. Connect again.
- Your role does not include this. Ask the owner of the workspace to change your access on the Team page.
- This connection was not given permission to make changes. Remove the connector in Claude and add it again, leaving the option to make changes ticked on the approval screen.
- The flow changed since it was read. Someone saved it in the builder. Ask Claude to read the flow again and repeat the change.
- Today's AI tests are used up. Tests without AI still work, and the allowance returns the next day. Write to our team if you need more today.
- The plan does not allow it. The limits of your plan apply here as in Bruknow: the number of bots, the number of steps in a flow and the kinds of step.
8. Tool reference
These are the tools Claude sees, as the connector describes them to it. Tools marked as changing something always ask for your confirmation in Claude.
| Tool | What it does | |
|---|---|---|
bruknow_ping |
reads | Checks that the Bruknow connector is reachable and returns the connected workspace and the server time. Use it only to confirm the connection works. |
compare_contacts |
reads | Compares two contacts that may be the same person. Returns which one to keep (the one with more history), the fields where they DISAGREE (conflicts — the user must choose each value before merging), the fields only the other one has (copied over automatically), and what moves with the merge (chats, deals, tasks, notes). Call this before merge_contacts. |
diagnose_channel |
reads | Checks one connected messaging account in depth: whether it is connected, when it last received and last sent a message (a long gap in received messages on a busy account usually means the provider's webhook stopped reaching Bruknow), how many sends failed in the last 24 hours, and the state of each channel on it. Use it after list_channels, with the account's id, when one account misbehaves. |
diagnose_conversation |
reads | Explains the state of one customer conversation: the node it is parked at, the path it took through the flow, the variables captured, the last messages, any message that failed, pending no-reply timers, and everything pausing or blocking the bot for it, each with its fix. Use it when asked why the bot did not answer a specific customer or why it answered the way it did. Get the id from find_conversations. |
explain_bot_silence |
reads | Runs the full checklist of what can stop a Bruknow bot from answering and returns each thing found with its fix: subscription not active, a monthly quota used up, a channel account disconnected or switched off, the bot paused on a channel or flow, a channel with no flow or an unpublished flow. With `contact` and `channel` it also checks that one customer: paused by an operator, opted out, and their latest conversation. Use it first whenever the complaint is that the bot is silent. |
find_conversations |
reads | Lists recent real customer conversations in the workspace, newest activity first, optionally only one channel or one contact (a phone number or part of one, a Telegram chat id, or text from the conversation title). Use it to get the conversation id that diagnose_conversation needs. Test conversations are not included. |
get_account_overview |
reads | Returns the connected workspace's Bruknow plan, subscription status, renewal date, included support tier, and how many bots, agents, contacts, WhatsApp numbers and team seats are in use against the plan's limits. Use it for questions about the plan, billing status, or whether a limit is blocking something. |
get_agent_leaderboard |
reads | Ranks team members by one metric (won_value, won_count, win_rate, pipeline_value, activities, chats, csat, first_response) for a period against the team median. Members with too few closed deals or chats are flagged low_sample rather than hidden. |
get_agent_sales |
reads | Per team member for a period: deals won and lost with values per currency, win rate, open pipeline and weighted value, average days to close, leads assigned and converted, activities logged by type, tasks completed and overdue. An 'unassigned' row keeps totals whole. Use it for 'which agent sold the most', 'how is Laura doing'. The default 'best' is won value; say so. |
get_agent_summary |
reads | Sales and service side by side per team member for a period: won value, win rate, pipeline, plus chats handled, first-response time, CSAT and sentiment from the live chat when it is used. Members with no activity appear with zeros. Use it for 'give me a summary of the agents for last month'. |
get_assistant |
reads | Returns one AI assistant's settings: its instructions, standing rules, conversation playbook, model and temperature, whether its draft differs from what customers are served, and which flows use it. Use it before changing an assistant or to explain why an AI step answers the way it does. Pass version published to read what customers are actually being served. |
get_bot_design_guide |
reads | Returns Bruknow's guide to choosing how to build a bot: what belongs in the assistant's instructions, standing rules and playbook and what must be a flow node; an AI intent edge versus a playbook branch; playbook menus and forms versus option and form nodes; jumping from a playbook step to a node (calendar, CRM, data, payment…) and resuming; data tools; when a second AI node or flow is justified; worked designs. Call it without arguments for the table of contents, then with a section number. Read it before designing a bot or deciding where a change belongs. |
get_calendar |
reads | Returns what is on the calendar of the person using Claude for the coming days: events created in Bruknow, meetings imported from their connected Google or Outlook calendar, bookings guests made through a booking page, and the other times their connected calendar marks as busy. Each item has its start and end in the person's timezone, the meeting link, and the guest or attendees. Use it to answer what is coming up or when they are free. Each team member sees only their own calendar. |
get_campaign |
reads | Returns one campaign in full: its status and why it is paused, the template and pacing, how its audience was built, delivery, read, reply and failure figures with rates, the reasons messages failed with what each provider error means, and its batches with when the next one is due. It reports figures, not the list of recipients. Get the id from list_campaigns. |
get_campaign_options |
reads | Returns what a WhatsApp campaign can be built from in this workspace: the approved templates with the variables each needs, the contact tags that can be used as its audience, the tokens that personalize a variable per recipient, the WhatsApp messages left on the plan this month, and the rules campaigns created from here follow. Call it before preview_campaign. |
get_chat_feedback |
reads | Returns the feedback customers left in the web chat widget over the last days: thumbs up and down on the bot's messages with the reasons given for a thumbs down, the latest messages that got a thumbs down, the end-of-chat star ratings with their average and distribution, and the latest written comments. Without `flow_id` it covers every flow and adds a per-flow comparison. Use it to find which answers customers dislike; each entry carries a conversation id for get_conversation_messages. |
get_contact |
reads | Returns one CRM contact in full: details, notes, tags, custom fields, the deals it is part of, open tasks and the latest activity on its deals. Use it to answer questions about a customer or lead. |
get_contact_brief |
reads | Everything needed before calling or writing to one contact, in one call: who they are, lead heat and why, their open deals with score, open follow-ups with evidence, what they promised, the last conversation summaries with dates, and which channels they can be reached on. Use it for 'prepare me for the call with X' and 'what's going on with X'. |
get_conversation_messages |
reads | Returns the messages of one customer conversation in order: who wrote each one (the contact, or the bot or an agent), when, and the text. Returns the latest messages by default; pass `before` to read further back. Use it to summarize a conversation or to see exactly what was said. Get the id from find_conversations, search_messages or list_unanswered_chats. |
get_conversion_funnel |
reads | The funnel for a period: conversations (by channel, same count as the usage page), new contacts, deals created, deals won, with the rates between steps. Use it for 'how many chats turned into sales', 'which channel converts best'. |
get_deal |
reads | Returns one deal in full: description, value, stage, contact, the AI summary of its conversation, its comments and latest activity, and the stages of its pipeline. Use it before commenting on a deal or moving it. |
get_deal_score_explanation |
reads | Explains a deal's AI score: the weighted breakdown (engagement, buying intent, responsiveness, decision readiness), the scorer's own reasoning from the last run, how the score moved, and the AI action items. Use it for 'why is this deal 72', 'why did it drop'. |
get_delivery_errors |
reads | Returns the messages the workspace tried to send that a provider refused or could not deliver in the last hours, grouped by reason, with the provider's error code and what it means in plain language where known (for example: more than 24 hours since the customer wrote, template paused, number not on WhatsApp). Use it when messages or templates are not arriving. |
get_flow_authoring_guide |
reads | Returns Bruknow's guide to how flows run: the routing engine, AI intent matching, match types, how each node type behaves, variables, media, timing and common mistakes. Call it without arguments for the table of contents, then with a section number. Read the relevant section before explaining why a flow behaves as it does or proposing changes. |
get_flow_funnel |
reads | Returns how real conversations moved through a flow over the last days: how many started, how many reached each node, where they stopped, and the biggest drop-off. Use it to find where customers abandon a flow. Counts include conversations run from the builder's Test panel, but not tests run with test_flow. |
get_flow_nodes |
reads | Returns the complete settings of up to 20 nodes of a flow's draft, and the edges leaving each one with their full match patterns. Field names are the ones get_node_schema documents; a setting that is not listed is at its default. Values that look like credentials are shown as [hidden]. Use it after get_flow_outline, for the nodes you need to inspect closely. |
get_flow_outline |
reads | Returns the structure of one flow's draft: every node (id, name, type, a short preview of its text) and the edges between them with what triggers each. Use it first to understand a flow; call get_flow_nodes afterwards for the full settings of specific nodes. Nodes are listed in conversation order starting from the entry node. Large flows are paged with offset and limit. |
get_form_responses |
reads | Returns the responses to one web form, newest first: when each arrived, who answered, every answer under its question, the names of attached files and the campaign tags the visit carried. It also returns the form's questions and, for the questions with a fixed set of answers, the values `filters` accepts. Narrow with `search` (text in any answer), `filters` (question key to answer), `status` or `days`; page with `offset`. Spam is left out unless you ask for it with `status`. Use it to summarize what people asked for, count answers, or list the responses as a table. Get the id from list_web_forms. |
get_heat_movement |
reads | Contacts whose lead heat band rose or fell in the period, with the reason that moved them, from the heat audit stored on each contact. Use it for 'who turned hot this week', 'who cooled off'. |
get_lost_deal_analysis |
reads | Lost deals in a period grouped by reason, by the stage they were lost in, by channel and by agent, with the most recent lost deals and their one-line AI summary so you can name the objections. Use it for 'why are we losing', 'what objections this month'. |
get_meeting_availability |
reads | Without `meeting_type_id`, lists the meeting types the person offers for booking (name, length, where it takes place) with the public link guests book through. With one, returns the start times still open for that meeting type over the next days, in the person's timezone. Open slots already take into account their working hours, existing bookings, their connected calendar's busy times, buffers and notice rules. Use it to propose times to a customer or to share the right booking link. |
get_my_day |
reads | One call for 'what's my day' / 'what should I do today': today's calendar, follow-ups due today and overdue, chats waiting for a reply, pending suggestions from Bruknow, and the top priority contacts with reasons. |
get_node_options |
reads | Returns what the flow builder's dropdowns offer for one node type, from this workspace: the real ids of departments and queues (chat_agent), Google and Microsoft accounts and calendars (calendar), spreadsheet files (spreadsheet), pipelines, stages and CRM fields (client), payment accounts (payment), subflows with their inputs and exits (subflow_call), WhatsApp, Telegram, email and SMS templates and app users (action, third_party_check, and the WhatsApp template override of message, ai_response, option and form), plus the allowed values of each fixed choice. `node_settings` covers what every node has (time triggers, contact fields, lead heat); `global_config` the flow-wide settings (AI media files, pause bot, typing). Call it before setting any of these with apply_flow_changes, and never invent an id. |
get_node_schema |
reads | Returns the reference for one flow node type — every setting it accepts and what it does — or for a cross-cutting topic such as edge_data, variable_captures or global_config. Call it without arguments to list the available topics. Use it to interpret what get_flow_nodes returned for a node. |
get_pipeline_health |
reads | Per stage of a pipeline: open deals and value, median days in stage, deals over the stage's SLA, and how many deals entered each stage in the period. Use it for 'where are deals stuck', 'which stage leaks'. |
get_playbook_guide |
reads | Returns Bruknow's reference for an AI assistant's conversation playbook: the exact JSON of every step kind update_assistant accepts in playbook_steps (AI steps and completion criteria, fixed texts, branches and their conditions, option menus, forms, go-tos, jumps to a flow node, endings), with an example of each and the common mistakes. Call it without arguments for the table of contents, then with a section number. Read it before writing or changing playbook_steps. |
get_priority_contacts |
reads | Ranks the contacts that deserve attention, with the reasons, from signals Bruknow stores: follow-ups due or overdue, promises the contact made whose date arrived, lead heat, deal score and close dates, chats left unanswered, and warm leads going quiet. Use it for 'who should I contact today', 'who is most likely to buy', 'who went cold'. Quote the reasons; never invent an order of your own. |
get_product_demand |
reads | Product interest recorded from chats: counts per product and status (new, in pipeline, won, lost, dormant) in a period, and for one product the contacts who asked and never bought — an audience for a follow-up. Use it for 'which product do people ask for most', 'who asked about X and didn't buy'. |
get_revenue_forecast |
reads | How much will close in a period: won so far, committed (open deals whose expected close date falls in the period), weighted by deal score, the top deals by weighted value, and deals whose close date already slipped. Per currency, never summed across currencies. Use it for 'how much will I close this month', 'what's in the pipeline'. |
get_setup_guide |
reads | Returns the steps for setting a business up on Bruknow from scratch — choose a starting template, create the assistant and its flow, test, publish, connect a channel — together with where this workspace stands (flows, bot slots left on the plan, channels connected) and the starting templates available. Call it first whenever someone asks to get started, set up their business or create their first bot, and follow its steps in order. |
get_support_performance |
reads | Returns how the human support team handled live-agent chats over a period: how many chats, how many were answered, resolved or abandoned, how long customers waited for the first response and for each reply (median and 90th percentile, in seconds), customer satisfaction ratings, sentiment, the most common topics, and what is waiting right now. Pass `group_by` to compare agents, queues, departments or channels. It covers chats handed to a human agent, not the bot's own conversations; for those use get_flow_funnel and get_chat_feedback. Only the workspace owner, a member with analytics access or a supervisor may read it. |
get_survey_results |
reads | Returns the results of one satisfaction survey: the headline score, how many answered, the split between positive, neutral and negative, the score distribution, the trend over time, the breakdown by channel, language, pipeline and assigned agent, how many invitations were opened and completed, and each question's results with the latest written answers. Written answers are returned without the respondent's name. `headline.metric` says how to read `headline.value`: csat is the percentage of positive answers, nps runs from -100 to 100, ces is the average effort score. Get the id from list_surveys. |
get_ticket |
reads | Returns one of the signed-in user's support tickets with its conversation: the messages exchanged with Bruknow support, oldest first. Use it to read what support answered. |
get_usage |
reads | Returns this billing period's usage against the plan's monthly quotas (conversations, AI tokens, WhatsApp messages, emails, SMS, voice calls), which quotas are exhausted, and AI token use per day and per source over the last days. Use it when a bot stopped answering, when asked how much of the plan is used, or what is consuming AI tokens. |
get_week_summary |
reads | A digest of a period: conversations by channel, new contacts, deals created / won / lost with values per currency, follow-ups completed and overdue, chats left unanswered, and the support team's response time and CSAT when the live chat is in use. Use it for 'how did this week go', 'summary of last month'. Values are never summed across currencies. |
get_whatsapp_template |
reads | Returns one WhatsApp message template in full: its header, body, footer, buttons, the variables with their sample values, its approval status and, if WhatsApp rejected it, the reason. Use it to see exactly what a template says, or to read why one was rejected before drafting a corrected one. Get the id from list_whatsapp_templates. |
list_assistant_versions |
reads | Lists the saved versions of an AI assistant, newest first: when each was saved, by whom, whether it was a published version, and how its instructions begin. Use it to find the version to go back to with restore_assistant_version. |
list_assistants |
reads | Lists the workspace's AI assistants — the personas that AI nodes use to answer. Use it when the user names an assistant or bot (its instructions, rules or playbook) to find its id for get_assistant / update_assistant, and to find the id to pass as `assistant` when creating or updating an ai_response node with apply_flow_changes. |
list_campaigns |
reads | Lists the workspace's messaging campaigns on one channel, newest first, with their status and how many recipients were reached, delivered, read, failed and replied. Use it to see what was sent, what is scheduled, or which campaign is paused and why. |
list_channels |
reads | Lists every messaging account connected to the workspace — WhatsApp, Telegram, Instagram and Messenger, TikTok and voice — with whether it is connected, switched off or has a connection error, whether its bot is paused, and which flow answers on it. Use it first when a bot is not answering on a channel. |
list_deals |
reads | Lists deals, newest first, optionally only one pipeline or stage, only open, won or lost ones, or those whose name or contact matches a text. Returns each deal's id, value, stage, contact and who it is assigned to. Use it to answer questions such as which leads are stuck in a stage or which deals closed. For who to contact or follow up, use get_priority_contacts instead: it also weighs due tasks, promises, unanswered chats and lead heat. |
list_flow_versions |
reads | Lists the published versions kept for a flow, newest first: version number, when and by whom it was published, and its size. Use it to see when a flow last changed in production or which version could be restored. |
list_flows |
reads | Lists the conversation flows and reusable subflows in the connected Bruknow workspace, newest first, with whether each is published. Use it to find a flow's id before calling any other flow tool. |
list_libraries |
reads | The libraries (knowledge bases) the AI assistants search when they answer, with the number of documents and which assistants use each. Use it to pick the `library_id` for add_to_library when the workspace has more than one. |
list_my_tickets |
reads | Lists the support tickets the signed-in user has opened with Bruknow, newest activity first, with status and who is expected to reply next. Use it to check on an existing request before opening a new one. |
list_pipelines |
reads | Lists the workspace's CRM pipelines with their stages in order, and for each stage how many deals are in it and their total value. Use it for a pipeline summary, and to get the stage ids that move_deal_stage needs. A team member who is not allowed to see every lead gets counts of their own deals only. |
list_surveys |
reads | Lists the workspace's satisfaction surveys (CSAT, NPS, customer effort, custom) with the number of responses, the headline score and the response rate of each. Use it to find a survey before reading its results with get_survey_results. `headline.metric` says how to read `headline.value`: csat is the percentage of positive answers, nps runs from -100 to 100, ces is the average effort score. |
list_tasks |
reads | Lists follow-up tasks with their kind (call, message, email, meeting, send, wait, decision), due date, contact and, for the ones Bruknow found in chats, the quote that justifies them. 'Which client told me to call them tomorrow' is due=tomorrow, kind=call. 'What did the contact promise' is kind=wait or decision. |
list_unanswered_chats |
reads | Lists the open customer conversations whose last message came from the contact and has had no reply from the bot or an agent for a while, longest wait first. Use it to find customers left waiting. A chat can be waiting because the bot is paused for that contact or the flow has nothing to say; diagnose_conversation explains which. |
list_web_forms |
reads | Lists the workspace's web forms — the lead and contact forms embedded on its website — with how many responses each has, how many are new, when the last one arrived, and the form's public link. Use it to find a form before reading its responses with get_form_responses. |
list_whatsapp_templates |
reads | Lists the workspace's WhatsApp message templates with their approval status and, for rejected ones, the reason given. Use it when a template is not sending, to check what is approved, or to find why Meta rejected one. |
preview_campaign |
reads | Works out what a WhatsApp campaign would do without sending or creating anything: how many people the chosen tags reach, how many are left out and why (opted out, suppressed, invalid number, messaged recently), the batches with their times, the messages it needs against what the plan has left, what WhatsApp charges for, and anything that would stop it. Show the person this result and get their yes before calling create_campaign. The audience is contacts by tag and the message is an approved template; get both from get_campaign_options. |
review_flow |
reads | Runs Bruknow's built-in checks on a flow's draft and returns the problems found, most severe first: broken jumps, dead ends, unreachable nodes, undefined variables, missing media, overlapping intents and similar. Use it when asked whether a flow is healthy or why it misbehaves, before reading nodes one by one. |
search_contacts |
reads | Finds contacts in the workspace's CRM by name, email, phone or company, or lists the most recently active ones. Returns each contact's id, details, CRM status, tags and who it is assigned to. A team member who is not allowed to see every lead only gets the contacts assigned to them. Use it to find a contact before reading it with get_contact. |
search_messages |
reads | Searches the text of recent customer conversations for a word or phrase and returns the matching messages with their conversation. Use it to find the conversations where customers mentioned something — a product, a complaint, an order number — over the last days. Then read one with get_conversation_messages. |
add_deal_comment |
changes | Adds a comment to a deal, in the signed-in user's name, where the team sees it on the deal's page. Use it to leave a note the user dictated or asked for; do not use it to record your own analysis unasked. |
apply_flow_changes |
changes | Applies a batch of changes to a flow's DRAFT: create, update or delete nodes and edges, change flow-wide settings, set or delete flow variables. The published flow that customers talk to is NOT changed until publish_flow is called. All operations are checked first and either all are saved or none are. Read the flow with get_flow_outline and get_flow_nodes first, read get_node_schema for each node type being written and edge_data before creating edges, and pass the draft_revision you read as base_revision. Prefer changing the assistant (update_assistant: instructions, standing rules, playbook) over adding nodes; add nodes only for what a playbook cannot do, such as calendar booking, CRM writes, data lookups, notifications or payments (get_bot_design_guide says which mechanism fits what). Use it only when the user asked for a change to the flow. |
cancel_calendar_event |
changes | Cancels an upcoming event on the calendar of the person using Claude. An event created in Bruknow is deleted and removed from their connected Google or Outlook calendar, which tells its guests it was cancelled; this cannot be undone. A meeting that was imported from the connected calendar is only hidden in Bruknow and stays untouched where it was created. Bookings made by guests are cancelled from Bruknow, not here. Get the id from get_calendar, and call this only when the person asked for that event to be cancelled. |
control_campaign |
changes | Pauses, resumes or cancels a campaign. Pause holds the people not yet messaged; resume starts sending to them again from now, keeping the campaign's pace; cancel stops it for good and cannot be undone. None of them recalls messages already sent. Call it when the person asks for that campaign to be stopped or continued. Resume only when they ask for sending to continue: a campaign that paused itself did so for a reason get_campaign shows. |
create_bot_from_template |
changes | Creates an AI assistant and a draft flow for a business from one of the starting templates in get_setup_guide. Pass the business's name and, in `business_info`, what the person told you about it — what it sells with prices, opening hours, delivery or service area, policies; for a restaurant, the menu with prices. The assistant will answer customers from that text, so write only what the person said. The flow is a draft and is not connected to any channel: customers cannot reach it until the person asks for publish_flow and connects a channel in Bruknow. It uses one bot slot of the plan. Call it once per business, after the person has agreed on the template. Before shaping the bot further, read get_bot_design_guide. |
create_calendar_event |
changes | Creates an event on the calendar of the person using Claude and pushes it to their connected Google or Outlook calendar. Everyone listed in `attendees` then receives an invitation by email from that calendar, so call this only when the person asked for the meeting to be scheduled and confirmed the time and the guests. With Google Meet or Teams as the place, the connected calendar creates the meeting link. Give `start` as a date and time; without an offset it is read in the person's Bruknow timezone, which the result returns. The result lists anything already on the calendar at that time. Check get_calendar first when the person asks for a free time. |
create_campaign |
changes | Creates a WhatsApp campaign that WILL send an approved template to every contact carrying the chosen tags. Call it only after preview_campaign, when the person has seen that preview and said yes to that audience and schedule. Pass the same arguments as the preview plus a name and `expected_recipients`, the number of recipients the preview reported: if the audience is a different size now, nothing is created. The first batch goes out no sooner than 15 minutes after creation, which is the time to cancel it with control_campaign. Each delivered message uses the plan's WhatsApp messages, and WhatsApp bills marketing templates per delivered message. |
create_flow |
changes | Creates a new, empty flow in the connected workspace and returns its id. The flow is a draft: nothing answers customers with it until nodes are added with apply_flow_changes, it is published with publish_flow, and a channel is pointed at it in Bruknow. Counts against the plan's bot limit. A new bot is usually better started with create_bot_from_template, which also creates the assistant that should run the conversation. |
create_ticket |
changes | Opens a support ticket with Bruknow's staff on behalf of the signed-in user, and attaches the account's diagnostics for staff. Use it only when the problem could not be solved with the other tools and the user has agreed to contact support; check list_my_tickets first so an open ticket about the same problem is answered with reply_to_ticket instead. Staff are notified immediately. Write the description in the user's own language, with what they tried and what happened. |
draft_whatsapp_template |
changes | Saves a WhatsApp message template as a draft in Bruknow. Nothing is sent to WhatsApp: show the person the draft, and call submit_whatsapp_template only when they ask for it to be submitted for approval. Write variables as {customer_name} and give an example value for each in `samples`. A template can have a text header, a body, a footer and one kind of button: up to three quick replies, one link, or one phone number. Choose `marketing` for promotions and offers and `utility` for messages about an order, booking or account the customer already has; WhatsApp rejects a promotion submitted as utility. Pass `template_id` to rewrite a draft that was never submitted — pass the whole template again, not only what changes. Templates that are approved, pending or rejected cannot be changed here: draft a new one under another name. Only the workspace owner can use this. Authentication, carousel, list and media-header templates are made in the Bruknow dashboard. |
merge_contacts |
changes | Merges a duplicate contact into the one to keep: chats, deals, tasks, notes, calls, events and tags move over, empty fields are filled from the duplicate, and the duplicate disappears. Call compare_contacts first. Every conflicting field must be in `resolutions` with the value the user chose, or the merge is refused. Undo (undo_action / undo_last) splits them apart again. |
move_deal_stage |
changes | Moves a deal to another stage of its own pipeline, exactly as dragging its card on the board does: a won or lost stage closes the deal, and any automation attached to the stage runs — which can send messages to the customer. Use it only when the user asked for the move. Get the stage id from get_deal or list_pipelines. |
publish_assistant |
changes | Publishes an AI assistant's current draft: from that moment customers are answered with it on EVERY flow that uses the assistant. Use it only when the user has explicitly asked to publish; after editing a draft, tell them which flows it will reach and ask first. |
publish_flow |
changes | Publishes a flow's current draft: from that moment every connected channel answers real customers with it. Runs Bruknow's publish checks first and refuses if the flow has blocking problems. Use it only when the user has explicitly asked to publish or go live; after editing a draft, ask before publishing. |
reply_to_ticket |
changes | Adds a message from the signed-in user to one of their own support tickets. Bruknow staff are notified, and a closed ticket is reopened. Use it to answer a question staff asked or to add information, when the user has asked for that. |
restore_assistant_version |
changes | Puts an earlier saved version of an AI assistant back as its DRAFT. The current draft is saved as a version first, so this can itself be undone. Customers are not affected until publish_assistant is called. Use it to undo a change the user is unhappy with. |
submit_whatsapp_template |
changes | Sends a draft WhatsApp template to WhatsApp for review. This cannot be undone and the template cannot be edited afterwards, so call it only when the person has seen the draft and asked for it to be submitted. WhatsApp answers in minutes to two days; check the result with list_whatsapp_templates. Only a draft that was never submitted can be sent, and only by the workspace owner. If a template with the same name already exists at WhatsApp, nothing is replaced: the draft stays and the clash is reported. |
test_flow |
changes | Runs one turn of a test conversation through a flow and returns what the bot replies, the buttons it offers, the variables it captured and the node it stopped at. Call it without `message` to start the conversation, then with `conversation_id` and a `message` for each customer turn. By default this is a dry run: it stops before AI nodes and before nodes that send, call or write something real, and says where it stopped. Set `use_ai` to let AI nodes answer (limited by a daily allowance that Bruknow pays for). Set `run_actions` only when the user has agreed that the flow's actions may run for real — emails and messages are sent, the CRM is written, calendar events are booked. Payment steps are never run. Tests the draft unless `version` is published. |
undo_action |
changes | Reverses one action by its id (from the 'Bruknow did' feed or an earlier result's action_id). |
undo_last |
changes | Reverses the most recent action Bruknow made for this user, from the in-app assistant or through Claude, that can still be undone (a task or contact it created, a note, a stage move, a contact merge). Use it when the user says 'undo', 'delete that', 'no, take it back'. Sends and calls cannot be undone; say so. |
update_assistant |
changes | Changes an AI assistant's DRAFT: its name, instructions, standing rules, conversation playbook or temperature. Customers keep being served the published version until publish_assistant is called; the draft is what test_flow with use_ai runs. Read the assistant with get_assistant first and pass its updated_at as base_updated_at. Send only the settings to change; each one sent replaces that setting completely, so send the whole instructions text or the whole playbook. This is the first place to change how a bot behaves: instructions for what the business knows, standing rules for what must always or never happen, the playbook for the conversation's steps. A playbook step can jump to a flow node for what only a node does. Read get_playbook_guide before writing playbook_steps, and get_bot_design_guide to choose between a playbook step and a node. Use it only when the user asked for a change to the bot or the assistant. |
9. Help
Ask Claude to open a ticket for you, open one from Support in Bruknow, or write to us: [email protected]
How the connector handles your data: Connector privacy notice