Google Tasks MCP Server
by odise444
README.md
# Google Tasks MCP Server
Google Tasks를 Claude Code에서 자연어로 관리할 수 있는 MCP 서버입니다.
Apps Script 웹훅을 통해 Google Tasks API와 통신합니다.
## 제공 도구
| 도구 | 설명 |
|------|------|
| `tasks_list` | 전체 할 일 조회 (필터: all/pending/completed) |
| `tasks_add` | 새 할 일 추가 (제목, 메모, 마감일) |
| `tasks_complete` | 완료 처리 |
| `tasks_uncomplete` | 완료 취소 |
| `tasks_delete` | 삭제 |
| `tasks_update` | 제목/메모/마감일 수정 |
## 설치 방법
### 1. 서버 파일 복사
이 폴더를 원하는 위치에 복사합니다. 예:
```
C:\Users\사용자명\google-tasks-mcp-server\
```
### 2. 의존성 설치 및 빌드
```bash
npm install
npm run build
```
### 3. Claude Code에 MCP 등록
**방법 A: claude mcp add 명령어 (권장)**
```bash
claude mcp add google-tasks \
-e TASKS_WEBHOOK_URL="https://script.google.com/macros/s/AKfycbyVoSfsWx3A9qfUQjt8_zM4nreF7ybZ___VZPXhF1x9CFQy1Uga6s3gGCbBOrLJ7esz/exec" \
-e TASKS_DEFAULT_LIST_ID="MDg1NzM1NTk5OTc1NDI4NTQyMzE6MDow" \
-- node "C:/Users/사용자명/google-tasks-mcp-server/dist/index.js"
```
**방법 B: 설정 파일 직접 수정**
`%APPDATA%\Claude\claude_desktop_config.json` (또는 Claude Code 설정 파일)에 추가:
```json
{
"mcpServers": {
"google-tasks": {
"command": "node",
"args": ["C:/Users/사용자명/google-tasks-mcp-server/dist/index.js"],
"env": {
"TASKS_WEBHOOK_URL": "https://script.google.com/macros/s/AKfycbyVoSfsWx3A9qfUQjt8_zM4nreF7ybZ___VZPXhF1x9CFQy1Uga6s3gGCbBOrLJ7esz/exec",
"TASKS_DEFAULT_LIST_ID": "MDg1NzM1NTk5OTc1NDI4NTQyMzE6MDow"
}
}
}
}
```
### 4. Claude Code 재시작
설정 후 Claude Code를 재시작하면 `google-tasks` MCP 서버가 활성화됩니다.
## 사용 예시
Claude Code에서 자연어로:
```
할 일 목록 보여줘
→ tasks_list() 호출
360V BMS CAN 통신 테스트 추가해줘
→ tasks_add({title: "360V BMS CAN 통신 테스트"}) 호출
여권 만료 기간 확인 완료 처리해줘
→ tasks_list()로 id 찾은 뒤 tasks_complete({id: "..."}) 호출
기아오토카 메모에 '레이 리콜 접수 완료' 추가해줘
→ tasks_update({id: "...", notes: "레이 리콜 접수 완료"}) 호출
```
## 환경 변수
| 변수 | 설명 | 기본값 |
|------|------|--------|
| `TASKS_WEBHOOK_URL` | Apps Script 웹앱 URL | 코드 내 하드코딩 |
| `TASKS_DEFAULT_LIST_ID` | 기본 목록 ID | 코드 내 하드코딩 |
TDQS
A4.1/5.0
Scored across 6 tools
Disambiguation5/5
Each tool targets a distinct action on tasks: list, add, complete, uncomplete, delete, and update. There is no overlap or ambiguity between these operations.
Naming Consistency5/5
All tool names follow a consistent 'tasks_' + verb pattern (list, add, complete, uncomplete, delete, update). The naming is predictable and uniform.
Tool Count5/5
6 tools is well-scoped for a task management server, covering the main lifecycle operations without unnecessary bloat.
Completeness3/5
CRUD and status transitions are covered, but tasks_complete requires a listId that tasks_list does not return (only listTitle). This creates a dead end for completing tasks, and there is no tool to list existing lists to obtain IDs.
Maintenance
ActivityInactive
ResponsivenessNo issues