Skip to main content
Glama

brainforge-mcp

PyPI Python License: MIT

Turn your markdown notes into an AI-powered knowledge graph.

Andrej Karpathy's LLM Wiki pattern을 MCP 서버로 구현한 프로젝트입니다. 마크다운 위키를 지식 그래프로 변환하고, 어떤 LLM 클라이언트에서든 탐색·분석할 수 있습니다.

핵심 아이디어

[원본 자료]  →  [AI가 유지하는 위키]  →  [지식 그래프]  →  [LLM이 탐색·분석]
 논문, 기사       sources/                 graph.json       MCP 도구로 질의
 메모, 영상       concepts/                                  인과 관계 추적
                  entities/                                  건강 진단

MCP 도구가 하는 것: 지식 그래프 탐색, 노드 분석, 인과 관계 추적, 위키 건강 진단 LLM이 하는 것: 원본 읽기 → 요약 → 위키 페이지 생성 → 위키링크/인과 관계 삽입

즉, brainforge-mcp는 위키의 "눈" 역할이고, LLM은 위키의 "손" 역할입니다.


Related MCP server: vault-master-mcp

A-to-Z 예제: 논문 하나에서 지식 그래프까지

Step 0: 설치 + 초기화

uvx brainforge-mcp init ~/my-brain

생성되는 구조:

my-brain/
├── raw/              # 불변 원본 (사용자가 넣는 곳)
│   ├── papers/
│   ├── articles/
│   ├── transcripts/
│   └── notes/
├── wiki/             # AI가 유지하는 위키
│   ├── sources/
│   ├── concepts/
│   ├── entities/
│   ├── syntheses/
│   ├── index.md
│   └── log.md
└── output/           # 블로그, 포트폴리오 등

Step 1: MCP 클라이언트에 등록

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "wiki": {
      "command": "uvx",
      "args": ["brainforge-mcp", "--vault", "~/my-brain/wiki"]
    }
  }
}

Kiro / Cursor / VS Code (mcp.json):

{
  "mcpServers": {
    "wiki": {
      "command": "uvx",
      "args": ["brainforge-mcp", "--vault", "~/my-brain/wiki"]
    }
  }
}

Step 2: 원본 자료 넣기

논문 PDF를 마크다운으로 변환하여 raw/papers/에 저장합니다:

# 예: marker로 PDF → 마크다운 변환
marker_single "lora-paper.pdf" --output_dir ~/my-brain/raw/papers/

또는 웹 기사를 직접 마크다운으로 저장:

<!-- raw/articles/2026-04-17_lora-explained.md -->
---
title: "LoRA 논문 쉽게 설명하기"
source: https://example.com/lora
date: 2026-04-17
type: article
---

# LoRA 논문 쉽게 설명하기
LLM의 가중치를 Freeze하고 저랭크 행렬만 학습하여...

Step 3: LLM에게 인제스트 요청 (LLM이 하는 일)

채팅에서:

"raw/articles/2026-04-17_lora-explained.md를 읽고 위키에 인제스트해줘"

LLM이 원본을 읽고 다음 파일들을 생성합니다:

wiki/sources/lora-explained.md (소스 요약):

---
title: "LoRA 논문 쉽게 설명하기"
created: 2026-04-17
updated: 2026-04-17
tags: [LoRA, Fine-Tuning, PEFT]
sources: [raw/articles/2026-04-17_lora-explained.md]
---

# LoRA 논문 쉽게 설명하기

## Kernel
모델 가중치를 Freeze하고 저랭크 행렬만 학습하여 VRAM 절감.

## 핵심 주장
1. Fully Fine-Tuning 대비 VRAM 대폭 절감
2. 성능은 동등하거나 우수
...

wiki/concepts/lora.md (개념 페이지):

---
title: LoRA (Low-Rank Adaptation)
created: 2026-04-17
updated: 2026-04-17
tags: [개념, Fine-Tuning, PEFT]
sources: [raw/articles/2026-04-17_lora-explained.md]
---

# LoRA (Low-Rank Adaptation)

## Kernel
가중치 행렬 W를 직접 업데이트하지 않고, 저랭크 행렬 LoRA_A·LoRA_B만 학습.

> [!causal] 인과 관계
> [[lora]] →(가능하게 함)→ [[fine-tuning]]의 효율적 수행
> 신뢰도: 높음 | 출처: [[lora-explained]]

