dooray-mcp-server

jon890/dooray-mcp-server

3.3

If you are the rightful owner of dooray-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

NHN Dooray MCP Server is a Model Context Protocol server designed to facilitate access to Dooray's services, including wiki management and JSON-based responses.

Tools
3
Resources
0
Prompts
0

Dooray MCP Server

NHN Dooray ์„œ๋น„์Šค์˜ MCP(Model Context Protocol) ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

์ฃผ์š” ๊ธฐ๋Šฅ

  • ์œ„ํ‚ค ๊ด€๋ฆฌ: ์œ„ํ‚ค ์กฐํšŒ, ์ƒ์„ฑ, ์ˆ˜์ •, ์ฐธ์กฐ์ž ๊ด€๋ฆฌ
  • ์—…๋ฌด ๊ด€๋ฆฌ: ์—…๋ฌด ์กฐํšŒ, ์ƒ์„ฑ, ์ˆ˜์ •, ์ƒํƒœ ๋ณ€๊ฒฝ
  • ๋Œ“๊ธ€ ๊ด€๋ฆฌ: ์—…๋ฌด ๋Œ“๊ธ€ ์ƒ์„ฑ, ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ
  • JSON ์‘๋‹ต: ๊ทœ๊ฒฉํ™”๋œ JSON ํ˜•ํƒœ์˜ ์‘๋‹ต
  • ์˜ˆ์™ธ ์ฒ˜๋ฆฌ: ์ผ๊ด€๋œ ์—๋Ÿฌ ์‘๋‹ต ์ œ๊ณต
  • Docker ์ง€์›: ๋ฉ€ํ‹ฐ ํ”Œ๋žซํผ Docker ์ด๋ฏธ์ง€ ์ œ๊ณต

๋น ๋ฅธ ์‹œ์ž‘

ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •

๋‹ค์Œ ํ™˜๊ฒฝ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

export DOORAY_API_KEY="your_api_key"
export DOORAY_BASE_URL="https://api.dooray.com"

# ์„ ํƒ์‚ฌํ•ญ: ๋กœ๊น… ๋ ˆ๋ฒจ ์ œ์–ด
export DOORAY_LOG_LEVEL="WARN"         # DEBUG, INFO, WARN, ERROR (๊ธฐ๋ณธ๊ฐ’: WARN)
export DOORAY_HTTP_LOG_LEVEL="WARN"    # HTTP ํด๋ผ์ด์–ธํŠธ ๋กœ๊น… (๊ธฐ๋ณธ๊ฐ’: WARN)
๋กœ๊น… ์„ค์ •

์ผ๋ฐ˜ ๋กœ๊น… (DOORAY_LOG_LEVEL)

  • WARN (๊ธฐ๋ณธ๊ฐ’): ๊ฒฝ๊ณ  ๋ฐ ์—๋Ÿฌ๋งŒ ๋กœ๊น… - MCP ํ†ต์‹  ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด ๊ถŒ์žฅ
  • INFO: ์ผ๋ฐ˜ ์ •๋ณด ํฌํ•จ ๋กœ๊น…
  • DEBUG: ์ƒ์„ธํ•œ ๋””๋ฒ„๊ทธ ์ •๋ณด ํฌํ•จ

HTTP ๋กœ๊น… (DOORAY_HTTP_LOG_LEVEL)

  • WARN (๊ธฐ๋ณธ๊ฐ’): HTTP ์—๋Ÿฌ๋งŒ ๋กœ๊น… - MCP ํ†ต์‹  ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด ๊ถŒ์žฅ
  • INFO: ๊ธฐ๋ณธ ์š”์ฒญ/์‘๋‹ต ์ •๋ณด๋งŒ ๋กœ๊น…
  • DEBUG: ์ƒ์„ธํ•œ HTTP ์ •๋ณด ๋กœ๊น…

โš ๏ธ ์ค‘์š”: MCP ์„œ๋ฒ„๋Š” stdin/stdout์„ ํ†ตํ•ด ํ†ต์‹ ํ•˜๋ฏ€๋กœ, ๋ชจ๋“  ๋กœ๊ทธ๋Š” stderr๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค. ๋กœ๊น… ๋ ˆ๋ฒจ์„ ๋†’์ด๋ฉด ํ”„๋กœํ† ์ฝœ ํ†ต์‹ ์—๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์ง€๋งŒ, ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋กœ์ปฌ ์‹คํ–‰

