spring-ai-mcp-server

spring-ai-mcp-server

3.3

If you are the rightful owner of spring-ai-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.

Spring AI MCP Server is a server application that utilizes Spring Boot and AI to generate Excel and PowerPoint documents.

Spring AI MCP Server

์Šคํ”„๋ง๋ถ€ํŠธ์™€ AI๋ฅผ ํ™œ์šฉํ•œ ์—‘์…€, PPT ์ƒ์„ฑ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

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

  • AI๋ฅผ ํ™œ์šฉํ•œ ์—‘์…€ ๋ฌธ์„œ ์ž๋™ ์ƒ์„ฑ
  • AI๋ฅผ ํ™œ์šฉํ•œ PPT ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ์ž๋™ ์ƒ์„ฑ
  • RESTful API๋ฅผ ํ†ตํ•œ ๋น„๋™๊ธฐ ๋ฌธ์„œ ์ƒ์„ฑ ์š”์ฒญ ์ฒ˜๋ฆฌ

๊ธฐ์ˆ  ์Šคํƒ

  • Java 17
  • Spring Boot 3.2.3
  • Spring AI 0.8.0 (OpenAI ํ™œ์šฉ)
  • Apache POI 5.2.5 (์—‘์…€, PPT ํŒŒ์ผ ์ƒ์„ฑ)

์š”๊ตฌ ์‚ฌํ•ญ

  • Java 17 ์ด์ƒ
  • OpenAI API ํ‚ค

์‹คํ–‰ ๋ฐฉ๋ฒ•

  1. ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •: OPENAI_API_KEY=your_api_key
  2. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋นŒ๋“œ:
    ./gradlew clean build
    
  3. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰:
    java -jar build/libs/spring-ai-mcp-server-0.0.1-SNAPSHOT.jar
    

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

1. ์—‘์…€ ๋ฌธ์„œ ์ƒ์„ฑ ์š”์ฒญ

curl -X POST http://localhost:8080/api/documents \
  -H "Content-Type: application/json" \
  -d '{
    "title": "2024๋…„ ๋ถ„๊ธฐ๋ณ„ ๋งค์ถœ ๋ณด๊ณ ์„œ",
    "content": "2024๋…„ 1๋ถ„๊ธฐ์—์„œ 3๋ถ„๊ธฐ๊นŒ์ง€์˜ ๋งค์ถœ ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•œ ๋ณด๊ณ ์„œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ œํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ๋งค์ถœ๊ณผ ์ดํ•ฉ์„ ํ‘œ์‹œํ•˜๊ณ , ๋ถ„๊ธฐ๋ณ„ ์ฆ๊ฐ๋ฅ ๋„ ํ‘œ์‹œํ•ด์ฃผ์„ธ์š”.",
    "documentType": "EXCEL",
    "sections": ["๋งค์ถœ ๊ฐœ์š”", "์ œํ’ˆ๋ณ„ ์‹ค์ ", "์ง€์—ญ๋ณ„ ์‹ค์ "]
  }'

2. PowerPoint ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ์ƒ์„ฑ ์š”์ฒญ

curl -X POST http://localhost:8080/api/documents \
  -H "Content-Type: application/json" \
  -d '{
    "title": "AI ๊ธฐ์ˆ  ๋™ํ–ฅ 2025",
    "content": "2025๋…„ ํ˜„์žฌ์˜ AI ๊ธฐ์ˆ  ๋™ํ–ฅ์„ ์†Œ๊ฐœํ•˜๋Š” ํ”„๋ ˆ์  ํ…Œ์ด์…˜์ž…๋‹ˆ๋‹ค. ์ƒ์„ฑํ˜• AI ๋ฐœ์ „, ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ, AI ์œค๋ฆฌ ๋ฐ ๊ทœ์ œ, ์‚ฐ์—…๋ณ„ AI ์‘์šฉ ์‚ฌ๋ก€ ๋“ฑ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.",
    "documentType": "POWERPOINT",
    "sections": ["์„œ๋ก ", "์ƒ์„ฑํ˜• AI ๋™ํ–ฅ", "๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ ๋ฐœ์ „", "์‚ฐ์—…๋ณ„ AI ์‘์šฉ", "์œค๋ฆฌ ๋ฐ ๊ทœ์ œ", "๊ฒฐ๋ก "]
  }'

3. ๋ฌธ์„œ ์ƒ์„ฑ ์ƒํƒœ ํ™•์ธ

curl -X GET http://localhost:8080/api/documents/{documentId}

4. ์ƒ์„ฑ๋œ ๋ฌธ์„œ ๋‹ค์šด๋กœ๋“œ

  • ์—‘์…€ ํŒŒ์ผ:

    curl -X GET http://localhost:8080/api/documents/excel/download/{fileName}
    
  • PowerPoint ํŒŒ์ผ:

    curl -X GET http://localhost:8080/api/documents/ppt/download/{fileName}
    

์„ค์ • ์˜ต์…˜

application.yml์—์„œ ๋‹ค์–‘ํ•œ ์„ค์ •์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

app:
  document:
    temp-dir: ${java.io.tmpdir}/spring-ai-mcp-server  # ์ž„์‹œ ํŒŒ์ผ ์ €์žฅ ๊ฒฝ๋กœ

ํ–ฅํ›„ ๊ฐœ๋ฐœ ๊ณ„ํš

  • Markdown ๋ฌธ์„œ ์ƒ์„ฑ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • Confluence ํŽ˜์ด์ง€ ์ž๋™ ์ƒ์„ฑ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ๋‹ค์–‘ํ•œ ๋ฌธ์„œ ํ…œํ”Œ๋ฆฟ ์ง€์›
  • ์ด๋ฏธ์ง€ ๋ฐ ์ฐจํŠธ ์ž๋™ ์ƒ์„ฑ ๊ธฐ๋Šฅ

๋ผ์ด์„ผ์Šค

MIT License