jon890/dooray-mcp-server
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.
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 ๋น๋ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ
- ๋ค์ดํฐ๋ธ ARM64 ๋ฌ๋ ์ฌ์ฉ (๊ถ์ฅ)
- QEMU ํ์์์ ์ฆ๊ฐ
- Gradle ์บ์ ์ต์ ํ
- ์์กด์ฑ ์ฌ์ ๋ค์ด๋ก๋
ํ์ฌ๋ ์์ ์ฑ์ ์ํด AMD64๋ง ๋น๋ํ๊ณ ์์ผ๋ฉฐ, ARM64 ์ง์์ ํฅํ ์ ๋ฐ์ดํธ์์ ์ ๊ณต๋ ์์ ์ ๋๋ค.
ํ๊ฒฝ๋ณ์
๋ณ์๋ช | ์ค๋ช | ํ์ ์ฌ๋ถ |
---|---|---|
DOORAY_API_KEY | Dooray API ํค | ํ์ |
DOORAY_BASE_URL | Dooray API Base URL | ํ์ |
๋ผ์ด์ ์ค
์ด ํ๋ก์ ํธ๋ ์คํ ์์ค์ด๋ฉฐ, ์์ ๋กญ๊ฒ ์ฌ์ฉํ์ค ์ ์์ต๋๋ค.
๊ธฐ์ฌ
ํ๋ก์ ํธ์ ๊ธฐ์ฌํ๊ณ ์ถ์ผ์๋ค๋ฉด ์ด์๋ฅผ ๋ฑ๋กํ๊ฑฐ๋ ํ ๋ฆฌํ์คํธ๋ฅผ ๋ณด๋ด์ฃผ์ธ์.