# ์˜์กด์„ฑ ์„ค์น˜ ๋ฐ ๋นŒ๋“œ
./gradlew clean shadowJar

# ๋กœ์ปฌ ์‹คํ–‰ (.env ํŒŒ์ผ ์‚ฌ์šฉ)
./gradlew runLocal

# ๋˜๋Š” ์ง์ ‘ ์‹คํ–‰
java -jar build/libs/dooray-mcp-server-0.2.1-all.jar

Docker ์‹คํ–‰

# Docker Hub์—์„œ ์ด๋ฏธ์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ
docker pull bifos/dooray-mcp:latest

# ํ™˜๊ฒฝ๋ณ€์ˆ˜์™€ ํ•จ๊ป˜ ์‹คํ–‰
docker run -e DOORAY_API_KEY="your_api_key" \
           -e DOORAY_BASE_URL="https://api.dooray.com" \
           bifos/dooray-mcp:latest

์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋„๊ตฌ (์ด 19๊ฐœ)

์œ„ํ‚ค ๊ด€๋ จ ๋„๊ตฌ (8๊ฐœ)

1. dooray_wiki_list_projects

๋‘๋ ˆ์ด์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ์œ„ํ‚ค ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

2. dooray_wiki_list_pages

ํŠน์ • ๋‘๋ ˆ์ด ์œ„ํ‚ค ํ”„๋กœ์ ํŠธ์˜ ํŽ˜์ด์ง€ ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

3. dooray_wiki_get_page

ํŠน์ • ๋‘๋ ˆ์ด ์œ„ํ‚ค ํŽ˜์ด์ง€์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

4. dooray_wiki_create_page

์ƒˆ๋กœ์šด ์œ„ํ‚ค ํŽ˜์ด์ง€๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

5. dooray_wiki_update_page

๊ธฐ์กด ์œ„ํ‚ค ํŽ˜์ด์ง€๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

6. dooray_wiki_update_page_title

์œ„ํ‚ค ํŽ˜์ด์ง€์˜ ์ œ๋ชฉ๋งŒ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

7. dooray_wiki_update_page_content

์œ„ํ‚ค ํŽ˜์ด์ง€์˜ ๋‚ด์šฉ๋งŒ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

8. dooray_wiki_update_page_referrers

์œ„ํ‚ค ํŽ˜์ด์ง€์˜ ์ฐธ์กฐ์ž๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ด€๋ จ ๋„๊ตฌ (1๊ฐœ)

9. dooray_project_list_projects

์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฌด ๊ด€๋ จ ๋„๊ตฌ (6๊ฐœ)

10. dooray_project_list_posts

ํ”„๋กœ์ ํŠธ์˜ ์—…๋ฌด ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

11. dooray_project_get_post

ํŠน์ • ์—…๋ฌด์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

12. dooray_project_create_post

์ƒˆ๋กœ์šด ์—…๋ฌด๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

13. dooray_project_update_post

๊ธฐ์กด ์—…๋ฌด๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

14. dooray_project_set_post_workflow

์—…๋ฌด์˜ ์ƒํƒœ(์›Œํฌํ”Œ๋กœ์šฐ)๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

15. dooray_project_set_post_done

์—…๋ฌด๋ฅผ ์™„๋ฃŒ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฌด ๋Œ“๊ธ€ ๊ด€๋ จ ๋„๊ตฌ (4๊ฐœ)

16. dooray_project_create_post_comment

์—…๋ฌด์— ๋Œ“๊ธ€์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

17. dooray_project_get_post_comments

์—…๋ฌด์˜ ๋Œ“๊ธ€ ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

18. dooray_project_update_post_comment

์—…๋ฌด ๋Œ“๊ธ€์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

19. dooray_project_delete_post_comment

์—…๋ฌด ๋Œ“๊ธ€์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์˜ˆ์‹œ

์œ„ํ‚ค ํŽ˜์ด์ง€ ์กฐํšŒ

