Skip to main content
Glama
Semiotronika

NOUZ MCP Server

by Semiotronika

NOUZ — 지식 베이스를 위한 의미론적(Semantic) MCP 서버

Obsidian, Logseq 및 모든 Markdown 파일 디렉토리와 함께 작동합니다.

구조는 내용으로부터 나타납니다.

지식 베이스, 프로젝트 메모리 및 AI 에이전트를 위한 의미론적 도구입니다.

MIT License Python 3.10+ MCP PyPI

🇬🇧 영어 버전


Nouz가 필요한 이유

폴더는 파일이 어디에 있는지 보여주지만, 데이터베이스 내의 문서, 아이디어, 자료들이 어떻게 연결되어 있는지 에이전트에게 설명해주지는 않습니다.

NOUZ는 에이전트에게 의미론적 좌표를 제공합니다. 각 노트는 도메인 기호, 계층 구조 내의 레벨, 그리고 다른 노트들과의 연결 고리를 부여받습니다. 도메인은 파일 내용에서 직접 할당되거나, 엄격한 계층 구조를 원하는 경우 사용자가 직접 할당할 수 있습니다.


Related MCP server: Semantic Mesh Memory (SEM) MCP Server

주요 기능

NOUZ는 귀하의 노트 데이터베이스와 AI 에이전트 사이의 중간 계층 역할을 합니다. 분산된 Markdown 파일들을 MCP를 통해 작업할 수 있는 그래프로 변환하도록 돕습니다:

  1. 자동 분류 (의미론적) 데이터베이스의 기본 도메인인 "핵심(Cores)"을 설정합니다(예: Systems Analysis, Data & Science, Engineering). 새 노트를 추가하면 NOUZ가 텍스트를 읽고 벡터를 비교하여 도메인 기호나 도메인 조합을 제안합니다.

  2. 노트 간 연결 검색 서버는 방향성 비순환 그래프(DAG)를 구축하고, 저장하기 전에 검토할 수 있는 연결을 제안합니다:

    • 의미론적 브리지: 서로 다른 도메인의 두 노트가 동일한 아이디어를 가리키는 경우.

    • 태그 브리지: 노트들이 태그 수준에서 공통된 숨겨진 개념을 가지고 있는 경우.

  3. **데이터베이스 진화 추적 (드리프트) NOUZ는 데이터를 상향식으로 집계합니다. 모듈이 하나의 도메인으로 시작했으나 새 노트들이 점차 다른 도메인으로 이끄는 경우, 서버가 편차(core_drift)를 보여줍니다.

작업 성격에 따라 NOUZ는 단순 그래프(LUCA)부터 엄격한 5단계 계층 구조(SLOI)까지 세 가지 모드로 작동합니다.


작동 원리

  1. config.yaml에 도메인을 설명합니다. 각 도메인이 어떤 영역을 다루는지, 텍스트의 어떤 특징으로 식별할지 정의합니다.

  2. 서버는 설명을 기준 벡터로 변환합니다(LM Studio 또는 Ollama를 통해 로컬에서 수행).

  3. 각 새 노트는 이 축들에 투영됩니다. 기호는 내용에 의해 결정되거나 사용자가 결정합니다.

  4. L4는 텍스트 분류에서 도메인 프로필을 받고, L3/L2는 하위 노드에서 core_mix를 수집합니다. 모듈의 signcore_mix와 다르면 서버가 core_drift를 보고합니다.

두 가지 유형의 브리지가 서로 다른 도메인의 노트 간 연결을 찾습니다: 의미론적(텍스트가 유사함) 및 태그(개념이 교차함).


빠른 시작

pip install nouz-mcp
OBSIDIAN_ROOT=/path/to/vault nouz-mcp

config.yaml이 없으면 서버는 LUCA 모드(의미론적 기능이 없는 그래프)로 즉시 시작됩니다.

의미론적 모드를 활성화하려면 템플릿에서 로컬 설정을 생성하세요:

cp config.template.yaml config.yaml

Windows PowerShell에서:

Copy-Item config.template.yaml config.yaml

또는 소스 코드에서:

git clone https://github.com/Semiotronika/NOUZ-MCP
cd NOUZ-MCP
pip install -r requirements.txt
cp config.template.yaml config.yaml
OBSIDIAN_ROOT=./vault python server.py

Claude Desktop, Cursor, Opencode 또는 모든 MCP 클라이언트에 연결:

{
  "mcpServers": {
    "nouz": {
      "command": "nouz-mcp",
      "env": {
        "OBSIDIAN_ROOT": "/path/to/vault",
        "NOUZ_CONFIG": "/absolute/path/to/config.yaml",
        "EMBED_API_URL": "http://127.0.0.1:1234/v1"
      }
    }
  }
}

MCP 도구

도구

용도

suggest_metadata

기호, 레벨, 브리지, 드리프트 경고

write_file

YAML 마크업이 포함된 노트 작성

update_metadata

노트 텍스트를 변경하지 않고 YAML만 업데이트

read_file

노트 + 메타데이터 읽기

calibrate_cores

핵심 기준 벡터 업데이트

recalc_signs

모든 노트의 기호 재계산

recalc_core_mix

상향식 집계 재계산

index_all

전체 데이터베이스 재인덱싱

embed

텍스트에 대한 벡터 획득

list_files

레벨, 기호별 필터링된 파일 목록

get_children

그래프 하위로 이동

get_parents

그래프 상위로 이동

suggest_parents

고아 노드를 위한 부모 찾기

add_entity

