Uses Express.js to expose Obsidian and Markdown functionality through HTTP API endpoints
Accesses and manages Obsidian Vaults stored in iCloud, with the default path pointing to iCloud's Obsidian document storage
Provides tools for managing Markdown files, including listing files, searching content, and managing frontmatter metadata
Manages Obsidian Vaults by providing tools for generating vault statistics, retrieving notes, extracting links and TODOs, creating daily notes, and working with tags and backlinks
Markdown MCP Server
Obsidian Vault와 Markdown 파일을 관리하는 Model Context Protocol (MCP) 서버입니다. HTTP API를 통해 모든 Obsidian/Markdown 기능에 접근할 수 있습니다.
🚀 주요 기능
📊 Obsidian Vault 관리
- Vault 통계 생성: 전체 노트 수, 크기, 단어 수, 링크 수 등
- 노트 목록 조회: 카테고리별, 최근 수정/생성 순 정렬
- 링크 추출: 내부 링크, 외부 링크, 임베드, 태그 추출
- 백링크 찾기: 특정 노트를 참조하는 다른 노트들
- 태그 관리: 모든 태그 목록, 태그별 노트 검색
📝 데일리 노트 & 템플릿
- 데일리 노트 생성: 날짜별 자동 노트 생성
- 템플릿 관리: 생성, 조회, 목록, 삭제
- 데일리 노트 목록: 기간별 데일리 노트 조회
🔍 고급 검색
- Frontmatter 기반 검색: 메타데이터 필드로 노트 검색
- 내용 검색: 텍스트, 키워드, 정규식 검색
- 파일명 패턴 검색: 와일드카드, 정규식 지원
📋 TODO 관리
- TODO 추출: 모든 노트에서 TODO 작업 추출
- TODO 추가: 특정 노트에 TODO 작업 추가
- TODO 검색: 상태별, 우선순위별 검색
📁 파일 관리
- 파일 목록: 디렉토리별, 재귀적 검색
- 파일 통계: 크기, 단어 수, 링크 수 등
- 첨부파일 관리: 이미지, PDF 등 첨부파일 목록
🛠️ 기술 스택
- Node.js: 서버 런타임
- Express.js: HTTP 서버 프레임워크
- ObsidianManager: Obsidian Vault 관리 클래스
- MarkdownManager: Markdown 파일 관리 클래스
- gray-matter: Frontmatter 파싱
- glob: 파일 패턴 매칭
📦 설치 및 실행
1. 의존성 설치
2. 서버 실행
서버가 http://localhost:8080
에서 실행됩니다.
🌐 API 엔드포인트
기본 정보
GET /
- 서버 상태 확인GET /tools
- 사용 가능한 툴 목록
Obsidian 툴
POST /tools/obsidian/getAllTags
- 모든 태그 목록POST /tools/obsidian/generateVaultStats
- Vault 통계POST /tools/obsidian/getRecentlyModifiedNotes
- 최근 수정된 노트POST /tools/obsidian/getRecentlyCreatedNotes
- 최근 생성된 노트POST /tools/obsidian/extractTodos
- TODO 작업 추출POST /tools/obsidian/extractLinks
- 노트에서 링크 추출POST /tools/obsidian/createDailyNote
- 데일리 노트 생성
Markdown 툴
POST /tools/markdown/listFiles
- 파일 목록 조회POST /tools/markdown/searchContent
- 내용 검색POST /tools/markdown/manageFrontmatter
- Frontmatter 관리
📖 사용 예제
1. 서버 상태 확인
2. Vault 통계 가져오기
3. 최근 수정된 노트 목록
4. 특정 카테고리의 파일 목록
5. 내용 검색
6. TODO 작업 추출
🔧 설정
환경 변수
BASE_PATH
: Obsidian Vault 경로 (기본값:/Users/gukho/Library/Mobile Documents/iCloud~md~obsidian/Documents/My Card
)PORT
: 서버 포트 (기본값: 8080)
예시
📊 현재 Vault 통계
- 총 노트 수: 332개
- 총 크기: 1.5MB
- 총 단어 수: 172,203개
- 총 링크 수: 1,958개
- 총 태그 수: 1,006개
주요 카테고리
- Health (건강): 30개 노트
- 9. Diary (일기): 60개 노트
- Projects: 16개 노트
- 3. Study/Data Science: 25개 노트
🏗️ 프로젝트 구조
🧪 테스트
📝 개발 히스토리
v1.0.0 (2025-07-09)
- ✅ MCP SDK 기반 서버 구현
- ✅ HTTP 기반 서버로 전환 (Express.js)
- ✅ 모든 Obsidian/Markdown 기능 API 노출
- ✅ 실시간 Vault 통계 및 노트 관리
- ✅ TODO 관리, 데일리 노트, 템플릿 기능
- ✅ 고급 검색 및 Frontmatter 관리
🤝 기여하기
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
📄 라이선스
MIT License
🔗 관련 링크
This server cannot be installed
A server that provides HTTP API access to manage Obsidian Vaults and Markdown files, allowing users to access notes, statistics, links, templates, and search capabilities.
Related MCP Servers
- -securityAlicense-qualityEnables AI assistants to interact with Obsidian vaults, providing tools for reading, creating, editing and managing notes and tags.Last updated -319468TypeScriptMIT License
- -securityAlicense-qualityProvides a standardized interface for AI assistants to interact with Obsidian vaults through a local REST API, enabling reading, writing, searching, and managing notes.Last updated -51TypeScriptMIT License
- -securityAlicense-qualityA server implementation that allows AI assistants to read, create, and manipulate notes in Obsidian vaults through the Model Context Protocol.Last updated -8215TypeScriptMIT License
- -securityAlicense-qualityProvides an MCP server that allows AI assistants to interact with Obsidian vaults, enabling reading/writing notes, managing metadata, searching content, and working with daily notes.Last updated -25PythonMIT License