## 관련
[[fine-tuning]], [[transformer]], [[quantization]]

Step 4: 그래프 빌드 (MCP 도구)

채팅에서:

"위키 그래프 재빌드해줘"

→ rebuild_graph 도구가 호출되어 wiki/ 마크다운에서 위키링크 + 인과 관계를 파싱하여 graph.json 생성.

Step 5: 지식 탐색 (MCP 도구)

이제 그래프가 있으므로 탐색이 가능합니다:

"LoRA가 내 위키에서 어떤 위치야?"

→ explain_node("LoRA") 호출:

## LoRA (Low-Rank Adaptation)
카테고리: concepts | 태그: Fine-Tuning, PEFT

### 위치 분석
- 연결도: 9 (상위 26%) → 중간 연결자
- 인과 역할: 기반 기술 — 다른 1개 개념을 가능하게 함

### 인과 요약
- LoRA →(가능하게 함)→ Fine-Tuning의 효율적 수행

### 성장 제안
- 인과 관계 callout 추가 권장 (현재 1개)
"위키 상태 어때?"

→ graph_summary() 호출:

## 위키 건강 리포트

### 규모: 초기 단계
- 실제 페이지: 5개 (concepts 2, sources 1, entities 1)
- 밀도: 2.4 엣지/노드 → 낮은 밀도 — 위키링크 추가 권장

### 약점
- 미해결 노드 3개 (37.5%)
- 인과 비율 5.0% — callout 추가 권장

### 다음 행동
1. 미해결 페이지 생성: transformer(2연결), quantization(1연결)

특징

  • 🔗 위키링크 + 인과 관계 기반 지식 그래프 자동 빌드

  • 🧠 의미 해석 — "연결 9개"가 아닌 "상위 26% 중간 연결자" 같은 맥락 분석

  • 📊 건강 진단 — 위키의 강점/약점/다음 행동을 구체적으로 제안

  • ⚡ 인과 체인 추적 — 개념 간 "왜" 연결을 상류/하류로 분석

  • 🔌 MCP 표준 — Claude Desktop, Cursor, Kiro, VS Code 등 어디서든 동작

도구 목록

도구

설명

누가 호출?

explain_node

노드 프로파일 — 위치 분석, 인과 역할, 성장 제안

LLM이 자동 호출

find_path

두 개념 간 최단 경로 — 연결 강도, 매개 노드 해석

LLM이 자동 호출

causal_chain

인과 네트워크 — 상류/하류, 관계 자연어 해석

LLM이 자동 호출

graph_summary

위키 건강 리포트 — 규모, 밀도, 행동 제안

LLM이 자동 호출

rebuild_graph

그래프 재빌드 — 마크다운 변경 후 갱신

LLM이 자동 호출

참고: 위키 페이지 생성/수정은 MCP 도구가 아닌 LLM이 직접 파일을 작성합니다. brainforge-mcp는 "읽기 + 분석" 전문이고, "쓰기"는 LLM의 역할입니다.

인과 관계 표기

위키링크([[]])는 연결만 표현합니다. "왜" 연결되는지는 인과 callout으로 명시합니다:

> [!causal] 인과 관계
> [[메타러닝]] →(가능하게 함)→ [[DiscoRL]]의 RL 규칙 자동 발견
> 신뢰도: 높음 | 출처: [[discovering-sota-rl-algorithms]]

지원하는 관계 유형:

  • →(가능하게 함)→ / →(성능 향상)→ / →(성능 저하)→

  • →(기반이 됨)→ / →(발전시킴)→ / →(대체함)→

  • →(포함함)→ / →(적용됨)→

기존 옵시디언 볼트에 적용

이미 옵시디언을 사용 중이라면 wiki/ 폴더를 볼트 안에 만들고 --vault 옵션으로 지정하면 됩니다. 기존 [[위키링크]]를 자동으로 파싱합니다.

라이선스

MIT


Inspired by Andrej Karpathy's LLM Wiki idea.

Available Tools

5 tools
causal_chainC

