Build vs install a plugin
Goal: Write the job story and “must never happen,” then compare three install options—do not start by building MCP.
Best for: when someone says “we should build an MCP server” on week one.
Most beginners should install/configure first. Build only when a needed action does not exist, or compliance blocks third-party tools. This page is a decision filter—not a tutorial on writing servers. When you do need a first safe server later, see Safe first MCP server. For evaluating installs, see Install and evaluate.
Scene tip: Decide on a Tuesday when you feel the urge to “Build vs install a plugin” Buy/eval first.
Why beginners skip this
Building when a ready plugin exists feels like control—maintenance eats this week’s progress. Ask “who maintains?” first.
Step 1 — Write the job story
Write one paragraph: who, goal, which apps touch, how often, what must never happen—wish lists are not requirements.
Turn this wish into a job story (≤8 lines):
Wish: [paste]
Include a never-happen list (delete, wrong folder, external send…).
Example
Filled prompt
Wish: auto-file invoices from email into Drive folders by vendor.
Job story + never-happen (delete mail, wrong vendor folder, send replies).
What good output looks like
- Eval score written before install for “Build vs install a plugin”
- Uninstall path and scopes listed
- No always-allow on write/send
- Pass/fail: keep-or-remove decision dated
Step 2 — Search existing options
Search built-in connectors and official plugins before random stores; score fit 1–5—official first.
Job story:
[paste]
Propose 3 “buy/install” options to investigate (categories OK if names unknown).
For each: what to verify in 10 minutes (permissions, last update, read-only test).
Example
Filled prompt
Job: auto-label support mail by product line (3 labels). Weekly volume ~40 threads.
Write build-vs-buy card: frequency, security (no auto-send), eval task (label 5 samples read-only), install candidate, build only if….
Decide in 6 bullets. No romance about "our own plugin."
What good output looks like
- Uninstall path and scopes listed
- No always-allow on write/send
- Pass/fail: keep-or-remove decision dated
- Eval score written before install for “Build vs install a plugin”
Step 3 — Build only with a trigger
Build only when a needed action is missing, data cannot leave the boundary, or install options failed twice—one action is enough.
Should we build? Answer yes/no with 5 bullets using this evidence: [paste eval notes].
If yes, define the smallest build (one action). If no, say which installs to combine.
Example
Filled prompt
Need: weekly release-note draft from merged PR titles.
Eval two installs on 5 sample PRs before any build. Human publishes.
6-bullet buy/build card.
What good output looks like
- No always-allow on write/send
- Eval score written before install for “Build vs install a plugin”
- Pass/fail: keep-or-remove decision dated
- Uninstall path and scopes listed
Keep it real
Run this guide’s Practice now on work you will actually ship this week—not a fictional scenario. Dated notes beat perfect theory.
Do not bookmark-only
Finish Practice now, then tick this guide on your path. Titles unread are not skills.
Close the loop
Write one line: next time I build with “who maintains?” blank, I refuse to start.
Red flag
Building before “must never happen”; vibes over three install options—stop the scaffold.
Save this card
Card: Write “must never happen,” then compare three install options—do not build on vibes. Keep this beside the tool; read before you start.
Before you start
Open the listing and a notes doc. Score purpose/scopes/uninstall for “decide whether an existing connector is enough” before Install. Prefer wait over Always allow. Guide: plugins-when-to-build-vs-buy. Keep the real job visible the whole time; a blank box means stop and fetch the artifact first.
How to use this week
This week write a three-line build-vs-buy compare for a real need; do not build if “who maintains?” is blank.
Close the week by quoting aloud the refuse line you actually used once. If you cannot, rerun Practice now and date the pass/fail (Asia/Shanghai).
Pitfalls
| Pitfall | Fix |
|---|---|
| Building for resume points | Install first |
| Custom tool with wide secrets | Least privilege |
| No job story | Write it before shopping |
| “MCP” as fashion, not need | Require a missing-action trigger |
Example
Filled prompt
Temptation: skip the habit for plugins-when-to-build-vs-buy to save five minutes.
Job still: decide whether an existing connector is
Smallest correct pass: Done visible · checkable artifact · Unknowns [?].
Boundaries: draft only; no silent send; no invented metrics.
Return: artifact + refuse-line said aloud.
What good output looks like
- Names the shortcut refused (specific to plugins-when-to-build-vs-buy)
- Still delivers checkable output for “decide whether an existing connector is”
- Unknowns labeled; draft-only
- Pass/fail: refuse-line dated (plugins-when-to-build-vs-buy #4)
Practice now
TCO line: 90-day cost estimate on Save (Asia/Shanghai).
Sunset clause: if build, write who deletes it in 90 days (Asia/Shanghai).
Build-vs-buy drill: who maintains? cost? blast radius?—blank “who maintains” means buy/wait (Asia/Shanghai).
Thin-spot drill: rewrite the Save card with real nouns from your work (repo, doc, inbox). Generic placeholders fail the drill.
Tonight write a three-line build-vs-buy compare for a real need; do not build if “who maintains?” is blank.
Today card (copy) — plugins-when-to-build-vs-buy: 1. Artifact I will produce: ___ 2. Pass/fail check: ___ 3. Refuse-line if tempted to skip verify/send: ___ (date: Asia/Shanghai) 4. One never-do from this guide: ___
Extra pass: do the card on a real file today—reading alone does not count.
Ship rule: name the buyer vs build criterion you used in one sentence; if you cannot, do not install yet.
Buffer line: name the artifact path you used (Asia/Shanghai).
Ship-check: artifact path ___ · refuse-line dated Asia/Shanghai ___ · never-do ___
One sentence takeaway
Build-vs-buy three-line compare; decide only after “who maintains?” is clear.
Next
Safe first MCP server · Install and evaluate · Directory hygiene
插件:自建还是安装
目标: 先写清任务故事和「绝不能发生」,再比三个现成安装选项:不要一上来就自建 MCP。
适合: 发票归档一类重复劳动,正纠结装插件还是自己做的人。
评估失败仍硬上自建,常把红线漏掉。否也可以:组合安装往往够用。
为什么新手跳过
能装现成还自建像掌控;维护成本会吃掉本周进度。先问「谁维护」。
步骤 1——写清任务故事
用一段话写清:谁、目标、会碰到哪些应用、多频繁、什么绝对不能发生;愿望清单不算需求。
把愿望收成任务故事(≤8 行):
愿望:[粘贴]
加上「绝不能发生」清单(删除、装错文件夹、对外发送…)。
实例
填好的提示词
愿望:把邮件里的发票按供应商自动归档到云盘对应文件夹。
写任务故事,并列出绝不能发生的事(删邮件、装错供应商文件夹、自动回信)。
边界:不编造;未知标 [?];发送前停下。
完成检查:一分钟内能判过/不过。
像样的输出大概长这样
- 任务故事写清频率与触达的应用(邮件 + 云盘)
- 「绝不能」具体:删邮件、装错供应商文件夹、自动回信
- 读完能判断这是重复劳动还是一次性脚本
- 不写成功能许愿池
- 像产品经理的问题简报,短而硬
- 未知标出;不编造负责人、日期或指标
步骤 2——先搜现成选项
先查内置连接器和官方插件,再看靠谱商店;拟合度打 1–5,官方优先。
任务故事:
[粘贴]
提出 3 个「购买/安装」调查方向(不知道名字写类别也可)。
每个:10 分钟内要核对什么(权限、最近更新、只读测试)。
实例
填好的提示词
发票归档任务。给 3 个安装选项(官方优先),并各附 10 分钟核对清单。
先写「绝不能发生」;不要一上来就跳到「自建 MCP」。
边界:不编造;未知标 [?];发送前停下。
完成检查:一分钟内能判过/不过。
像样的输出大概长这样
- 给出 3 个安装优先选项,官方/现成靠前
- 每个选项附 10 分钟核对清单(含权限)
- 明确不要一上来就「自建 MCP」
- 核对项能打勾,不是「感觉不错」
- 语气帮你省时间,不推销定制开发
- 未知标出;不编造负责人、日期或指标
步骤 3——有触发条件才自建
缺动作、数据不能出边界、或安装选项评估失败两次,才触发最小自建(一个动作就够)。
该自建吗?根据这些证据答是/否并给 5 条:[粘贴评估笔记]。
如果是,定义最小自建(一个动作)。如果否,说明组合哪些安装。
实例
填好的提示词
两个邮件插件的只读评估都失败了;云盘连接器归档可用。
请给出自建是或否,以及最小自建(一个动作)或组合安装方案。缺「绝不能发生」就先别开工。
边界:不编造;未知标 [?];发送前停下。
完成检查:一分钟内能判过/不过。
像样的输出大概长这样
- 决定明确:自建是或否,并引用评估证据
- 如果否:给出「组合安装」最小方案;如果是:只做一个动作那么大
- 尊重「邮件插件只读评估失败、云盘归档可用」的事实
- 不因好面子硬上自建
- 结论短到能贴进团队频道
- 未知标出;不编造负责人、日期或指标
保持真实
用本周真要交付的工作做「现在就练一次」,别编假场景。带日期的实操笔记,比完美理论有用。
不要只收藏
先做完「现在就练一次」,再在学习路径上打勾。只收藏不练,标题变不成技能。
闭环
写下一行:下次谁维护写不清就自建,我拒绝开工。
红旗
能装现成还自建,维护成本吃掉本周进度;先问「谁维护」。
保存这张卡
记下:留下的插件名 + 为何保留一句 + 卸载路径。标上日期。
开始前
先说清本周这插件必须打通的那一件活;说不清楚就不装。
本周怎么用
本周对一个真需求写自建 vs 现成对照三行;谁维护写不清就不自建。
常见坑
| 坑 | 改法 |
|---|---|
| 一上来自建 MCP | 先写「绝不能」+ 三个现成选项 |
| 评估失败仍硬上自建 | 尊重证据,改组合安装 |
| 愿望清单当需求 | 写成任务故事与频率 |
现在就练一次
今晚就练:对一个真需求写自建 vs 现成对照三行;谁维护写不清就不自建。
一句话带走
自建 vs 现成对照三行;谁维护写清再决定。
下一步
安全的第一个 MCP · 安装并评估 · 商店卫生
← Back to home · Learn · Tools · Compare · Start