Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Reduce your AI agent's token waste with collective intelligence — SaaS integration recipes
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://mcp.kansei-link.com/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"kansei": {
"command": "npx",
"args": [
"-y",
"@kansei-link/mcp-server"
]
}
}
}在终端中运行这条命令
claude mcp add --transport http kansei https://mcp.kansei-link.com/mcpclaude mcp add kansei -- npx -y @kansei-link/mcp-server粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"kansei": {
"url": "https://mcp.kansei-link.com/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"kansei": {
"command": "npx",
"args": [
"-y",
"@kansei-link/mcp-server"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"kansei": {
"type": "http",
"url": "https://mcp.kansei-link.com/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"kansei": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@kansei-link/mcp-server"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://mcp.kansei-link.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 kansei-link 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(1.3.0)于14天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Fomu MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Reduce your AI agent's token waste with collective intelligence.
Your agent burns tokens on three things: searching for SaaS docs it could look up locally, retrying errors other agents already solved, and re-reading context it already processed. KanseiLink tackles the first two — and measures all three so you know exactly where your tokens go.
Measured savings: 89–97% on SaaS integration research (avg ~16,800 tokens without → ~950 with KanseiLink, across 7 services).
Install MCP → agent wastes fewer tokens (lookup + collective intelligence)
↓ usage data stays local (opt-in: anonymous scalars only) ↓ collective intelligence grows → everyone's agent gets smarter
If KanseiLink saves your agent tokens, give it a star ⭐ — 700+ developers install it from npm every month, and stars are how the next one finds it.
Add by URL — the hosted server, always on the current data. No key, no sign-up.
claude mcp add --transport http kansei-link https://mcp.kansei-link.com/mcp
Cursor, Windsurf, Cline, Zed — any client that takes a URL (.cursor/mcp.json and the like):
{
"mcpServers": { "kansei-link": { "url": "https://mcp.kansei-link.com/mcp" } } }
Claude Desktop: *Settings → Connectors → Add custom connector* → https://mcp.kansei-link.com/mcp.
What the hosted server keeps about a call is one line of counts — tool name, service id, outcome — never your text. The full list is in SECURITY.md → What the server can see.
Offline, or no network calls at all — the npm package runs locally on a small public copy of the catalogue (one card per service, recipes, API guides) and sends nothing:
claude mcp add -s user kansei-link -- npx -y @kansei-link/mcp-server
{
"mcpServers": { "kansei-link": { "command": "npx", "args": ["-y", "@kansei-link/mcp-server"] } } }
Works with Claude Code, Claude Desktop, Cursor, Cline, Zed, Windsurf — any MCP client.
KanseiLink measures — locally, on your machine — how many tokens your agent sessions consume and how much of that KanseiLink saved you, then renders a monthly "Wrapped" share card.
1. Install the measurement hooks (one command, idempotent, backs up your settings first):
npx -y -p @kansei-link/mcp-server kansei-link-install-hooks
This adds a Stop/SessionEnd hook that parses each session transcript and writes token totals + KanseiLink call stats to ~/.kansei-link/usage/. Nothing is uploaded.
2. See your report any time:
npx -y -p @kansei-link/mcp-server kansei-link-wrapped # current month (JA)
npx -y -p @kansei-link/mcp-server kansei-link-wrapped --lang en # English npx -y -p @kansei-link/mcp-server kansei-link-wrapped --share # opt-in: get your rank
The report separates measured numbers (your total tokens, KanseiLink call counts and response sizes — parsed from your own transcripts) from estimated ones (the avoided web-research cost, based on the 2026-04-16 freee/kintone/smarthr benchmark) — labels shown on every surface.
It also shows where your agent got stuck: failed tool calls, retry chains (2+ consecutive failures of the same tool), the tokens burned while stuck, and your worst-failing tools.
--share submits only scalar monthly aggregates (anonymous id + token counts, never content) and returns how you rank among measured users ("top X% saver"). Below 20 measured users for the month, you get the cohort size instead of a rank.
Disable measurement anytime: export KANSEI_USAGE_HOOK=off, or kansei-link-install-hooks --remove.
The core reason agents waste tokens on SaaS APIs: they search docs, guess auth flows, and recover from errors — every single time. KanseiLink ships a local SQLite DB built from the public copy of its catalogue so your agent gets the answer on the first try; the full picture (scores, probes, history) lives on the hosted server and on the site.
| Count | Description | |
|---|---|---|
| Services | 11,293 | MCP servers and SaaS APIs across 49 categories (2,257 endpoints answered our MCP handshake probe as of 2026-06-09) |
| Recipes | 200 | Multi-service workflow compositions (standup, PR review, incident response, onboarding...) |
| API Guides | 199 | Auth setup, endpoints, rate limits, pitfalls, and workarounds |
| Trust Scores | Weekly | Based on automated health probes + real agent usage data |
The npm package ships the public copy of the data (one card per service, recipes, API guides, the last 90 days of the changelog — since 1.3.0) and builds a local SQLite DB from it. No API calls are needed to search or look up a service, no server dependency, no signup. What is not in the copy — internal scores, probe results, agent voices, raw registry dumps — stays on the hosted server; when a lookup misses, the tool points you to https://kansei-link.com/services/ / and to ask.
| Without KanseiLink | With KanseiLink |
|---|---|
web_search "freee API auth" | search_services({ intent: "send invoice" }) |
web_fetch docs landing page (SPA, mostly nav) | lookup({ service_id: "freee" }) |
web_fetch endpoint reference | Agent has auth flow, pitfalls, workarounds |
web_fetch auth guide | in ~950 tokens |
| Trial-and-error on wrong params | First try succeeds |
| ~16,800 tokens burned | 89–97% saved |
Installing the MCP alone doesn't teach Claude Code *when* to call KanseiLink. The bundled skill fixes that:
npx -y -p @kansei-link/mcp-server kansei-link-install-skill
This copies a SKILL.md to ~/.claude/skills/kansei-link/. Claude Code auto-discovers it and fires the skill on phrases like "connect to Stripe", "Slack MCPある?", "send invoice via freee" — no need to say "use KanseiLink".
Auto-capture success/failure after every MCP call (agents tend to forget reporting).
Consent (v1.2, BREAKING). Installing the hook alone no longer transmits anything. All central transmission is governed by one consent gate (~/.kansei-link/consent.json), with this priority: DO_NOT_TRACK=1 / explicit OFF → explicit ON (KANSEI_REPORT_HOOK=on) → Live Updates consent (npx -y -p @kansei-link/mcp-server kansei-link-live-updates --enable) → default OFF (Local Mode, zero transmission). Existing hook users are OFF until they re-consent. Manage: kansei-link-live-updates --status|--enable|--disable, kansei-link-privacy --status|--reset-id.
What this hook sends when enabled (and what it never sends). A small pseudonymous event to KanseiLink's hosted endpoint after each MCP tool call. The payload is a fixed 7-field set, frozen by a snapshot test (scripts/smoke-hook-payload.mjs):
auth_error), a fixed context stringInstalling the hook does NOT opt you in — transmission requires the consent gate above (Live Updates consent, or an explicit KANSEI_REPORT_HOOK=on). Disable anytime: kansei-link-live-updates --disable or export KANSEI_REPORT_HOOK=off.
Add to ~/.claude/settings.json:
{
"hooks": { "PostToolUse": [{ "matcher": "mcp__.*", "hooks": [{ "type": "command", "command": "npx -y -p @kansei-link/mcp-server kansei-link-report-hook" }] }] } }
Disable anytime: export KANSEI_REPORT_HOOK=off
v1.0 consolidates the tool surface from 25 individual tools into 5 unified tools with mode auto-detection.
search_services --> lookup --> (execute your API call) --> report
| Tool | Modes | Description |
|---|---|---|
search_services | -- | Find services by intent (FTS5 + trigram + category boost) |
lookup | 8 modes | Get tips, detail, insights, recipes, combinations, history, feedback, voices |
report | 4 modes | Report outcomes, submit feedback, record events, share your voice |
| Tool | Modes | Description |
|---|---|---|
inspect | 8 modes | Colony health: inspection queue, anomaly verification, update proposals, snapshots |
analyze | 4 modes | Analytics: token savings, cost audit, AEO reports and articles |
| Mode | Trigger | Example |
|---|---|---|
| tips (default) | service_id alone | lookup({ service_id: "freee" }) |
| detail | detail: true | lookup({ service_id: "freee", detail: true }) |
| insights | insights: true | lookup({ service_id: "freee", insights: true }) |
| recipe | goal | lookup({ goal: "onboard employee" }) |
| combinations | service (fuzzy name) | lookup({ service: "freee" }) |
| history | period | lookup({ service_id: "freee", period: "30d" }) |
| feedback | feedback_status | lookup({ feedback_status: "open" }) |
| voices | mode: "voices" | lookup({ mode: "voices", service_id: "freee" }) |
| Mode | Trigger | Example |
|---|---|---|
| outcome | success (boolean) | report({ service_id: "freee", success: true }) |
| feedback | subject + body | report({ subject: "...", body: "..." }) |
| event | event_type | report({ event_type: "api_change", event_date: "2025-01-15", title: "..." }) |
| voice | question_id | report({ question_id: "best_feature", response_text: "...", service_id: "freee" }) |
Find and integrate a service:
search_services({ intent: "send invoice to clients", compact: true })
--> lookup({ service_id: "freee" }) // tips: auth, pitfalls, workarounds --> lookup({ service_id: "freee", detail: true }) // full connection guide --> (execute your API call) --> report({ service_id: "freee", success: true, task_type: "create_invoice" })
Multi-service workflow:
lookup({ goal: "create invoice and notify via slack", services: ["freee", "slack"] })
--> Step-by-step recipe with coverage scoring
Share your honest opinion:
report({
service_id: "stripe", question_id: "biggest_frustration", response_text: "Webhook signature verification docs are unclear for non-Node runtimes" })
CRM, Project Management, Communication, Accounting, HR, E-commerce, Legal, Marketing, Groupware, Productivity, Storage, Support, Payment, Logistics, Reservation, Data Integration, BI/Analytics, Security, Developer Tools, AI/ML, Database, Design, DevOps
Agent <-> KanseiLink MCP Server <-> SQLite (local, zero-conf只显示了开头部分;其余内容请在仓库中阅读