Knowledge Graph Mcp

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

Knowledge graph MCP for student learning with spaced repetition and mastery tracking

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

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理建立並查詢以 SQLite 儲存的學習概念知識圖譜,支援掌握度追蹤與間隔重複。

可以做什麼
建立與更新概念節點及關係,包括掌握度評分、迷思概念記錄,以及會觸發 SM-2 排程的複習評分。查詢圖譜中的先備概念、可學習概念、待複習項目、困難領域、知識缺口與下一步推薦。以 JSON 或 Mermaid 圖讀取某個概念的鄰近範圍,並取得通往目標概念的有序學習路徑。依領域取得學習進度統計。
適用情境
適合輔導或學習類助理,需要在多次工作階段之間持續、結構化地記錄學習者已掌握的內容、較弱的環節,以及接下來該複習什麼。
執行需求
以本機 Python 程序執行(Python 3.10+),可從 PyPI 或原始碼安裝;README 另提到 Smithery 託管選項。資料存放在本機 SQLite 檔案,預設位於使用者家目錄下;選用環境變數 KNOWLEDGE_GRAPH_DB_PATH 可變更位置。未宣告驗證機制。
安裝前請注意
助理可以建立與修改已儲存的學習記錄,包括掌握度評分與複習排程,錯誤的更新會持續留在本機資料庫中。資料留在本機 SQLite 檔案;README 提到的 Smithery 託管選項會把資料交給第三方。

安裝

在 SourceWeft 中

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

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

其他 MCP 客戶端

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

README

Knowledge Graph MCP Server

An MCP (Model Context Protocol) server for tracking student learning via a knowledge graph. Built with FastMCP, it enables LLMs to build, query, and update a personalized knowledge map with spaced repetition scheduling.

Features

  • Knowledge Graph Storage: SQLite-backed graph with concepts as nodes and relationships as edges
  • Multi-dimensional Mastery Tracking: Track recall, application, and explanation abilities separately
  • Spaced Repetition (SM-2): Automatic scheduling of review sessions based on performance
  • Misconception Tracking: Record and query common misconceptions for targeted remediation
  • Intelligent Queries: Find knowledge gaps, ready-to-learn concepts, struggling areas
  • Mermaid Visualization: Generate visual diagrams of the knowledge graph

Installation

Option 1: Install from Smithery (Recommended)

Install directly via Smithery:

bash
npx @smithery/cli install @zcsabbagh/knowledge-graph-mcp --client claude

Or use the hosted version at: https://smithery.ai/server/@zcsabbagh/knowledge-graph-mcp

Option 2: Install from source

Prerequisites: Python 3.10+

bash
git clone https://github.com/zcsabbagh/knowledge-graph-mcp.gitcd knowledge-graph-mcppip install -e .

Usage

Running the Server

bash
# From the project rootpython -m knowledge_graph_mcp.server

Configure with Claude Code

Add to your Claude Code MCP settings (~/.claude/settings.json):

json
{  "mcpServers": {    "knowledge-graph": {      "command": "python",      "args": ["-m", "knowledge_graph_mcp.server"],      "cwd": "/path/to/knowledge-graph-mcp"    }  }}

Configure with Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "knowledge-graph": {      "command": "python",      "args": ["-m", "knowledge_graph_mcp.server"],      "cwd": "/path/to/knowledge-graph-mcp"    }  }}

MCP Tools

1. add_node

Create a new concept node.

add_node(  concept="Quadratic Formula",  description="Formula for solving ax² + bx + c = 0",  domain="mathematics",  difficulty=0.7,  tags=["algebra", "formulas"])

2. add_edge

Create relationships between concepts.

Relation types:

  • prerequisite - Must learn source before target
  • builds_on - Target extends source concept
  • related_to - Concepts are connected
  • contradicts - Common misconception
  • applies_to - Application domain
  • parent_of - Category hierarchy
add_edge(  source_concept="Algebra",  target_concept="Quadratic Formula",  relation_type="prerequisite")

3. update_node

Update mastery and record reviews. Providing a quality rating (0-5) triggers spaced repetition scheduling.

update_node(  node_id="quadratic_formula",  quality=4,  # SM-2 rating: 0=blackout, 5=perfect  mastery_application=0.6,  misconception_detected="forgets ± sign")

4. query_graph

Intelligent queries for learning insights.

Query types:

  • prerequisites - All prerequisites for a concept
  • ready_to_learn - Concepts where prereqs are mastered
  • due_for_review - Needs review based on schedule
  • struggling - High difficulty + low mastery
  • stalled - Multiple reviews, no improvement
  • misconceptions - Concepts with detected misconceptions
  • knowledge_gaps - Low mastery blocking progress
  • next_recommended - Best concept to study next
query_graph(query_type="next_recommended", domain="mathematics")

5. read_subgraph

Get the neighborhood around a concept with Mermaid visualization.

read_subgraph(  center_node="calculus",  depth=2,  direction="upstream",  # or "downstream", "both"  output_format="both"   # "json", "mermaid", or "both")

6. get_learning_path

Get ordered prerequisites for a target concept.

get_learning_path(target_concept="calculus")

7. get_statistics

Get learning progress metrics.

get_statistics(domain="mathematics")

How It Works

Data Model

Nodes represent concepts with:

  • Mastery levels (overall, recall, application, explanation)
  • Spaced repetition data (ease factor, interval, next review date)
  • Difficulty rating and review history
  • Tags and detected misconceptions

Edges represent relationships with:

  • Relation type (prerequisite, builds_on, etc.)
  • Strength/confidence rating
  • Optional reasoning

Spaced Repetition (SM-2)

When you call update_node with a quality rating:

  • 5: Perfect response → longer interval
  • 4: Correct with hesitation
  • 3: Correct with difficulty
  • 2-0: Incorrect → reset interval

The algorithm calculates the next optimal review date based on performance history.

Mastery Calculation

Overall mastery combines dimensional scores:

mastery_level = 0.3 × recall + 0.4 × application + 0.3 × explanation

Storage

Data is stored in SQLite at ~/.knowledge_graph/knowledge.db by default.

Example Workflow

1. LLM discovers student doesn't know "quadratic formula"   → add_node(concept="Quadratic Formula", difficulty=0.7)
2. LLM identifies prerequisites   → add_edge("Algebra", "Quadratic Formula", "prerequisite")
3. Student attempts problem, struggles   → update_node("quadratic_formula", quality=2,                 misconception_detected="confuses ± with +")
4. LLM decides what to teach next   → query_graph("next_recommended")
5. Visualize the learning path   → get_learning_path("quadratic_formula")

License

MIT

來源:README.md,提交 2d39208

工具

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

版本歷史

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

評分

已滿足適用檢查項的 50%

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

  • 近 30 天內可連通25 分

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

  • 已宣告認證方式10 分

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

  • 已列出工具15 分

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

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