MCP 연결

AI 도구에서 doneix 전체 기능 실행하기

doneix는 MCP(Model Context Protocol) 서버를 제공합니다. Claude Code, Claude Desktop처럼 MCP를 지원하는 도구에 연결하면 “오늘 저녁에 할 일 정리해 줘”, “이 버그 고치기를 내일 오전 할 일로 넣어 줘” 같은 말로 doneix를 다룰 수 있어요.

연결 프로필 선택

Endpoint용도
/mcp제출용 간결한 프로필: 최대 29개 선택 도구, agent_chat 제외.
/mcp/readonly읽기 전용 프로필: 최대 30개, read 범위만 허용.
/mcp/full아래 전체 카탈로그. 권한 주체와 승인한 범위에 따라 실제 도구가 걸러집니다.

아래 예시는 /mcp/full을 사용합니다. 기본 read/write 개인 토큰에는 삭제·계정 관리·AI 실행 권한이 없습니다. 필요한 범위만 승인하세요. OAuth 승인은 선택한 엔드포인트에도 묶이므로 프로필을 바꿀 때 다시 연결하세요.

엔드포인트https://api.doneix.com/mcp/full
전송 방식Streamable HTTP
인증Authorization: Bearer dz_…

1. 개인 액세스 토큰 만들기

  1. doneix 웹 앱(또는 데스크톱 앱)에 로그인합니다.
  2. 설정 → MCP 연결에서 이름(예: “Claude Code”)을 적고 토큰 만들기를 누릅니다.
  3. dz_로 시작하는 토큰이 한 번만 보입니다. 바로 복사해 두세요. 잃어버리면 지우고 새로 만들면 됩니다.

토큰은 내 계정의 할 일을 읽고 바꿀 수 있는 열쇠입니다. 저장소나 공유 문서에 붙여 넣지 마세요. 쓰지 않는 토큰은 설정에서 언제든 삭제할 수 있고, 마지막 사용 시각도 확인할 수 있어요.

2. Claude Code에 연결

터미널에서 한 줄이면 됩니다. dz_… 자리에 방금 만든 토큰을 넣으세요.

터미널
claude mcp add --transport http doneix https://api.doneix.com/mcp/full \
  --header "Authorization: Bearer dz_…"

연결 확인: claude mcp list — doneix가 보이면 끝입니다. 이후 대화에서 “doneix에 … 추가해 줘”처럼 말하면 됩니다.

3. 다른 MCP 클라이언트

HTTP 방식 MCP 서버를 지원하는 도구라면 대부분 아래 형식의 설정 파일을 받습니다. (도구마다 파일 위치와 키 이름이 조금씩 다를 수 있어요.)

JSON 설정
{
  "mcpServers": {
    "doneix": {
      "type": "http",
      "url": "https://api.doneix.com/mcp/full",
      "headers": {
        "Authorization": "Bearer dz_…"
      }
    }
  }
}

HTTP 방식을 지원하지 않는 클라이언트는 mcp-remote 같은 stdio↔HTTP 브리지로 같은 주소와 헤더를 넘겨 연결할 수 있습니다.

제공하는 도구 96개

할 일·하위 할 일·반복·프로젝트·장소·보드·사용자 설정·토큰·AI 비서를 다룰 수 있습니다. 목록의 nextOffset이 null일 때까지 조회하면 전체 항목을 읽을 수 있고, 긴 메모 전문은 get_task로 확인합니다.

데이터 이동

