learnlog-mcp

learnlog-mcp

An MCP server that locally saves and categorizes user prompts from LLM sessions to facilitate metacognition and track learning progress. It provides tools to review study history, analyze question types, and calculate learning depth scores based on the nature of inquiries.

Category
访问服务器

README

learnlog-mcp

LLM 학습 세션의 프롬프트를 로컬에 저장하여 메타인지를 돕는 MCP 서버

만들게 된 이유

LLM으로 공부하면서 계속 드는 의문이 있었습니다.

"나 이거 정말 아는 건가?"

AI의 설명을 읽으면 이해가 되는 것 같습니다. 고개를 끄덕이고, "아 그렇구나" 하고 넘어갑니다. 그런데 며칠 뒤 팀원에게 같은 개념을 설명하려고 하면 입이 잘 떨어지지 않습니다. 분명 여러 번 봤는데, 막상 말로 하려니 추상적인 느낌만 남아있습니다.

그때 깨달았습니다. 이해한 것 같은 느낌진짜 이해는 다르다는 것을.

LLM과 대화하면서 "알게 됐다"고 착각하기 쉽습니다. 하지만 내가 무엇을 물어봤는지 돌아보면, 실제로 어디서 막혔는지가 보입니다. 질문의 흐름을 보면 내 이해의 빈틈이 드러납니다.

그래서 만들었습니다. 내가 한 질문들을 가볍게 저장해두고, 나중에 돌아볼 수 있는 도구. AI의 긴 답변이 아니라, 내 짧은 질문들만 모아두면 충분합니다.

저는 이 도구를 활용해서 DevOps와 오픈소스 생태계를 깊이 파보려 합니다.

왜 프롬프트를 저장하는가?

LLM으로 학습할 때 우리는 보통 출력값(AI의 답변)을 노션이나 메모장에 저장합니다. 하지만 생각해보면:

  • 같은 프롬프트를 주면 비슷한 답변을 언제든 다시 얻을 수 있습니다
  • 출력값은 길고 무겁지만, 프롬프트는 짧고 가볍습니다
  • 내가 무엇을 물어봤는지가 곧 내가 무엇을 모르는지입니다
기존 방식: 세션 → AI 답변 복사 → 노션에 저장 → 나중에 찾기 어려움

learnlog 방식: 세션 → 프롬프트 자동 저장 → "오늘 뭐 공부했지?" → 즉시 확인

프롬프트를 저장하면 내가 어떤 부분에서 막혔는지, 무엇이 궁금했는지를 파악할 수 있습니다. 이것이 진짜 메타인지입니다.

핵심 철학

  1. 입력 > 출력: 출력값이 아닌 프롬프트를 저장합니다
  2. 경량화: 무거운 답변 대신 가벼운 질문만 보관합니다
  3. 메타인지: "내가 뭘 물어봤지?"를 통해 학습 현황을 파악합니다
  4. 세션 독립: 어떤 LLM, 어떤 세션에서든 학습 기록이 하나로 모입니다

설치

1. 저장소 클론 및 빌드

git clone https://github.com/YUJAEYUN/learnlog-mcp.git
cd learnlog-mcp
npm install
npm run build

2. Claude Code에 등록

claude mcp add learnlog-mcp node /path/to/learnlog-mcp/dist/index.js

3. Claude Desktop에 등록 (선택)

~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "learnlog-mcp": {
      "command": "node",
      "args": ["/path/to/learnlog-mcp/dist/index.js"]
    }
  }
}

사용법

자동 저장

학습 관련 질문을 하면 AI가 자동으로 프롬프트를 저장합니다. 별도로 "저장해줘"라고 말할 필요 없습니다.

학습 기록 확인

"오늘 뭐 공부했지?"
"오늘 뭐 물어봤지?"

→ 오늘 저장된 모든 프롬프트를 시간순으로 보여줍니다

특정 날짜 조회

"2025-12-20에 뭐 공부했어?"

최근 학습 현황

"최근 일주일 학습 현황 보여줘"

→ 날짜별 질문 개수를 요약해서 보여줍니다

저장 위치

~/learnlog/
└── prompts/
    ├── 2025-12-20.json
    ├── 2025-12-21.json
    └── 2025-12-22.json

각 파일에는 해당 날짜의 프롬프트가 질문 타입과 함께 저장됩니다:

{
  "date": "2026-01-13",
  "summary": {
    "total": 5,
    "byType": {
      "fact": 2,
      "principle": 1,
      "application": 1,
      "comparison": 0,
      "connection": 1
    },
    "depthScore": 1.8
  },
  "prompts": [
    {
      "prompt": "N+1 쿼리 문제가 뭐야?",
      "timestamp": "2026-01-13T10:30:00.000Z",
      "type": "fact"
    },
    {
      "prompt": "왜 N+1이 성능 문제를 일으키는 거야?",
      "timestamp": "2026-01-13T10:35:00.000Z",
      "type": "principle"
    }
  ]
}

질문 타입

시스템은 자동으로 질문을 5가지 타입으로 분류합니다:

  • fact (1점): 사실/정의 질문 - "N+1 쿼리가 뭐야?"
  • principle (3점): 원리/이유 질문 - "왜 N+1이 문제가 돼?"
  • application (2점): 적용/실습 질문 - "eager loading을 어떻게 구현해?"
  • comparison (2점): 비교 질문 - "eager vs lazy loading 차이는?"
  • connection (3점): 연결 질문 - "ORM과 쿼리 최적화는 어떻게 연관돼?"

학습 깊이 점수

각 질문 타입의 점수를 평균내어 학습 깊이를 측정합니다:

  • 1.0-1.5: 표면적 학습 (주로 개념 익히기)
  • 1.5-2.0: 보통 학습 (균형잡힌 접근)
  • 2.0-2.5: 깊이 있는 학습 (원리 탐구)
  • 2.5-3.0: 매우 깊은 학습 (개념 연결)

도구 목록

MCP Tools

도구 설명
save_prompt 프롬프트 저장 (AI가 자동 호출)
get_today_prompts 오늘의 질문 목록 조회
get_prompts_by_date 특정 날짜 질문 조회
get_recent_prompts 최근 N일 학습 현황
get_learning_stats 학습 통계 및 깊이 분석

Claude Skills

Skill 설명 사용법
/review 학습 리뷰 및 메타인지 강화 "오늘 공부 리뷰해줘"

Claude Skills를 사용하려면 skills/ 폴더를 Claude Skills 디렉토리에 추가하세요.

활용 예시

1. 학습 통계 확인

사용자: 오늘 학습 통계 보여줘

AI: 📊 2026-01-13 학습 통계

총 질문 수: 27개

질문 타입 분포:
  • fact: 8개 (30%)
  • principle: 5개 (19%)
  • application: 4개 (15%)
  • comparison: 6개 (22%)
  • connection: 4개 (15%)

학습 깊이 점수: 2.0/3.0 (깊이 있는 학습)

💡 Tip:
- fact: 사실/정의 질문 (1점)
- comparison: 비교 질문 (2점)
- application: 적용/실습 질문 (2점)
- principle: 원리/이유 질문 (3점)
- connection: 연결 질문 (3점)

2. 일일 학습 리뷰 (Skills)

사용자: 오늘 공부 리뷰해줘

AI: 📝 오늘의 학습 리뷰

[학습 통계 요약]
- 총 27개 질문
- 학습 깊이: 2.0/3.0 (깊이 있는 학습)

[질문 타입 분석]
오늘은 균형잡힌 학습이었습니다.
특히 비교 질문(22%)을 통해 개념 간 차이를 명확히 하려는 노력이 보입니다.
원리 질문도 적절히 섞여있어 단순 암기가 아닌 이해 중심 학습이었네요.

[학습 패턴]
VPC → NAT → IGW로 이어지는 깊은 탐구 체인이 있었습니다.
같은 주제를 여러 각도에서 질문하며 완전히 이해하려는 모습이 인상적입니다.

[다음 학습 제안]
1. 오늘 배운 AWS 네트워크를 직접 실습해보세요 (application 강화)
2. VPC와 온프레미스 네트워크의 연결 방식을 탐구해보세요 (connection 확장)

계속 이런 깊이로 학습하시면 탄탄한 기반이 만들어질 거예요! 👍

3. 질문 목록 확인

사용자: 오늘 뭐 공부했지?

AI: 📝 오늘의 질문 (5개)

1. [10:30] N+1 쿼리 문제가 뭐야?
2. [10:35] eager loading은 어떻게 구현해?
3. [14:20] 인덱스는 언제 걸어야해?
4. [14:45] 복합 인덱스 순서가 중요한 이유?
5. [16:00] EXPLAIN ANALYZE 결과 해석법?

→ 오늘 데이터베이스 최적화에 대해 공부했구나!

4. 학습 패턴 파악

사용자: 최근 일주일 현황 보여줘

AI: 📊 최근 7일간 학습 기록

• 2026-01-13: 27개 질문
• 2026-01-11: 13개 질문
• 2026-01-10: 12개 질문
• 2026-01-09: 7개 질문
• 2026-01-08: 19개 질문

총 78개 질문

5. 이전 학습 이어가기

사용자: 1월 8일에 뭐 물어봤었지?

AI: 📝 2026-01-08의 질문 (19개)

1. [09:00] Docker Compose 설정 방법
2. [09:15] Docker 네트워크 구조
...

→ 아, Docker 공부했었지. 이어서 질문해야겠다!

마이그레이션

기존 데이터를 새 스키마로 마이그레이션하려면:

npm run build
node dist/scripts/migrate.js

마이그레이션 후 백업 파일(.old)이 생성됩니다. 확인 후 삭제하세요:

rm ~/learnlog/prompts/*.old

License

ISC

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选