A searchable intelligence layer for navigating 1,000+ SaaS and API services when you need to integrate something but don't know which provider to pick or how reliable it is. Instead of Googling "invoice API" and guessing, your agent searches by intent, gets trust scores based on real agent usage data, pulls connection guides with auth setup and gotchas, and reports outcomes back to the community. Comes with 188 workflow recipes for multi-service pipelines like "create invoice in freee and notify via Slack". The full service database ships locally in the npm package with FTS5 search, so no API keys or external calls required. Install the bundled skill and Claude Code will automatically invoke it when you mention service names or integration tasks.
Local-first MCP navigator for AI agents. Find, evaluate, and compose MCP tools -- 80% fewer tokens vs trial-and-error.
Your agent wastes thousands of tokens every time it hits a new MCP service: searching docs, guessing auth flows, recovering from errors. KanseiLink eliminates that loop with a local SQLite DB of pre-evaluated services, trust scores, and step-by-step recipes.
Token savings: 89-97% measured across 7 services (avg ~16,800 tokens without → ~950 with KanseiLink).
npx @kansei-link/mcp-server
Works with Claude Code, Cursor, Cline, Zed, Windsurf -- any MCP client.
Add to your config (claude_desktop_config.json, .cursor/mcp.json, etc.):
{
"mcpServers": {
"kansei-link": {
"command": "npx",
"args": ["-y", "@kansei-link/mcp-server"]
}
}
}
Or with Claude Code CLI:
claude mcp add -s user kansei-link -- npx -y @kansei-link/mcp-server
| Count | Description | |
|---|---|---|
| Services | 11,000+ | MCP servers and SaaS APIs across 23 categories (2,257 MCP-verified via handshake) |
| 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 |
All data ships inside the npm package as a local SQLite DB. Zero API calls needed. No server dependency, no signup.
| 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 @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).
Add to ~/.claude/settings.json:
{
"hooks": {
"PostToolUse": [{
"matcher": "mcp__.*",
"hooks": [{ "type": "command", "command": "npx -y @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-config)
|
+-- search_services -> FTS5 + trigram (CJK) + LIKE + category detection
+-- lookup -> tips / detail / insights / recipe / combinations /
| history / feedback / voices (auto-detected)
+-- report -> outcome / feedback / event / voice (auto-detected)
+-- inspect -> queue / submit / propose / review / snapshot / evaluate
+-- analyze -> token_savings / cost / aeo_report / aeo_article
KanseiLink can generate intelligence reports showing how AI agents experience your API:
Interested? See kansei-link.com or reach out.
KanseiLink is privacy-preserving by default:
report call scrubs emails, phone numbers, IP addresses, and Japanese names before storage.See SECURITY.md for full details.
ls ~/.claude/skills/kansei-link/SKILL.md
If absent, run npx -y @kansei-link/mcp-server kansei-link-install-skill.kansei-link:
claude mcp add -s user kansei-link -- npx -y @kansei-link/mcp-server
search_services returns nothing for a service I know exists.search_services({ intent: "...", category: "accounting" }).report({ subject: "Missing: ServiceX", body: "..." }).lookup({ service_id: "..." }) -- it returns known OAuth pitfalls and refresh-token workarounds.report({ service_id: "...", success: false, error_type: "auth_error", workaround: "..." }) -- your fix helps the next agent.git clone https://github.com/kansei-link/kansei-mcp-server.git
cd kansei-mcp-server
npm install
npm run build
npm start # start stdio server
PRs welcome. If you find a service that's missing or has wrong info, the fastest path is:
report({ subject: "Fix: ServiceX auth is OAuth2 not API key", body: "..." })
io.github.kansei-link/kansei-mcp-serverMIT -- Synapse Arrows PTE. LTD.