특정 노드와 관련된 모든 인과 관계를 조회한다.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes검색할 노드 이름 또는 ID

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. The description states it 'retrieves all causal relationships' but doesn't specify whether this is a read-only operation, what permissions might be required, whether there are rate limits, what format the relationships are returned in, or if there are any side effects. For a tool with no annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently states the tool's purpose without unnecessary words. It's front-loaded with the core action ('retrieves') and resource ('causal relationships'). While concise, it could be slightly more informative given the lack of annotations and sibling tools, but it doesn't waste space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is an output schema (which should cover return values), no annotations, and a simple input schema with full coverage, the description is minimally adequate. However, it doesn't address behavioral aspects like safety or performance, nor does it differentiate from sibling tools. For a tool with no annotations, it should provide more context about what 'retrieves' entails operationally.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'query' documented as 'node name or ID to search for'. The description adds no additional meaning beyond what the schema provides—it doesn't clarify what constitutes a valid node name/ID, provide examples, or explain how the query is processed. With high schema coverage, the baseline is 3, and the description doesn't enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the purpose as 'retrieves all causal relationships related to a specific node' which is clear but somewhat vague. It specifies the verb 'retrieves' and resource 'causal relationships', but doesn't distinguish from sibling tools like 'explain_node' or 'find_path' which might also retrieve node-related information. The purpose is understandable but lacks specificity about what makes this tool unique.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'explain_node', 'find_path', 'graph_summary', or 'rebuild_graph', nor does it specify scenarios where this tool is appropriate versus when other tools should be used. There's no indication of prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

explain_nodeC

노드의 상세 정보와 연결 관계를 조회한다. 노드 이름이나 ID의 일부를 입력하면 해당 노드의 카테고리, 파일 경로, 태그, 나가는/들어오는 엣지 목록을 반환한다.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes검색할 노드 이름 또는 ID (부분 매칭 지원)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states this is a retrieval/query operation (조회한다) and mentions partial matching support, but doesn't address important behavioral aspects like whether this requires authentication, has rate limits, returns paginated results, or what happens with ambiguous matches. For a query tool with zero annotation coverage, this leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that efficiently convey the tool's purpose and what it returns. The first sentence states the core function, and the second provides additional details about input and output. There's no wasted text, though it could be slightly more structured for optimal front-loading.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which should document return values), the description doesn't need to explain return format details. However, for a query tool with no annotations, the description should provide more behavioral context about how the tool operates (e.g., search behavior, error cases, performance characteristics). The current description is adequate but leaves room for improvement given the complexity of graph query operations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, with the single parameter 'query' well-documented in the schema itself. The description adds that it accepts '노드 이름이나 ID의 일부' (partial node names or IDs) and that it supports '부분 매칭' (partial matching), which provides useful context about the parameter's semantics beyond the schema's basic description. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '노드의 상세 정보와 연결 관계를 조회한다' (retrieves detailed information and connection relationships of a node). It specifies the verb (조회한다/retrieves) and resource (노드/node), but doesn't explicitly differentiate from sibling tools like 'find_path' or 'graph_summary' beyond mentioning it returns node details and edges.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'find_path' (which likely finds paths between nodes) or 'graph_summary' (which might provide overall graph statistics). It mentions what the tool does but gives no context about when it's the appropriate choice among the available sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_pathB

두 노드 사이의 최단 경로를 BFS로 탐색한다.

ParametersJSON Schema
NameRequiredDescriptionDefault
startYes시작 노드 이름 또는 ID
endYes도착 노드 이름 또는 ID

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the algorithm (BFS) but doesn't describe performance characteristics (e.g., time complexity for large graphs), what happens if no path exists, or output format details. For a path-finding tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean that directly states the tool's function without unnecessary words. It is front-loaded and wastes no space, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (graph path-finding), the description is minimal. It lacks details on output (though an output schema exists, which helps), error handling, and behavioral traits. With no annotations and a simple input schema, the description is adequate but leaves gaps in understanding how the tool behaves in edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with clear descriptions for both parameters ('start' and 'end' nodes). The description adds no additional parameter semantics beyond what the schema provides, such as node format examples or constraints. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '두 노드 사이의 최단 경로를 BFS로 탐색한다' (finds the shortest path between two nodes using BFS). It specifies the verb (탐색한다/finds), resource (경로/path), and algorithm (BFS). However, it doesn't explicitly differentiate from sibling tools like 'causal_chain' or 'explain_node', which might also involve path-related operations in a graph context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or contexts where BFS might be preferred over other algorithms, nor does it specify prerequisites or exclusions. The agent must infer usage from the tool name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

graph_summaryB

