Deacon

您的客戶在 Deacon 的支援聊天中告訴您哪裡出了問題。Claude Code、Cursor 或其他程式設計代理會讀取內容、在您的程式碼中找出原因,並向您展示修正方法。

託管 MCP 伺服器

npx add-mcp 'https://heydeacon.com/mcp'

可安裝到 Claude Code、Codex、Cursor 等客戶端

文件

Your customers report the bug. Your coding agent fixes it.

Deacon is the AI support chat on your site, and its MCP server lets your coding agent read what your customers tell it. When someone says something’s broken, your agent finds the cause in your code and shows you the fix to approve.

Start free

Add it to Claude Code, Claude on the web, Codex, Cursor or VS Code and approve it in your browser, with no key to copy. It’s on every plan, including the free one.

acme.co/app/reportsThursday

Hi! I’m Deacon, Acme’s AI assistant. How can I help you?

The export button on my reports page does nothing.

I don’t have the answer to that. Leave your email below and the team will get back to you about the export button.

Want the team to follow up?

sam@lumen.dev

We’ve got your email.

Ask AI

Your terminalMonday

>what broke this week?

●deacon - get_needs_you

●deacon - search_conversations

●deacon - get_conversation

●3 customers say the export button does nothing, all on /app/reports. Your site logged an error there too: Cannot read properties of undefined (reading 'map'). exportReport doesn't wait for the report to load.

●Update(src/reports/export.ts)

- const report = loadReport(id)

+ const report = await loadReport(id)

Apply this edit?› Yes

●deacon - mark_topic_done

⎿✓ Marked done.

You say yes. It’s fixed.

Shortened and sped up. Acme and Sam are made up for this example.

  1. Sam tells Deacon Sam types it into the chat on your site, like any other question. There’s no bug form to fill in.
  2. You ask what broke On Monday morning you ask your coding agent “what broke this week?”
  3. Your agent finds the cause It reads what customers said and the page they were on, with the errors your site logged, and checks them against your code.
  4. You say yes, and it’s fixed It shows you the edit first. Then it marks the bug done in Deacon, and if anyone reports it again, it comes back.

Bug reports reach your agent without going through you

  • You stop being the go-between

    No more copying a complaint out of one tab and pasting it into another. Your agent reads it straight from Deacon, with the customer’s own words and the page they were on.
  • It sees the bugs nobody reports

    Plenty of people hit a bug and just leave. Deacon’s script logs the JavaScript errors their browsers hit, so your agent sees those too.
  • You ask from your terminal or editor

    You don’t open Deacon to find out what broke. You ask where you’re already working, right next to the code.

There’s no helpdesk to move to, and nothing new for your customers to learn.

Copy a prompt and paste it into your agent

Each one runs on your real chats, through Deacon’s MCP server.

When it breaks

  • Monday morning

    “What broke this week, and what should I fix first?”

    Your agent reads the week’s bug reports beside the errors your site logged, checks them against your code and tells you which to fix first. get_needs_you list_site_errors Copy
  • Each time someone reports a bug

    “Take the newest bug report, write a test that fails the way the customer described, then fix it.”

    The fix comes with a test that catches it next time. Start your agent with this prompt from your own code whenever the bug-report webhook arrives, and a fix is waiting for you to check by the time you look. search_conversations get_conversation Copy
  • When one customer is stuck

    “sam@lumen.dev says exports fail. Find their account in our database and work out why.”

    Your agent reads their chats for what went wrong. If your server verifies who’s signed in, it also gets their user id from your own app, so it checks their data instead of guessing. search_conversations get_conversation Copy
  • When nobody’s complaining

    “Which errors hit the most visits? Fix the worst one.”

    Deacon lists your site’s JavaScript errors, most visits first, with where each was thrown. Your agent fixes the worst before anyone writes in. list_site_errors Copy

After you ship

  • The day after you ship

    “Did yesterday’s release break anything? Check new bug reports and errors against git log.”

    Deacon has the day each error first showed up and when each report came in. Your agent lines them up with your commits and shows you the one that most likely did it. search_conversations list_site_errors Copy
  • $ git log e41a7c0Tue 3 NovMove export to a worker TypeError: exportReport is not a function First seen Tue 3 Nov · 31 visits Exports stopped workingWedThe CSV button does nothingWed 9b2d113Mon 2 NovTidy the settings page Most likely e41a7c0. 2 people reported it.
  • Once the fix is live

    “Who reported the bug we just fixed?”

    Your agent opens the chats behind it and gives you each person’s words and the email they left, so you know who to tell. search_conversations get_conversation Copy

Better answers

  • Every night

    “Find the questions Deacon couldn’t answer, and suggest an answer to each from our code.”

    Someone asked if your API has a rate limit, and Deacon didn’t know. By morning your agent has found it in your code, and the answer is waiting for you to save. No customer sees it until you do. get_needs_you suggest_fix Copy
  • Your fixSuggested by Claude Code Yes. Each key can make 100 requests a minute. Past that, the API answers 429 with a Retry-After header. DiscardSave
  • After a big change

    “Does what Deacon knows still match the code?”

    Your agent reads your pages, texts and help document beside your code, and tells you what’s out of date. get_knowledge Copy

