Skip to main content
Glama
JM-404

ActivityWatch MCP Server

by JM-404

ActivityWatch를 통해 AI 어시스턴트에게 당신의 컴퓨터 활동에 대한 실시간 인식을 제공하는 MCP 서버입니다. 원시 쿼리나 AQL 구문은 필요 없습니다. AI에게 그저 *"오늘 내가 뭘 했지?"*라고 물어보기만 하면 사람이 읽을 수 있는 답변을 얻을 수 있습니다.

왜 이 프로젝트인가요?

다른 ActivityWatch MCP들도 존재합니다. 이 프로젝트가 다른 점은 다음과 같습니다:

이 프로젝트

기타

쿼리 인터페이스

사전 집계된 고수준 도구

원시 AQL 쿼리

AQL 지식 필요 여부

아니요

내장 카테고리

✅ 코딩, 브라우징, 커뮤니케이션 등

즉시 사용 가능한 도구

get_day_summary, get_current_activity

run_query(aql_string)

설계 목적

AI 동료 및 채팅 인터페이스

개발자 디버깅

요약: 다른 MCP들은 AI에게 데이터베이스 콘솔을 제공하지만, 이 프로젝트는 AI에게 을 제공합니다.

AI가 이 도구로 무엇을 할 수 있나요?

연결되면 AI 동료는 다음과 같은 질문에 답할 수 있습니다:

  • 🕐 "지금 내가 무엇을 작업 중이지?"

  • 📊 "오늘 시간을 어떻게 보냈지?"

  • 💻 "이번 주에 몇 시간 동안 코딩했지?"

  • 🌙 "어젯밤 몇 시에 작업을 마쳤지?"

  • 🔍 "어제 오후 2시부터 5시 사이에 내가 한 모든 일을 보여줘."

  • 🌐 "내가 가장 많은 시간을 보낸 웹사이트는 어디지?"

  • 📁 "이번 주에 어떤 프로젝트들을 작업했지?"

  • 🏷️ "Cursor를 코딩 카테고리에 추가해 줘."

AI는 당신이 말하는 것뿐만 아니라 당신이 하는 일을 압니다. 당신이 놓치기 쉬운 패턴(예: 5시간 동안 쉬지 않고 코딩한 경우 등)을 알아챌 수 있습니다.

빠른 시작

1. 사전 요구 사항

2. 설치

git clone https://github.com/JM-404/activitywatch-mcp.git
cd activitywatch-mcp
npm install && npm run build

3. 설정

Claude Desktop / Claude Code MCP 설정에 추가하세요:

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

4. 사용해 보기

Claude를 열고 물어보세요: "오늘 내 컴퓨터에서 무엇을 했지?"

그게 전부입니다. AQL도, 버킷 ID도 필요 없습니다. 그저 대화하세요.

도구

get_current_activity

"지금 내가 무엇을 하고 있지?"

현재 활성화된 앱, 창 제목, 지속 시간 및 AFK 상태를 반환합니다.

get_day_summary

"오늘 시간을 어떻게 보냈지?"

사용 시간별 상위 앱, 총 활성/AFK 시간, 첫 번째 및 마지막 활성 타임스탬프를 제공합니다.

매개변수: date (선택 사항, 기본값은 오늘)

get_category_time

"이번 주에 몇 시간 동안 코딩했지?"

특정 날짜 범위 동안 카테고리 또는 특정 앱에 대한 집계 시간과 일일 분석을 제공합니다.

매개변수: category (필수), start_date, end_date (선택 사항)

내장 카테고리:

카테고리

coding

VS Code, PyCharm, Terminal, iTerm2, Cursor, Warp, Xcode

browsing

Chrome, Safari, Firefox, Arc, Edge

communication

WeChat, Slack, Discord, Telegram, Messages, Zoom, Teams

entertainment

Bilibili, YouTube, Spotify, Netflix

writing

Obsidian, Notion, Typora, Word, Pages

design

Figma, Sketch, Canva, Photoshop

AW_CATEGORIES_FILE 환경 변수를 사용하여 나만의 JSON 파일을 지정해 카테고리를 사용자 정의할 수 있습니다.

get_timeline

"오늘 오후에 내가 한 일을 알려줘."

창 제목과 지속 시간이 포함된 앱 전환의 연대순 목록입니다.

매개변수: date, start_time, end_time, min_duration_seconds

get_browser_history

"오늘 내가 방문한 웹사이트는 어디지?"

시간별 상위 도메인입니다. ActivityWatch 브라우저 확장 프로그램이 필요합니다.

매개변수: date, domain (선택적 필터)

manage_categories

"Cursor를 코딩 카테고리에 추가해 줘."

런타임에 활동 카테고리 매핑을 확인하고 수정합니다. 변경 사항은 ~/.activitywatch-mcp/categories.json에 저장됩니다.

매개변수: action (list | add | remove | update), category, apps

get_project_time

"이번 주에 어떤 프로젝트들을 작업했지?"

프로젝트/저장소별로 분류된 코딩 시간입니다. IDE 창 제목(VS Code, Cursor, PyCharm, Xcode, Terminal)에서 프로젝트 이름을 추출합니다.

매개변수: start_date, end_date (선택 사항)

자연어 날짜

모든 날짜 매개변수는 YYYY-MM-DD 외에도 자연어를 지원합니다:

today, yesterday, this_week, last_week, this_month, last_month, last_7_days, last_30_days

환경 변수

변수

기본값

설명

AW_HOST

http://localhost:5600

ActivityWatch API 주소

AW_TITLE_MAX_LENGTH

80

개인정보 보호를 위해 창 제목을 자름

AW_CATEGORIES_FILE

내장

사용자 정의 카테고리 매핑 JSON 경로

개인정보 보호

🔒 데이터는 절대 기기 밖으로 나가지 않습니다.

  • ActivityWatch는 모든 것을 로컬에 저장합니다.

  • 이 MCP 서버는 로컬에서 실행됩니다.

  • 데이터 흐름: ActivityWatch (로컬) → MCP 서버 (로컬) → AI 대화

  • 민감한 내용이 노출되지 않도록 창 제목은 잘립니다.

  • 텔레메트리, 외부 API 호출, 클라우드 저장이 없습니다.

로드맵

  • [ ] macOS 스크린 타임 통합 (knowledgeC.db의 iPhone + Mac 데이터)

  • [ ] 자동 생성 일일/주간 보고서

  • [ ] 사전 알림 (예: "4시간 동안 코딩하셨네요. 잠시 쉬세요")

  • [ ] 생산성 점수 및 추세 분석

  • [ ] 원격 액세스를 위한 SSE 전송

기여

PR과 이슈는 언제나 환영합니다. 새로운 도구나 카테고리에 대한 아이디어가 있다면 이슈를 열어주세요.

라이선스

MIT


-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/JM-404/activitywatch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server