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
Visit Server

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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured