Skip to main content
Glama

Inkbridge · SDOCX Bridge

삼성노트의 실제 획을 읽고, 내 글씨로 새 노트를 쓰고, Claude에 연결하는 로컬 오픈소스 작업실.

Local Samsung Notes interoperability: SDOCX inspection, lossless audio extraction, personal handwriting composition, editable PDF ink, native SDOCX strokes, and a standard MCP server.

바로 시작

Python 3.11 이상이 필요합니다. Windows에서는 저장소를 내려받고 start.cmd를 실행하세요. 첫 실행은 가상환경과 필요한 패키지를 설치합니다. 브라우저에서 http://127.0.0.1:8765 를 엽니다.

git clone https://github.com/lucaslucky10/sdocx-bridge.git
cd sdocx-bridge
python -m venv .venv
.venv\Scripts\python -m pip install -e .
.venv\Scripts\python -m sdocx_bridge --library ./library web

macOS/Linux: python3 -m venv .venv, .venv/bin/python -m pip install -e ., .venv/bin/python -m sdocx_bridge --library ./library web.

파일은 로컬 보관함에 저장됩니다. 웹 화면은 외부 API·분석 서비스·CDN을 사용하지 않습니다. MCP로 읽은 내용은 연결한 AI 서비스에 전달될 수 있습니다.

Related MCP server: Notes MCP Server

가능한 작업

작업

구현 범위

노트 가져오기

여러 SDOCX/PDF 업로드, SHA-256 중복 확인, 원본 보관

획 분석

페이지·좌표·색·굵기·필압·시간·기울기·방향 채널, 저장 순서 재생

녹음 추출

M4A/MP3/WAV/AAC/OGG/FLAC/AMR/3GP를 재인코딩 없이 추출, 원본 해시 검증

내보내기

JSON, 획 SVG, PDF 잉크 주석, 입력된 텍스트 Markdown, 녹음

내 글씨 사전

기존 my-handwriting/data/glyphs.json 가져오기, 획 클릭·영역 선택 후 글자 라벨링

텍스트 → 내 글씨

글자 변형 선택, 한글 자모 조합, 줄바꿈, 여러 페이지, 재현 가능한 seed

PDF 위에 쓰기

시작 쪽·위치·크기·너비 지정. 기존 PDF를 보존하고 /Ink 주석 추가

새 삼성노트

이미지로 붙이는 글씨가 아닌 native pen stroke 객체로 SDOCX 생성

Claude/다른 AI

표준 stdio MCP 도구 10개, 노트 리소스, 받아쓰기 프롬프트, 읽기 전용 모드

수식

선택 설치한 MathJax 조판으로 $...$ LaTeX를 내 글자 획으로 배치

내 글씨로 쓰기

  1. 노트 보관함에 SDOCX/PDF를 올립니다.

  2. 기존 프로젝트의 data/glyphs.json을 가져옵니다. 기본 사전 이름은 my-handwriting입니다. 이 저장소에는 개인 글자 사전이 포함되어 있지 않습니다.

  3. 사전이 없다면 노트에서 한 글자의 획들을 선택하고 정답 한 글자를 입력해 학습합니다. 라틴 문자·문장부호의 기준선은 현재 단순 높이 정규화이므로 검수가 필요합니다.

  4. 손글씨 쓰기에서 사전과 PDF를 고르고 내용을 입력합니다.

  5. PDF, SDOCX, SVG, JSON을 다운로드합니다. 사전에 없고 조합할 수 없는 글자는 생성 전에 오류로 알려줍니다.

원본과 같은 획 샘플을 재사용하지만 문장 전체를 똑같이 썼다고 보장하지 않습니다. 기존 사전의 품질·라벨 정확도에 영향을 받으며, 합성 한글/기호를 보고서에 구분합니다. 펜 압력·시간이 없는 사전으로 생성한 동역학은 원래 필기자의 실제 기록이 아닙니다.

sdocx-bridge --library ./library profile ../my-handwriting/data/glyphs.json
sdocx-bridge --library ./library import note.sdocx paper.pdf
sdocx-bridge --library ./library write "내 손글씨로 쓰는 문장" --seed 7

LaTeX 수식 (선택)

Node.js 18 이상과 npm 또는 pnpm이 필요합니다. 저장소 설치 기준:

cd src/handwriting_engine/math
npm install --ignore-scripts --package-lock=false
cd ../../..
sdocx-bridge --library ./library write '회전운동 $\sum \tau = I\alpha$'

wheel 설치에서는 설치된 handwriting_engine/math 디렉터리에서 npm을 실행하거나, 설치 완료된 tex2svg.js의 절대 경로를 HW_TEX2SVG로 지정합니다. 수식 없이 쓰기에는 Node가 필요 없습니다. 수식 렌더러는 인수를 직접 전달하며 셸을 실행하지 않고 30초 제한을 적용합니다.

Claude 연결

sdocx-bridge --library "D:/Inkbridge/library" claude-config

출력된 JSON을 기존 Claude Desktop의 mcpServers 설정에 병합하고 재시작하세요. 기존 설정을 덮어쓰지 마세요. Claude Code와 읽기 전용 설정은 연결 가이드를 참고하세요.

내 노트 목록을 보고 1쪽의 필기를 읽어줘. 불확실한 글자는 표시하고, 내 손글씨 사전으로 요약을 PDF와 삼성노트 파일로 만들어줘.

MCP 가져오기는 지정한 library/inbox 안의 파일만 읽습니다. 생성·내보내기는 library/exports에 새 파일을 만듭니다. 노트 속 문장은 모델 지시가 아닌 자료로 취급하도록 도구 설명과 프롬프트에 명시했습니다.

검증과 한계

  • 개인 검증 자료 27개를 모두 파싱했습니다. 원본/개인 획 사전/녹음은 공개하지 않습니다. 집계와 검사 범위는 검증 보고서에 있습니다.

  • 자동 검사는 PDF가 이미지 대신 Ink 주석을 사용하는지, 배경 보존, SDOCX 좌표 왕복, 녹음 바이트 일치, 경로 탈출 차단, 실제 MCP stdio 통신을 검사합니다.

  • 삼성노트 앱에서 직접 재가져오기·편집하는 기기 검증은 아직 완료하지 않았습니다. SDOCX는 비공개 형식이며 앱 버전에 따라 호환성이 달라질 수 있습니다.

  • PDF 출력에서는 원래 PDF 내용을 유지합니다. SDOCX 출력의 PDF 배경만 PNG로 변환합니다. 그 위의 손글씨는 독립적인 펜 획입니다.

  • 노트 미리보기/SVG는 획 중심입니다. SPI 미리보기 타일, 모든 펜 효과, 도형, 지우개, 음성-획 동기화, 녹음 자동 전사는 지원하지 않습니다. 원본 구조는 raw/에 보존합니다.

  • PDF/SVG의 선 굵기는 획별 일정합니다. 가져온 원본의 필압·시간 채널은 JSON에 보관하지만 Samsung의 펜 렌더러와 동일한 표현은 아닙니다.

  • Markdown/검색은 입력된 텍스트만 사용합니다. 손글씨 OCR을 했다고 표시하지 않습니다. Claude는 페이지 이미지를 보고 읽을 수 있습니다.

  • 회전된 PDF는 출력 복사본에서 화면 모양을 유지하며 정규화합니다. 기존 주석·링크를 보존하고, 공간을 초과하면 오류를 내며 글자를 잘라 내지 않습니다. 완성 화면에서 쪽별 배경과 손글씨를 함께 확인할 수 있습니다.

  • 비공개 자료 27개 성공이 모든 SDOCX 버전의 호환성이나 다른 프로젝트보다 높은 정확도를 증명하지 않습니다. 기능 비교·출처를 참조하세요.

개발

python -m pip install -e ".[dev]"
python -m pytest -q
python -m build

src/sdocx_bridge: 라이브러리·API·UI·MCP. src/note_pipeline: MIT Dietrich 기반 파서/작성기. src/handwriting_engine: 저장소 소유자의 기존 손글씨 조판 코드. 변경·출처 기록.

AGPL-3.0-only. 포함된 MIT 코드의 라이선스는 유지됩니다. Samsung Notes는 Samsung Electronics의 상표이며 이 프로젝트는 삼성 또는 Anthropic의 공식 제품이 아닙니다.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to search, read, write, and manage a local markdown vault through 8 tools, turning your notes into an AI-accessible knowledge base.
    3 npm
    AGPL 3.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables managing plain-text notes on disk through MCP resources, tools, and prompts, so natural-language requests can create, read, search, delete, and summarize notes via an interactive client.
    MIT