현재 위키 그래프의 전체 요약 통계를 반환한다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns summary statistics but doesn't specify what those statistics include (e.g., node count, edge density), whether it's a read-only operation, performance characteristics, or error conditions. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean that directly states the tool's function without unnecessary words. It is appropriately sized for a no-parameter tool and front-loads the core purpose ('현재 위키 그래프의 전체 요약 통계를 반환한다'). Every part of the sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (simple read operation with no parameters), the description is minimally adequate. It lacks details on what 'summary statistics' entail, but the presence of an output schema means the description doesn't need to explain return values. However, with no annotations and incomplete behavioral context, it leaves gaps for the agent to understand the tool's full behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details beyond the schema, but since there are no parameters, a baseline score of 4 is appropriate as it doesn't need to compensate for any gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '현재 위키 그래프의 전체 요약 통계를 반환한다' (returns summary statistics of the current wiki graph). It specifies the verb ('반환한다' - returns) and resource ('위키 그래프' - wiki graph), distinguishing it from siblings like 'find_path' or 'explain_node'. However, it doesn't explicitly differentiate from 'rebuild_graph' or 'causal_chain' in terms of scope or output type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, context for usage, or comparisons to sibling tools like 'explain_node' (for detailed node info) or 'find_path' (for graph traversal). The agent must infer usage based solely on the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rebuild_graphB

위키 마크다운을 파싱하여 그래프를 재빌드한다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool parses wiki markdown and rebuilds a graph, but it does not disclose critical traits such as whether this is a read-only or destructive operation, what permissions are required, how long it takes, or any rate limits. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Korean that directly states the tool's action. It is front-loaded with the core purpose and has no wasted words, making it highly concise and well-structured for its purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally complete. However, it lacks details on behavioral aspects (e.g., whether it's destructive or read-only) and usage context, which are important for a tool that rebuilds a graph. The output schema may cover return values, but the description should still provide more context about the operation's nature and when to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, meaning no parameters are documented in the schema. The description does not add parameter details, which is appropriate since there are none. The baseline for 0 parameters is 4, as the description does not need to compensate for missing parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool's purpose: parsing wiki markdown to rebuild a graph. This is clear but vague about what 'rebuild' entails and doesn't distinguish it from sibling tools like 'graph_summary' or 'explain_node', which might also involve graph operations. It specifies the resource (wiki markdown) and action (parse and rebuild graph) but lacks specificity about the scope or outcome.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention any context, prerequisites, or exclusions, and it fails to differentiate from sibling tools such as 'graph_summary' (which might summarize a graph) or 'find_path' (which might navigate a graph). This leaves the agent without clear usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedcausal_chain
    • First observedexplain_node
    • First observedfind_path
    • First observedgraph_summary
    • First observedrebuild_graph

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: causal_chain retrieves causal relationships, explain_node provides node details, find_path finds paths between nodes, graph_summary gives overall statistics, and rebuild_graph rebuilds the graph. An agent can easily tell them apart based on their specific functions.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with clear verb_noun structures (e.g., causal_chain, explain_node, find_path, graph_summary, rebuild_graph). The naming is uniform and predictable throughout the set.

Tool Count5/5

With 5 tools, the count is well-scoped for a wiki graph management server. Each tool serves a distinct and necessary function, covering key operations like querying, explaining, pathfinding, summarizing, and rebuilding without being excessive or insufficient.

Completeness4/5

The tool set provides strong coverage for core wiki graph operations, including querying nodes and relationships, pathfinding, and graph maintenance. A minor gap exists in update or delete operations for nodes or edges, but agents can work around this using rebuild_graph for modifications.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    F
    maintenance
    An MCP server that integrates the zk note-taking system with LLMs, enabling users to search, read, create, and manage notes. It provides tools for link analysis, tag management, and complex note queries to interact with local knowledge bases.
    5
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that treats Obsidian vaults as knowledge graphs, enabling AI agents to traverse wikilinks, assemble token-budgeted context, and search with backlink awareness.
    3 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for persistent, compounding markdown wikis maintained by LLMs. Enables incremental knowledge base building with interlinked pages, search, and raw source management.
    36 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that turns a Markdown folder (e.g. Obsidian vault) into a second brain, capturing readings and ideas, connecting them as concepts, and resurfacing related notes on demand.
    28 npm
    MIT