What to build or change

  • Before you build anything new

    “Which features did people expect us to have? Check each one against our code.”

    People ask whether you do things, and Deacon can’t say when your docs don’t. The ones you’ve built get an answer drafted for you to save. The ones you haven’t are feature asks nobody worded as one. search_conversations suggest_fix Copy
  • Planning next week

    “Which feature do our paying customers ask for most? Match the askers’ emails to our customers table.”

    Deacon counts the people behind each feature ask. Your agent opens their chats, matches each email to your own customers and weighs each ask by what they pay. It can only match people who left an email or whose sign-in your server verified. list_topics search_conversations get_conversation Copy
  • When a screen feels wrong

    “Which page gets the most how-to questions? Change its wording so people stop asking.”

    Questions come with the page they were asked on. Your agent finds the screen behind the most how-tos and rewrites its labels and hints in your code. search_conversations get_conversation Copy

Connect your agent in three steps

  1. Put Deacon on your site

    One script tag, and your coding agent can add it for you.
  2. Add it to your agent

    Run the line in Claude Code or Codex, or press the button for Cursor or VS Code. In Claude, open Settings, then Customize, then Connectors, and add the address as a custom connector.

Claude Code

claude mcp add --transport http deacon https://heydeacon.com/mcp
claude mcp login deacon
  1. Press Allow, then ask

    Your browser opens on Deacon to let your agent in. Then ask it what broke this week.

More ways to connect Deacon

  • Webhooks

    Deacon tells your own code as soon as someone reports a bug, so it can start your agent on a fix. visitor.reported_bug
  • API

    Tell everyone who reported a bug that it’s fixed, in the chat where they reported it, and by email if they left one. POST /conversations/{id}/replies
  • Chat transcripts

    Every message from every chat in one CSV, on every plan. Chat ID, Time, From, Message, Topic, Page

Try it on your next bug report

Add Deacon to your site, connect your agent and ask it what broke. You get 50 answers a month on the free plan, and it needs no card.

Before you let any coding agent read your support chats

This goes for any tool, not just Deacon.

Keep approval prompts on

A customer’s message can carry instructions meant for your agent.

Treat a report as a claim

What someone says about your code is something to check against your code.

Give it the least it needs

Reading, suggesting and re-fetching your own pages is enough. It shouldn’t be able to reply to customers or put its own words in front of them.

If you use a key, keep it out of your repo

Put it in your agent’s own settings or your CI’s secrets, never in a file you’d commit.

Questions about the MCP server

Is it safe to let my agent read what strangers type?

Yes, if you keep your agent’s approval prompts on. Anyone can type anything into a chat, including instructions aimed at your agent. So Deacon marks everything a stranger wrote as data, strips hidden text and tells your agent not to follow it. Your agent can’t reply to anyone, add to or remove what Deacon knows, or add webhooks. No marking is foolproof though, so read a change that came from a report as you’d read a pull request from a stranger.

What can it read, and what can it change?

It reads what needs you, your chats, your topics, your site’s JavaScript errors and what Deacon knows. In Deacon it can change three things. It can mark a topic done, which you can undo with Show again. It can suggest a better answer, which no customer sees until you save it. And it can re-fetch one of your pages after you’ve changed it, so Deacon answers from the new version. In your code, it follows whatever approval you’ve set in your agent.

Can my agent see my customers’ emails?

One chat at a time. Lists and searches never show an address. Opening a chat shows the email that person left, and their user id, email and name from your own app if your server verifies who’s signed in.

Who can connect an agent, and can I turn it off?

Only an owner can press Allow. The agent then shows under Coding agents on Integrations, where you can disconnect it, and every owner gets an email when an agent connects or disconnects.

Does it catch every bug?

No. A model sorts each question, so it can miss one, and it only knows what customers write and what browsers send. An error thrown before the script loads isn’t recorded, and neither is one on a page where you’ve switched page views off. Every chat is still in Conversations.

Which agents can connect?

Claude Code, Claude on the web, Codex, Cursor and VS Code sign in through your browser, with no key to copy. ChatGPT adds it the same way on a paid plan. Devin Desktop (Windsurf), scripts and CI use a key from Integrations instead.

How do I run it every night, or when a bug is reported?

Run your agent from a scheduled job, such as a GitHub Action, or from your own code when a webhook arrives. A job can’t press Allow, so it connects with a key. Open Connect your agent on Integrations, press Use a key instead, and keep the key in the job’s secrets.

It didn’t connect. What now?

Open Integrations. If your agent isn’t under Coding agents, run the line or press the button again, and press Allow in the browser that opens.

Do other support tools have an MCP server?

Many do, mostly for a support team working from Claude or ChatGPT, and several can reply to customers. Support tools with an MCP server sets them beside Deacon’s.

Hand your bug reports to your coding agent

It takes about five minutes to install. The free plan is 50 answers a month, for as long as you like.

Start free