Kernal Mcp

io.github.pintomatic由 GitHub 帳號 pintomatic 發布v0.2.1更新於 Oct 24, 2026

Graph-native memory for AI agents: a knowledge graph built from conversation, via MCP.

已驗證STDIO僅桌面效率與工作流知識與記憶

概覽

AI 產生的概覽

一個本機開源知識圖譜,讓助理把關於會議與聯絡人的對話整理成人物、組織、活動、主題與待辦追蹤並儲存起來。

可以做什麼
儲存原始筆記並從中擷取實體,寫入時對人物、組織、活動、待辦事項及實體間關係進行去重。依姓名、組織、角色、類型、負責人或到期日搜尋並列出聯絡人、組織、活動與未完成事項。取得某個人或組織的完整簡報,包含時間軸、關係網絡與主題。修正紀錄:更新欄位、刪除實體、合併重複項目或重設資料庫。透過本機命令列初始化、啟動服務、查看狀態與匯出資料庫。
適用情境
適合希望以私有、自架方式記錄會議、通話與聯絡人的專業人士,讓助理從自然對話中逐步累積資訊,之後用於簡報、待辦提醒與關係查詢。
執行需求
透過 npx 從 npm 套件 kernal-mcp 以本機 stdio 程序執行,需要 Node.js。先執行初始化,在 ~/.kernal/kernal.db 建立 SQLite 資料庫,並把印出的設定加入桌面用戶端。選用的雲端伺服器與儀表板需要 KERNAL_API_KEY 與 KERNAL_DB_PATH,如需調整還需 KERNAL_CORS_ORIGIN、KERNAL_RATE_LIMIT 與 PORT。
安裝前請注意
這些工具會寫入本機資料庫,也能刪除資料,kernal_correct 可合併重複項目或重設整個資料庫,執行破壞性操作前請先備份或匯出。儲存的筆記含個人與商務聯絡人資訊,請妥善保管資料庫與匯出檔案。選用的雲端伺服器會透過 HTTP 暴露資料並要求 KERNAL_API_KEY,請設定強金鑰並限制 KERNAL_CORS_ORIGIN。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Kernal Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Kernal

Open-source knowledge graph for professionals. Auto-extracts entities and relationships from natural conversation via MCP.

Talk to Claude naturally about your meetings, calls, and interactions. Kernal stores people, organizations, topics, and relationships — building a knowledge graph you own.

What's Included (Open Source)

Everything you need to run Kernal locally on your own machine:

  • 13 MCP tools — ingestion, CRUD, query, corrections (see full list below)
  • SQLite database — local-first, your data never leaves your machine
  • LLM-driven extraction — Claude reads your text, decides what to extract, and calls structured write tools
  • Entity resolution — fuzzy matching + Levenshtein distance prevents duplicates
  • CLI — init, serve, status, export
  • Cloud server — Express.js with API key auth, rate limiting, CORS, session management
  • Dashboard — React app with network graph, timeline, action items, overview
  • 50 tests — comprehensive test suite

This is a fully functional knowledge graph you can run yourself, for free, forever.

What Andes Provides (Managed Service)

For teams and professionals who want more, Andes offers:

  • Cloud hosting — access your knowledge graph from any device, no self-hosting
  • Dashboard — hosted interactive visualizations powered by your data
  • Multi-user — team features, shared knowledge bases, role-based access
  • Onboarding & support — we set it up for you and help your team get value from day one
  • Industry workflows — pre-built patterns for executive search, consulting, professional services

The open-source core is the engine. Andes wraps it with infrastructure, UX, and support.


Quick Start

bash
npx kernal-mcp init

This creates a SQLite database at ~/.kernal/kernal.db and prints the config to add to Claude Desktop.

Add to your claude_desktop_config.json:

json
{  "mcpServers": {    "kernal": {      "command": "npx",      "args": ["-y", "kernal-mcp", "serve"]    }  }}

Restart Claude Desktop. Then talk naturally:

"I had lunch with Jonas Lindberg from Nordvik Energy today. He's their VP of Digital. We discussed their cloud migration — targeting Q3."

Claude extracts Jonas, Nordvik Energy, the cloud migration topic, and stores them via Kernal's write tools. Then ask:

  • "What do I know about Nordvik Energy?" → Full briefing with people, interactions, topics
  • "Who should I follow up with?" → Open action items with owners and due dates
  • "Show me everyone at Nordvik Energy" → Contact list filtered by organization

How It Works

