Skip to main content
Glama
odise444

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