Dooray MCP Server
The Dooray MCP Server integrates Dooray's project management API with Claude Code, enabling management of tasks, comments, tags, members, files, search, and workflows.
Tasks: List, get, create, update, delete tasks; change status; assign members.
Comments: List, create, update, delete comments on tasks; supports user mentions.
Tags: List/filter tags, create tags with custom colors, add/remove tags from tasks.
Search: Search tasks by text, assignee, status, tag, date range, or workflow; supports advanced multi-condition AND/OR logic.
Members: Search by email or ID, retrieve member details, list project members.
Files & Images: List task attachments, get file metadata, download file content, upload images to S3 for use in task/comment bodies, access files by content ID via Drive API.
Workflows: List, get, create, update, and delete project workflows.
Provides comprehensive file and image management capabilities including listing task files, retrieving file metadata, downloading file content in base64 encoding, and direct file access through Content IDs via Drive API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Dooray MCP Servershow me all tasks assigned to me that are overdue"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Dooray MCP Server
Dooray API를 Claude Code와 연동하기 위한 MCP (Model Context Protocol) 서버입니다.
기능
이 MCP 서버는 Dooray의 주요 기능을 6개의 통합 도구로 제공합니다:
dooray_tasks - 업무 관리 (목록 조회, 상세 조회, 생성, 수정, 삭제, 상태 변경, 담당자 지정)
dooray_comments - 댓글 관리 (목록 조회, 생성, 수정, 삭제, 멘션 지원)
dooray_tags - 태그 관리 (목록 조회, 생성, 업무에 태그 추가/제거)
dooray_search - 검색 기능 (업무 검색, 담당자별/상태별/태그별/기간별 검색)
dooray_members - 사용자 관리 (이메일/ID 검색, 사용자 정보 조회, 프로젝트 멤버 목록)
dooray_files - 파일 및 이미지 관리 (업무 파일 업로드/목록, S3 본문 이미지 업로드, 파일 메타데이터, 파일 콘텐츠 다운로드, Content ID로 직접 접근)
Related MCP server: Dida365 (TickTick) MCP Server
빠른 설치
GitHub에서 자동 설치
# 1. 저장소 클론
git clone https://github.com/tallpizza/dooray-mcp.git
cd dooray-mcp
# 2. 자동 설치 스크립트 실행
./install.sh
# 3. 환경 변수 설정 (.env 파일 수정)
# DOORAY_API_TOKEN과 DOORAY_DEFAULT_PROJECT_ID를 실제 값으로 변경
# 4. Claude Code에 추가
claude mcp add-json dooray "$(cat .mcp.json | jq -c .dooray)"상세 설치 및 설정
1. GitHub에서 설치
# GitHub에서 프로젝트 클론
git clone https://github.com/tallpizza/dooray-mcp.git
cd dooray-mcp
# 종속성 설치
uv sync2. 환경 변수 설정
.env 파일을 생성하고 다음 내용을 설정합니다:
# .env.example을 복사
cp .env.example .env
# .env 파일 내용
DOORAY_API_TOKEN=your-actual-dooray-api-token
DOORAY_BASE_URL=https://api.dooray.com
DOORAY_DEFAULT_PROJECT_ID=your-default-project-id
# 선택: Dooray 본문 이미지용 S3-compatible 스토리지 (upload_body_image 사용 시)
S3_BUCKET=your-public-image-bucket
S3_REGION=ap-northeast-2
S3_ACCESS_KEY_ID=your-s3-access-key
S3_SECRET_ACCESS_KEY=your-s3-secret-key
LOG_LEVEL=INFO3. Claude Code MCP 서버 추가
방법 1: JSON으로 추가 (권장)
# 환경 변수를 포함한 완전한 설정
claude mcp add-json dooray '{
"type": "stdio",
"command": "uv",
"args": ["run", "python", "-m", "dooray_mcp.server"],
"env": {
"DOORAY_API_TOKEN": "your-actual-dooray-api-token",
"DOORAY_BASE_URL": "https://api.dooray.com",
"DOORAY_DEFAULT_PROJECT_ID": "your-default-project-id",
"S3_BUCKET": "your-public-image-bucket",
"S3_REGION": "ap-northeast-2",
"S3_ACCESS_KEY_ID": "your-s3-access-key",
"S3_SECRET_ACCESS_KEY": "your-s3-secret-key"
}
}'방법 2: 설정 파일 사용
# .mcp.json 설정 파일 준비
cp .mcp.json.example .mcp.json
# 환경 변수를 실제 값으로 수정
# Claude Code에서 사용
claude --mcp-config .mcp.json4. 연결 확인
# MCP 서버 목록 확인
claude mcp list
# Dooray 서버가 ✓ Connected로 표시되는지 확인5. 도구 테스트
# 업무 목록 조회 테스트
claude --print "dooray_tasks를 사용해서 업무 목록을 조회해주세요."
# 댓글 생성 테스트
claude --print "dooray_comments를 사용해서 댓글을 생성해주세요."사용법
도구별 사용 예제
1. dooray_tasks (업무 관리)
// 업무 목록 조회
{
"action": "list",
"projectId": "project-123" // 선택사항 (환경 변수 사용 가능)
}
// 업무 생성
{
"action": "create",
"projectId": "project-123",
"title": "새 업무",
"description": "업무 설명",
"priority": "normal"
}2. dooray_comments (댓글 관리)
// 댓글 생성 (멘션 포함)
{
"action": "create",
"taskId": "task-456",
"content": "댓글 내용",
"mentions": ["user1", "user2"] // 선택사항
}3. dooray_tags (태그 관리)
// 새 태그 생성
{
"action": "create",
"projectId": "project-123",
"tagName": "긴급",
"tagColor": "#FF0000" // # 포함 가능, 자동으로 제거됨
}
// 업무에 태그 추가
{
"action": "add_to_task",
"taskId": "task-456",
"tagName": "긴급"
}4. dooray_search (검색 기능)
// 업무 텍스트 검색
{
"searchType": "tasks",
"projectId": "project-123",
"query": "버그 수정"
}
// 상태별 검색
{
"searchType": "by_status",
"projectId": "project-123",
"status": "완료"
}5. dooray_members (사용자 관리)
// 이메일로 사용자 검색
{
"action": "search_by_email",
"email": "user@company.com"
}
// 프로젝트 멤버 목록
{
"action": "list_project_members",
"projectId": "project-123"
}6. dooray_files (파일 및 이미지 관리)
// 업무 파일 업로드
{
"action": "upload_task_file",
"taskId": "task-456",
"filePath": "/path/to/image.png",
"filename": "image.png", // 선택사항
"mimeType": "image/png", // 선택사항 (미지정 시 확장자로 추정)
"projectId": "project-123" // 선택사항 (환경 변수 사용 가능)
}
// 응답에는 result.id와 함께 result.fileId, result.metadataApiUrl, result.downloadApiUrl이 포함됩니다.
// 주의: downloadApiUrl/rawUrl은 Authorization 헤더가 필요한 API URL입니다.
// Dooray 본문/댓글에 이미지 URL로 붙여 넣으면 표시되지 않습니다. 업로드만으로 업무 첨부파일에는 등록됩니다.
// Dooray 본문/댓글에 사용할 이미지 URL 생성 (S3 업로드)
{
"action": "upload_body_image",
"filePath": "/path/to/image.png",
"filename": "image.png", // 선택사항
"mimeType": "image/png", // 선택사항
"altText": "스크린샷", // 선택사항
"s3Key": "dooray/image.png" // 선택사항 (미지정 시 자동 생성)
}
// 응답의 markdown 값을 업무/댓글 본문에 넣으면 됩니다.
// 예: 
// S3 객체는 Dooray 사용자가 인증 없이 접근 가능해야 합니다.
// 업무 파일 목록 조회
{
"action": "list_task_files",
"taskId": "task-456",
"projectId": "project-123" // 선택사항 (환경 변수 사용 가능)
}
// 업무 파일 메타데이터 조회
{
"action": "get_task_file_metadata",
"taskId": "task-456",
"fileId": "file-789",
"projectId": "project-123"
}
// 업무 파일 콘텐츠 다운로드 (임시 파일로 저장)
{
"action": "get_task_file_content",
"taskId": "task-456",
"fileId": "file-789",
"projectId": "project-123"
}
// Content ID로 직접 파일 메타데이터 조회 (Drive API)
{
"action": "get_drive_file_metadata",
"fileId": "content-id-xyz"
}
// Content ID로 직접 파일 콘텐츠 다운로드 (Drive API, 임시 파일로 저장)
{
"action": "get_drive_file_content",
"fileId": "content-id-xyz"
}S3 이미지 URL 설정
upload_body_image에 필요한 최소 S3 환경변수는 아래 4개입니다.
S3_BUCKETS3_REGIONS3_ACCESS_KEY_IDS3_SECRET_ACCESS_KEY
나머지는 기본값을 사용합니다.
S3_PREFIX:dooray-imagesS3_ACL:public-read(S3_ACL=none이면 ACL 전송 안 함)S3_PUBLIC_BASE_URL: 미설정 시 S3 공개 URL 자동 생성S3_ENDPOINT_URL: 미설정 시 AWS S3 기본 endpoint 사용S3_FORCE_PATH_STYLE: endpoint URL을 쓰면 기본true, 아니면false
API 정보
Base URL:
https://api.dooray.com인증:
Authorization: dooray-api {TOKEN}업무 관리:
/project/v1/projects/{projectId}/posts댓글 관리:
/project/v1/projects/{projectId}/posts/{taskId}/logs태그 관리:
/project/v1/projects/{projectId}/tags사용자 관리:
/common/v1/members파일 관리:
/project/v1/projects/{projectId}/posts/{taskId}/filesDrive 파일:
/drive/v1/files/{fileId}
문제 해결
연결 문제
인증 오류:
DOORAY_API_TOKEN이 올바른지 확인프로젝트 ID 오류:
DOORAY_DEFAULT_PROJECT_ID가 존재하는 프로젝트인지 확인권한 오류: API 토큰이 해당 프로젝트에 대한 권한을 가지고 있는지 확인
MCP 연결 문제
서버 연결 실패:
claude mcp list에서 상태 확인도구 인식 실패: MCP 서버 재시작 또는 Claude Code 재시작
권한 문제:
--dangerously-skip-permissions플래그 사용 (개발 환경에서만)
개발 및 기여
이 프로젝트는 MIT 라이센스 하에 배포되며, 버그 리포트와 기능 요청을 환영합니다.
버전 정보
버전: 1.0.0
Python: 3.8+
MCP: 1.0.0+
HTTP 클라이언트: httpx 0.25.0+
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/tallpizza/dooray-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server