list_backups
최근 30일의 암호화된 개인 작업 복원 지점 메타데이터를 읽는다. 공유 권한을 복원하지 않는다.
get_backup
선택한 개인 작업 백업을 읽는다. 등록 장소 좌표는 기본 제외하며 includePlaces=true를 명시해야 포함한다.
preview_backup_restore
복원할 사본을 새 항목으로 추가하는 미리보기를 만든다. 사용자 검토 뒤 기존 apply_import로 적용한다. 기존 데이터·공유 권한을 덮어쓰지 않는다.
export_workspace
개인 작업·프로젝트·보드·설정의 복구 가능한 JSON 백업을 반환한다. 등록 장소의 좌표는 includePlaces=true일 때만 포함한다. 인증 비밀값과 공유 목록은 포함하지 않는다. 공유 목록은 export_shared_list로 각각 내보낸다.
preview_import
doneix 백업 또는 Todoist·TickTick CSV의 개수·날짜·변환·원문 보존 경고를 검증한다. source=dunzo에는 data, source=todoist/ticktick/csv(자동 감지)에는 csv를 제공한다. 기존 항목을 덮어쓰지 않는다. 먼저 소규모 파일로 확인하고 별도 apply_import 전에 사용자 승인을 받는다.
apply_import
사용자가 미리보기 내용을 확인한 가져오기를 추가 방식으로 적용한다. 기존 작업과 설정은 덮어쓰지 않는다. 같은 미리보기를 다시 적용해도 중복 생성하지 않는다.

알림

get_notification_status
웹 푸시 준비 여부와 본 계정의 등록된 수신 채널 개수를 읽는다. 수신 비밀키·단말 토큰은 반환하지 않는다. 권한 허용과 등록은 앱에서 직접 한다.
list_notifications
본 계정의 최근 공유 작업 완료 알림을 읽는다. 다른 참여자의 개인 작업은 포함하지 않는다.
mark_notification_read
본 계정의 알림만 읽음으로 표시한다. 작업 완료 상태는 바꾸지 않는다.

계획

get_day_capacity
겹치는 바쁜 구간을 한 번만 빼고 시간대별 여유·빠듯·초과와 하루 용량 제안을 읽는다. 미추정 작업과 캘린더 경고는 별도로 확인한다. 설정을 자동 변경하지 않는다.
preview_rebalance
선택한 작업을 다음 시간대 또는 내일로 옮기는 미리보기를 만든다. keep은 그대로 둔다. 최종 마감은 유지하며 apply_task_changes는 사용자 검토 뒤 별도로 실행한다.
preview_recurrence
지원하는 일·주·월·년 반복 규칙의 다음 날짜를 미리 본다. 간격 1~99, 주간 요일, 월 n번째/마지막 요일, 종료일과 예외 날짜를 지원한다. 예정일에 완료한다고 가정하며 존재하지 않는 날짜·DST 시각은 건너뛴다. 작업 변경은 create_task/update_task의 recurrence를 사용한다.
get_next_actions
화면과 같은 추천 규칙으로 남은 시간·전환 여유·일정·장소와 실행 가능한 하위 작업을 고려한다. 시간 미추정(needsEstimate), 장소 미확인(needsContext), 나중 예정(later)은 확실히 맞는 items와 구분한다. 긴급 마감은 별도로 유지한다. 기본 전환 여유는 5분, 수행 예정시각 이전은 allowEarlyStart=true일 때만 제안한다(긴급 마감 예외).

캘린더

get_outlook_status
Outlook 읽기 전용 연결·선택 달력·마지막 확인과 경고를 조회한다. 설정되지 않은 공급자를 연결 완료로 표시하지 않는다.
connect_outlook_calendar
사용자가 Microsoft에서 직접 승인할 읽기 전용 PKCE 연결 URL을 만든다. Calendars.ReadBasic과 offline_access만 요청한다. 자동 승인하지 않는다.
disconnect_outlook_calendar
doneix에 저장된 Outlook 토큰·캐시·진행 중 연결을 지운다. Microsoft 계정 전체의 토큰을 임의 폐기하지 않으며 필요하면 앱 권한 설정에서 동의를 철회하도록 안내한다.
list_outlook_calendars
승인된 Outlook 계정의 읽을 수 있는 달력과 현재 선택을 조회한다. 이벤트 제목은 읽거나 저장하지 않는다.
select_outlook_calendars
먼저 조회한 Outlook 달력 1~20개의 바쁜 시간을 추천에 반영한다. 외부 달력을 수정하지 않는다.
get_calendar_status
Google Calendar 읽기 전용 연결 상태를 확인한다. 인증 비밀값은 반환하지 않는다.
list_calendars
승인한 Google 계정에서 바쁜 시간을 읽을 수 있는 달력과 현재 선택을 조회한다. 제목·이벤트 내용은 수집하지 않는다.
select_calendars
사용자가 선택한 달력 1~20개의 바쁜 시간을 추천에 반영한다. 먼저 list_calendars의 id를 사용한다. 이벤트를 수정하지 않는다.
connect_google_calendar
사용자가 브라우저에서 승인할 읽기 전용 일정 연결 URL을 만든다. URL을 사용자에게 제공하며 자동 승인하지 않는다.
disconnect_calendar
내 Google Calendar 연결을 해제한다. 달력의 이벤트는 삭제하지 않는다.
list_busy_intervals
직접 등록한 일정과 향후 7일의 선택된 Google 달력 busy 시간을 읽는다. 외부 일정 제목은 저장하지 않는다. warning이 있으면 최신 일정이 반영되지 않을 수 있다.
create_busy_interval
실행 추천에서 비워 둘 수 없는 고정 일정을 추가한다. start/end는 시간대 오프셋을 가진 ISO 시각이다.
delete_busy_interval
doneix에 직접 등록한 고정 일정만 삭제한다. · 삭제/폐기 작업