{
  "name": "dooray_wiki_list_projects",
  "arguments": {
    "page": 0,
    "size": 20
  }
}

์—…๋ฌด ์ƒ์„ฑ

{
  "name": "dooray_project_create_post",
  "arguments": {
    "project_id": "your_project_id",
    "subject": "์ƒˆ๋กœ์šด ์—…๋ฌด",
    "body": "์—…๋ฌด ๋‚ด์šฉ",
    "to_member_ids": ["member_id_1", "member_id_2"],
    "priority": "high"
  }
}

๋Œ“๊ธ€ ์ƒ์„ฑ

{
  "name": "dooray_project_create_post_comment",
  "arguments": {
    "project_id": "your_project_id",
    "post_id": "your_post_id",
    "content": "๋Œ“๊ธ€ ๋‚ด์šฉ",
    "mime_type": "text/x-markdown"
  }
}

๊ฐœ๋ฐœ

ํ…Œ์ŠคํŠธ ์‹คํ–‰

# ๋ชจ๋“  ํ…Œ์ŠคํŠธ ์‹คํ–‰ (ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์žˆ์„ ๋•Œ)
./gradlew test

# CI ํ™˜๊ฒฝ์—์„œ๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์ž๋™ ์ œ์™ธ
CI=true ./gradlew test

๋นŒ๋“œ

# JAR ๋นŒ๋“œ
./gradlew clean shadowJar

# Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ
docker build -t dooray-mcp:local --build-arg VERSION=0.2.1 .

Docker ๋ฉ€ํ‹ฐ ํ”Œ๋žซํผ ๋นŒ๋“œ

ํ˜„์žฌ ์ƒํƒœ

ํ˜„์žฌ Docker ์ด๋ฏธ์ง€๋Š” AMD64๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ARM64 ๋นŒ๋“œ๋Š” QEMU ์—๋ฎฌ๋ ˆ์ด์…˜์—์„œ Gradle ์˜์กด์„ฑ ๋‹ค์šด๋กœ๋“œ ๋‹จ๊ณ„์—์„œ ๋ฉˆ์ถ”๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด ์ผ์‹œ์ ์œผ๋กœ ๋น„ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ARM64 ๋นŒ๋“œ ํ™œ์„ฑํ™”

ARM64 ๋นŒ๋“œ๋ฅผ ๋‹ค์‹œ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด .github/workflows/docker-publish.yml์—์„œ ๋‹ค์Œ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜์„ธ์š”:

env:
  ENABLE_ARM64: true # false์—์„œ true๋กœ ๋ณ€๊ฒฝ

ARM64 ๋นŒ๋“œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

  1. ๋„ค์ดํ‹ฐ๋ธŒ ARM64 ๋Ÿฌ๋„ˆ ์‚ฌ์šฉ (๊ถŒ์žฅ)
  2. QEMU ํƒ€์ž„์•„์›ƒ ์ฆ๊ฐ€
  3. Gradle ์บ์‹œ ์ตœ์ ํ™”
  4. ์˜์กด์„ฑ ์‚ฌ์ „ ๋‹ค์šด๋กœ๋“œ

ํ˜„์žฌ๋Š” ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด AMD64๋งŒ ๋นŒ๋“œํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ARM64 ์ง€์›์€ ํ–ฅํ›„ ์—…๋ฐ์ดํŠธ์—์„œ ์ œ๊ณต๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ๋ณ€์ˆ˜

๋ณ€์ˆ˜๋ช…์„ค๋ช…ํ•„์ˆ˜ ์—ฌ๋ถ€
DOORAY_API_KEYDooray API ํ‚คํ•„์ˆ˜
DOORAY_BASE_URLDooray API Base URLํ•„์ˆ˜

๋ผ์ด์„ ์Šค

์ด ํ”„๋กœ์ ํŠธ๋Š” ์˜คํ”ˆ ์†Œ์Šค์ด๋ฉฐ, ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์—ฌ

ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ์œผ์‹œ๋‹ค๋ฉด ์ด์Šˆ๋ฅผ ๋“ฑ๋กํ•˜๊ฑฐ๋‚˜ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ๋ณด๋‚ด์ฃผ์„ธ์š”.

๐Ÿ“š ์ฐธ๊ณ ์ž๋ฃŒ