Kernal uses an LLM-driven extraction pattern:

  1. You tell Claude about a meeting, call, or interaction
  2. Claude calls kernal_remember with the raw text
  3. Kernal stores the text as a note and returns extraction instructions + existing entities (for dedup)
  4. Claude reads the text intelligently and calls structured write tools (kernal_add_person, kernal_add_org, kernal_add_activity, etc.)
  5. Each write goes through entity resolution to prevent duplicates
  6. The LLM makes all extraction decisions — no regex guessing

The MCP server is a clean data store. The LLM is the brain.

MCP Tools

Ingestion (write)

ToolDescription
kernal_rememberStore raw text, get extraction instructions and existing entity list for dedup
kernal_add_personCreate or update a person (auto-deduplicates by fuzzy name match)
kernal_add_orgCreate or update an organization (auto-deduplicates)
kernal_add_activityLog an interaction with participant and org linking
kernal_add_actionCreate a follow-up or task, optionally assigned to a person
kernal_linkCreate a relationship between any two entities (person, org, or topic)

Query (read)

ToolDescription
kernal_recallSearch the knowledge base by keyword across all entity types
kernal_peopleList/search contacts — filter by name, org, role
kernal_orgsList/search organizations — filter by type, industry
kernal_activitiesRecent interactions — filter by type, person, date
kernal_actionsOpen follow-ups — filter by status, owner, due date
kernal_contextFull briefing on a person or org — timeline, network, topics

Corrections

ToolDescription
kernal_correctUpdate fields, delete entities, merge duplicates, or reset the database

What Gets Stored

From a single paragraph like "Had coffee with Sofia Andersen from Arctura Tech. She's their VP of Sales. We discussed their expansion into APAC. I need to send her the partner proposal by Friday.", Claude will call:

  • kernal_add_person — Sofia Andersen, VP of Sales, at Arctura Tech
  • kernal_add_org — Arctura Tech
  • kernal_add_activity — Coffee meeting, today, participants: [Sofia Andersen], orgs: [Arctura Tech]
  • kernal_add_action — "Send partner proposal to Sofia", due Friday, owner: Sofia Andersen
  • kernal_link — Sofia → works_at → Arctura Tech

Each call is a deliberate, structured decision by the LLM — not a regex guess.

CLI Commands

kernal init      Create database + print Claude Desktop configkernal serve     Start MCP server (stdio transport)kernal status    Show database statskernal export    Export database to a filekernal help      Show help

Dashboard

The repo includes a React dashboard (dashboard/) with four views:

  • Overview — entity counts, most connected people, activity breakdown
  • Network — interactive force-directed graph (people + organizations)
  • Timeline — chronological activity feed with participants and summaries
  • Actions — follow-ups grouped by urgency (overdue, this week, upcoming)

Natural language command bar routes queries to views ("Show me my network" → graph).

bash
# Start the cloud API serverKERNAL_API_KEY=your-key KERNAL_DB_PATH=~/.kernal/kernal.db npm run cloud
# Start the dashboard (separate terminal)cd dashboard && npm run dev

Data Model

Kernal stores 6 entity types connected by a generic relationship graph:

People ←→ Organizations  ↕           ↕Activities ←→ Topics  ↕Actions ←→ Notes

All entities can link to any other entity via the relationships table, enabling queries like:

  • "Who has Sofia met with?" (person → activities → other people)
  • "What topics come up with Nordvik Energy?" (org → people → activities → topics)
  • "What's the connection between Jonas and Arctura Tech?" (path through graph)

Security

  • All SQL queries use parameterized statements (no injection risk)
  • API key auth with constant-time comparison (crypto.timingSafeEqual)
  • CORS restricted to configured origins
  • Rate limiting (120 req/min per IP, configurable)
  • MCP session timeout (30 min idle eviction)
  • No secrets in code — all config via environment variables
  • React dashboard auto-escapes all rendered data (no XSS)

Development

bash
git clone https://github.com/pintomatic/kernal.gitcd kernalnpm installnpm run buildnpm test        # 50 tests

Self-Hosting the Cloud Server

bash
KERNAL_API_KEY=your-secret KERNAL_DB_PATH=~/.kernal/kernal.db npm run cloud

A Dockerfile is included. Environment variables:

VariableDefaultDescription
KERNAL_DB_PATH~/.kernal/kernal.dbSQLite database path
KERNAL_API_KEY(required for cloud)API key for authentication
KERNAL_CORS_ORIGINhttp://localhost:5174Allowed CORS origins (comma-separated)
KERNAL_RATE_LIMIT120Max requests per minute per IP
PORT3001Server port

Seed Demo Data

bash
npx tsx scripts/seed-demo.ts

Creates 12 contacts, 18 orgs, 19 activities with 123 relationships — a realistic professional services scenario.

License

MIT

來源:README.md,提交 5884f5b

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分