공유 목록

list_shared_lists
내가 소유하거나 참여한 목록의 이름·역할·미완료 개수를 조회한다. 내용은 get_shared_list로 읽는다. 개인 할 일·장소·보드는 자동으로 공유되지 않는다.
get_shared_list
현재 접근할 수 있는 목록·역할·할 일·휴지통·revision을 읽는다. 매 요청마다 권한을 검사한다.
create_shared_list
처음에는 혼자 소유하는 별도 목록을 만든다. 같은 clientKey 재시도는 중복 생성하지 않는다.
rename_shared_list
소유자가 최신 revision으로 목록 이름을 바꾼다.
delete_shared_list
명시적 요청으로 소유한 공유 목록 전체를 영구 삭제한다. 먼저 export_shared_list로 백업한다. 참여자는 삭제할 수 없다. · 삭제/폐기 작업
create_shared_task
소유자·편집자가 최신 revision과 중복 방지 clientKey로 추가한다. 제목·메모·우선순위·마감·완료만 공유하며 위치·개인 보드 참조는 받지 않는다.
update_shared_task
소유자·편집자가 최신 revision으로 지정한 필드만 바꾼다. restore=true로 휴지통에서 복원한다. 권한 회수 후에는 기존 요청도 거절한다.
delete_shared_task
소유자·편집자가 최신 revision으로 공유 할 일을 휴지통으로 옮긴다. · 삭제/폐기 작업
preview_shared_invitation
사용자가 제공한 초대 토큰의 목록 이름·역할·만료만 확인한다. 아직 참여하지 않는다.
accept_shared_invitation
사용자가 확인한 일회용 초대를 수락한다. 참여 권한 부여와 초대 소비는 단일 DB 갱신이다.
leave_shared_list
소유자가 아닌 내가 참여한 목록에서 탈퇴한다. 이후 읽기·쓰기와 기존 초대 재사용은 차단한다.
export_shared_list
접근 가능한 공유 목록의 활성 작업 내용을 별도 JSON으로 내보낸다. 참여 권한·초대·인증·위치는 제외한다.
import_shared_list
검토한 dunzo-shared-list 백업 내용을 나 혼자 소유하는 새 목록으로 가져온다. 기존 공유 권한을 부활시키지 않는다. 같은 clientKey로 재시도한다.
invite_shared_list
명시적으로 요청한 소유자가 7일 유효한 일회용 초대 링크를 만든다. 기본 viewer이며 editor는 사용자가 요청했을 때만 선택한다. 링크를 가진 한 사람이 참여할 수 있으므로 사용자에게만 전달한다. 이메일·메시지는 자동 전송하지 않는다.
revoke_shared_invitation
소유자가 아직 사용하지 않은 초대 링크를 폐기한다. 이미 참여한 사람은 remove_shared_member로 내보낸다.
set_shared_member
소유자가 참여자를 viewer 또는 editor로 바꾼다. 소유자 권한은 양도하지 않는다.
remove_shared_member
명시적 요청으로 소유자가 참여자를 내보낸다. 남아 있는 초대도 모두 폐기하여 기존 링크 재참여를 차단한다. · 삭제/폐기 작업

