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 分