한 단계로 엔티티 생성 (자동 sign, tags, parents)

process_orphans

마크업이 없는 파일 자동 채우기


구성

최소 config.yaml 예시:

mode: prizma

etalons:
  - sign: S
    name: Systems Analysis
    text: >
      Methodology for analysing complex objects: feedback loops,
      emergent properties, self-regulation, bifurcation points.
      Cybernetics, synergetics, dissipative structures, catastrophe
      theory, autopoiesis — tools for understanding how the whole
      exceeds the sum of its parts. Not data and not code — a way
      of thinking about how parts form a whole and why systems
      behave non-linearly.
  - sign: D
    name: Data & Science
    text: >
      Physics and cosmology: from subatomic particles to the large-scale
      structure of the Universe. Lagrangians, curvature tensors, scattering
      cross-sections, quarks, bosons, fermions, plasma, vacuum fluctuations,
      cosmic microwave background, cosmological constant, decoherence.
      Pure science about the nature of matter, energy and spacetime.
  - sign: E
    name: Engineering
    text: >
      Software engineering, machine learning and infrastructure: writing
      and debugging code, deployment, containerisation, neural networks,
      inference, tokenisation, data serialisation, microservices, CI/CD,
      automated testing, refactoring, Git, Docker, Kubernetes, APIs.
      The practical discipline of building computational systems from
      architecture to production.

thresholds:
  sign_spread: 0.05
  confident_spread: 60.0
  pattern_second_sign_threshold: 30.0
  semantic_bridge_threshold: 0.55
  parent_link_threshold: 0.55

artifact_signs:
  - sign: n
    name: Note
    text: Short note, observation, fragment.
  - sign: c
    name: Concept
    text: Definition, concept, entity description.
  - sign: r
    name: Reference
    text: External source, documentation, link, citation.
  - sign: l
    name: Log
    text: Session log, chronology, dialogue record.
  - sign: u
    name: Update
    text: Update, release note, changelog entry.
  - sign: h
    name: Hypothesis
    text: Hypothesis, assumption, speculative idea.
  - sign: s
    name: Specification
    text: Technical specification, instruction, requirements.

설정 후 calibrate_cores를 실행하면 서버가 기준 벡터를 생성합니다. 쌍별 코사인 유사도를 확인하세요: 서로 다른 도메인 간의 평균 중심(mean-centered) 값은 원본보다 현저히 낮아야 합니다. 모든 쌍이 비슷하다면 텍스트의 차이를 강화하세요.

etalons는 임베딩을 통해 비교되는 의미론적 도메인입니다. artifact_signs는 L5 아티팩트의 자료 유형입니다: 노트, 개념, 링크, 로그, 업데이트, 가설 또는 사양. 이는 임베딩을 위한 별도의 기준이 아닌 휴리스틱 라벨입니다. 공개 스키마에서 도메인은 일반적으로 대문자(S/D/E)로, 자료 유형은 소문자(n/c/r/l/u/h/s)로 표시됩니다. 기호가 짧고 도메인과 충돌하지 않는다면 설정에서 변경할 수 있습니다. 필요한 경우 모든 유형에 대해 keywords를 추가할 수 있으며, 이 경우 서버는 내장된 RU/EN 세트 대신 사용자의 단어를 휴리스틱으로 사용합니다.

실제 계산 예시

text-embedding-granite-embedding-278m-multilingual 모델을 사용한 S/D/E 기준의 실제 결과입니다:

=== Pairwise Cosine (raw) ===
S↔D: 0.5894    S↔E: 0.5862    D↔E: 0.6022

=== Pairwise Cosine (mean-centered) ===
S↔D: -0.5059   S↔E: -0.5117   D↔E: -0.4822

여기서 음수의 평균 중심 값은 좋은 결과입니다: 평균 벡터를 뺀 후 도메인들이 잘 분리됩니다. 자가 분류: S→99.4%, D→97.5%, E→96.9%.

변수

기본값

설명

OBSIDIAN_ROOT

./obsidian

저장소 경로

NOUZ_CONFIG

(비어 있음)

config.yaml의 절대 경로; 설정되지 않으면 현재 디렉토리에서 검색

NOUZ_DATABASE_NAME

obsidian_kb.db

OBSIDIAN_ROOT 내의 SQLite 캐시 파일 이름; 격리된 테스트에 유용

NOUZ_DATABASE_PATH

(비어 있음)

SQLite 캐시의 전체 경로; NOUZ_DATABASE_NAME보다 우선

EMBED_PROVIDER

openai

openai, lmstudio, ollama

EMBED_API_URL

http://127.0.0.1:1234/v1

임베딩 엔드포인트

EMBED_API_KEY

(비어 있음)

필요한 경우 API 키

EMBED_MODEL

(비어 있음)

모델 이름


개인정보 보호

구성 요소

로컬 여부?

임베딩 (LM Studio / Ollama)

✅ 예

귀하의 노트

✅ 예

NOUZ 서버

✅ 예

AI 에이전트 컨텍스트 (Claude, ChatGPT)

❌ 클라우드로 전송

모든 중요한 데이터는 귀하의 컴퓨터에 남습니다.


개발

git clone https://github.com/Semiotronika/NOUZ-MCP
cd NOUZ-MCP
pip install -e .
python test_server.py

링크

MIT License © 2026 Semiotronika

코사인은 계산됩니다. 구문은 변합니다. 의미는 남습니다.

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
4dResponse time
2dRelease cycle
25Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.

  • Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.

  • MCP server for URL shortening and management

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Semiotronika/NOUZ-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server