계정

get_account_security
2단계 인증 사용 여부와 남은 복구 코드 개수를 확인한다. 인증 앱 키·코드·복구 코드 원문은 노출하지 않는다. 등록·해제는 앱에서 직접 재인증한다.
request_email_verification
사용자가 요청한 경우 내 계정 이메일로 확인 링크를 보낸다. 메일 발송 설정이 필요하다. OAuth 연결에는 계정 관리 권한을 제공하지 않는다.
revoke_all_sessions
명시적인 사용자 요청으로 내 모든 세션·개인 토큰·OAuth 승인을 해제한다. 현재 MCP 연결도 인증이 해제된다. 새 인증 토큰을 반환하지 않으며 앱에서 다시 로그인해야 한다. · 삭제/폐기 작업
delete_account
사용자가 계정 전체 영구 삭제를 명시적으로 요청한 경우만 실행한다. confirmation은 정확한 계정 이메일이며 비밀번호 계정은 현재 password도 필요하다. OAuth 연결에는 이 권한을 제공하지 않는다. 백업을 먼저 권한다. · 삭제/폐기 작업

집중 · 검토

list_focus_sessions
최근 집중 세션과 진행 중인 타이머를 읽는다. 타이머 기록은 실제 생산성의 증거가 아니다.
start_focus
중복되지 않는 clientKey로 집중 타이머를 시작한다. 같은 키 재시도는 같은 세션이다. 작업 완료를 자동 처리하지 않는다.
finish_focus
진행 중인 집중을 마치거나 cancelled=true로 취소한다. 작업 완료는 별도 동작이다.
get_review
사용자 시간대 기준 최근 7일 완료·집중 기록과 미완료 계획을 조회한다. 예정일을 미루더라도 최종 마감은 유지한다.

연결 · AI 비서

get_ai_usage
UTC 기준 오늘의 내장 AI 요청 수·토큰과 요청 한도를 읽는다. 외부 AI가 MCP를 호출한 비용은 포함하지 않는다.
list_access_tokens
내 계정의 토큰 이름·id·접두사·발급/마지막 사용 시각을 조회한다. 토큰 원문과 해시는 반환하지 않는다.
create_access_token
사용자가 새 연결용 인증 토큰 발급을 요청했을 때 실행한다. 토큰 원문은 이 응답에서 한 번만 표시한다. 비밀값이므로 사용자에게만 전달하고 메모/할 일/공유 문서에 저장하지 않는다. 최대 20개.
revoke_access_token
내 계정의 지정한 토큰을 즉시 폐기한다. 현재 연결이 쓰는 토큰이면 다음 MCP 요청부터 인증이 거절된다. · 삭제/폐기 작업
get_agent_status
앱 안 AI 비서의 활성화 여부·모델·정보 전송 동의 상태를 확인한다. 동의 변경은 앱에서 사용자가 직접 수행한다. API 키는 반환하지 않는다.
agent_chat
앱의 AI 비서를 같은 계정 권한으로 실행한다. messages는 사용자/비서 대화 전체이며 마지막은 user여야 한다. 외부 AI 호출과 앱 변경이 발생할 수 있고 REST AI 비서와 사용 한도를 공유한다. reply와 실행한 actions를 반환한다.

의견

get_pilot_status
파일럿 상태와 내가 제출한 의견을 읽는다. 현재 결제는 활성화하지 않았으며 가격 선택은 설문이다.
submit_feedback
사용자가 명시적으로 전달한 의견만 제출한다. 연락 동의 기본값은 false다. 가격 응답은 결제가 아니다.

복구 · 기록

preview_task_changes
일괄 변경 대상을 검증하고 10분 유효한 변경 계획을 만든다. 아직 작업을 변경하지 않는다. 사용자에게 변경을 설명한 뒤 apply_task_changes로 적용한다.
apply_task_changes
사용자가 확인한 변경 계획을 적용한다. 미리보기 이후 바뀐 작업은 덮어쓰지 않는다. DB 장애·동시 변경에서 다중 작업 원자성은 보장하지 않으며 변경 이력으로 복구한다.
list_trash
삭제된 할 일을 조회한다. 삭제는 복구 가능한 휴지통으로 이동한다.
restore_task
삭제 당시 함께 지운 하위 할 일과 복구한다. 삭제된 상위가 있으면 먼저 상위를 복구한다.
list_changes
최근 작업 변경 100개와 되돌리기 가능 여부를 조회한다.
undo_change
그 뒤 수정되지 않은 작업 변경을 되돌린다. 다른 기기의 수정과 충돌하면 거절한다. 새 작업을 제거하는 되돌리기에는 delete 권한도 필요하다. · 삭제/폐기 작업

상황 · 설정

get_context
다른 도구보다 먼저 호출한다. 오늘 날짜·시각·시간대·현재 장소와 시간대/장소/프로젝트/라벨 id를 확인한다. 좌표를 모르면 생략한다.
get_workspace
앱과 같은 계정의 사용자·프로젝트·장소·보드와 할 일을 읽는다. 완료 이력도 포함하며 할 일은 nextOffset으로 끝까지 조회한다. 인증 비밀값은 반환하지 않는다.
get_settings
사용자 프로필과 모든 사용자 설정(타임존, 시간대 정의, 장소 표시, 위치 정렬, 주변 반경, 주 시작일)을 읽는다.
update_settings
제공한 설정만 바꾼다. dayparts는 전체 목록으로 교체하므로 먼저 get_settings로 기존 id/이름/시작 시각/색/아이콘을 확인한다.
plan_day
날짜(기본 오늘)의 할 일을 시간대별로 묶고 기한 지난 일과 날짜 없는 후보를 반환한다. 날짜 없는 후보는 nextOffset으로 계속 조회한다.

할 일

list_tasks
상태·검색·프로젝트·상위 할 일·시간대·마감·장소·라벨로 조회한다. ranked=true는 미완료 목록에 시간/위치 점수와 이유를 붙인다. nextOffset이 null일 때까지 조회하면 누락이 없다. 메모 전문과 보드별 순서는 get_task로 읽는다.
get_task
할 일의 모든 필드를 손실 없이 읽는다. 메모 전문, 완료 시각, 예상 시간, 상위 관계, 수동 순서, 보드별 열/순서와 직계 하위 할 일을 반환한다.
create_task
앱에서 지정할 수 있는 모든 필드로 할 일을 추가한다. parentId로 하위 할 일을 만들고 columns/boardOrder/order로 보드 배치와 수동 순서를 지정한다.
quick_add_task
앱의 빠른 입력 문법으로 추가한다. 예: 내일 저녁 장보기 p1 #집 @마트. 날짜/시각/우선순위/라벨/등록 장소/프로젝트/반복을 앱과 같은 파서로 해석한다. 함께 지정한 필드는 해석 결과보다 우선한다.
update_task
보낸 필드만 바꾼다. parentId=null로 분리, order로 수동 정렬, columns/boardOrder로 보드 배치 가능. labels/placeIds/columns/boardOrder는 전체 값으로 교체한다. 반복 다음 회차 생성에는 complete_task를 쓴다.
bulk_update_tasks
최대 200개 할 일의 필드를 한 번에 바꾼다. 각 id/patch의 권한과 참조를 쓰기 전에 검사한다. 반복 완료는 complete_task를 사용한다. DB 트랜잭션은 아니므로 동시 변경이나 DB 장애 시 원자성은 보장하지 않는다.
complete_task
할 일과 모든 단계의 하위 할 일을 완료한다. 반복 할 일이면 다음 회차를 자동 생성한다.
reopen_task
완료한 할 일을 다시 미완료로 바꾼다. 반복으로 이미 생성된 다음 회차는 유지한다.
delete_task
할 일과 모든 단계의 하위 할 일을 영구 삭제한다. 사용자가 삭제를 요청한 대상에만 실행한다. · 삭제/폐기 작업

프로젝트

list_projects
보관된 프로젝트도 포함해 전체 목록과 미완료 할 일 수를 반환한다.
create_project
이름·색·보관 상태·정렬 순서로 프로젝트를 만든다.
update_project
이름·색·archived(보관/해제)·order(정렬)를 바꾼다. 보낸 필드만 수정한다.
delete_project
프로젝트를 삭제한다. 포함된 할 일은 삭제하지 않고 관리함으로 옮긴다. · 삭제/폐기 작업

장소

list_places
등록한 모든 장소와 좌표·반경·아이콘을 반환한다.
create_place
이름·좌표·반경·아이콘으로 장소를 만든다. 좌표는 사용자 또는 위치 도구가 제공한 값만 사용한다.
update_place
장소의 이름·위도·경도·반경·아이콘 중 보낸 필드만 바꾼다.
delete_place
장소를 삭제하고 모든 할 일의 장소 연결에서 제거한다. 할 일은 유지한다. · 삭제/폐기 작업

칸반 보드

list_boards
전체 보드와 모든 설정(열·스윔레인·필터·카드 표시·정렬·위치 강조)을 읽는다.
list_board_templates
보드 생성에 쓸 수 있는 템플릿 이름과 전체 기본 설정을 반환한다.
get_board
보드 하나의 모든 설정을 읽는다. 실제 열/스윔레인/카드 배치는 get_board_view를 사용한다.
get_board_view
앱과 같은 보드 계산으로 열·스윔레인·정렬된 카드·WIP 초과·순위 이유를 읽는다. availableGroups/availableLanes는 빈 곳/숨긴 곳을 포함한 이동 대상 키다. 각 셀의 카드는 offset/limit으로 조회하며 전문은 get_task로 읽는다.
create_board
template만 지정하거나 name과 전체 보드 설정을 지정해 만든다. 템플릿 값은 명시한 설정으로 덮어쓴다. 열·스윔레인·필터·순서·카드 표시 필드 모두 지정 가능.
update_board
보드의 모든 설정 중 보낸 필드만 바꾼다. columns/groupOrder/hiddenGroups/cardFields와 filter는 전체 값으로 교체한다. 열 이름·색·WIP 제한·접기·완료 열, 필터, 보드 순서를 모두 지정할 수 있다.
duplicate_board
앱의 복제 동작과 같이 보드 설정을 복제한다. 할 일을 새로 만들지는 않는다.
delete_board
보드와 할 일에 저장된 해당 보드의 열/정렬 정보를 삭제한다. 할 일은 유지한다. · 삭제/폐기 작업
move_board_card
앱의 드래그 동작처럼 카드를 열/스윔레인으로 옮기고 수동 순서를 바꾼다. group/lane 키는 get_board_view에서 확인한다. beforeId는 앞에 놓을 대상, afterId는 뒤에 놓을 대상이다. 완료 열 이동은 done 필드를 변경하며 반복 다음 회차 생성은 complete_task로 실행한다.

MCP는 연결한 계정의 데이터와 서버 기능을 조작합니다. 기기의 위치 권한 허용·창 열기·로컬 화면 테마·설치·로그인 자체는 해당 기기에서 진행합니다. AI 비서는 서버에 설정되어 있을 때 사용할 수 있으며 앱과 사용 한도를 공유합니다.

이렇게 써 보세요

  • “지금 할 만한 거 세 개만 골라 줘.” — 현재 시간대와 장소를 보고 추천합니다.
  • “오늘 계획 짜 줘. 저녁엔 약속이 있어.” — 시간대별로 묶어 재배치를 제안합니다.
  • “이 PR 리뷰를 내일 오전, P2로 추가해 줘.”
  • “‘하루 흐름’ 보드를 장소 기준으로 바꾸고 스윔레인은 프로젝트로.”
  • “보드의 진행 중 열에 이 카드를 옮기고 보고서 카드 앞에 놓아 줘.”
  • “‘집’ 장소의 반경을 300m로 바꾸고 근처 판단 거리는 2km로 설정해 줘.”
  • “완료 이력까지 모든 할 일을 다음 페이지도 이어서 읽어 줘.”

AI 도구는 토큰 주인의 권한으로 동작합니다. 삭제처럼 되돌릴 수 없는 작업은 도구가 실행 전에 확인을 받도록 설정해 두는 것을 권장해요.

MCP 연결 · doneix