LifeLogMCP
README.md
# Obsidian LifeLog連携(Step 2)
Obsidian Vault内の指定日のDaily Noteと、その `#### タスクリスト` セクションにある未完了タスクを読み取るTypeScriptプロジェクトです。
この段階ではMCP Server化もファイル書き込みも行いません。`get_daily_note` と `list_incomplete_tasks` に相当する読み取り処理だけを実装しています。
## 前提
- Node.js 20以上
- Daily Noteのファイル名は `YYYY-MM-DD.md`
- `.env` の `DAILY_NOTE_DIR` はVault内のフォルダ
## 初期設定
依存パッケージをインストールします。
```bash
npm install
```
`.env.example` を参考に `.env` を用意します。このプロジェクトには、最初の動作確認用として `DAILY_NOTE_DIR=TestDaily` を設定済みです。
`.env` は `.gitignore` に含まれているため、Git管理対象になりません。
## Daily Noteを読み取る
```bash
npm run get-daily-note -- 2026-08-18
```
この設定では、次のファイルをUTF-8で読み取って表示します。
```text
/Users/ogawatakahisa/Desktop/Obsidian/TestDaily/2026-08-18.md
```
ファイルの作成・更新・削除は行いません。
## 未完了タスクを読み取る
```bash
npm run list-incomplete-tasks -- 2026-08-18
```
`#### タスクリスト` から `- [ ]` の行だけを取得し、タスク本文と元ファイル上の行番号を表示します。A / B / Cセクションは対象外です。`- [x]` と `- [X]` は完了済みとして除外します。
`#### タスクリスト` が存在しない場合や空の場合は、エラーではなく未完了タスク0件として扱います。
## テスト
```bash
npm test
```
型チェックとテストをまとめて実行する場合:
```bash
npm run check
```
テストはOSの一時フォルダに専用Vaultを作って実行し、実際のObsidian Vaultには書き込みません。
# LifeLogMCP
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues