LNA-Report MCP Server

LNA-Report MCP Server

Enables AI agents to automatically analyze AWS LNA CSV data and generate competency assessment PPT reports with radar charts and team-level insights.

Category
Visit Server

README

🧠 LNA-Report MCP Server

AWS LNA(Learning Needs Analysis) CSV 데이터λ₯Ό μžλ™ λΆ„μ„ν•˜μ—¬ **μ—­λŸ‰κ°•ν™” 평가 뢄석 리포트(PPT)**λ₯Ό μƒμ„±ν•˜λŠ” MCP(Model Context Protocol) μ„œλ²„μž…λ‹ˆλ‹€.

MCPλž€? AI μ—μ΄μ „νŠΈκ°€ μ™ΈλΆ€ 도ꡬλ₯Ό ν˜ΈμΆœν•  수 있게 ν•΄μ£ΌλŠ” ν‘œμ€€ ν”„λ‘œν† μ½œμž…λ‹ˆλ‹€.
이 μ„œλ²„λ₯Ό μ—°κ²°ν•˜λ©΄ AIκ°€ LNA 데이터 뢄석과 리포트 생성을 μžλ™μœΌλ‘œ μˆ˜ν–‰ν•©λ‹ˆλ‹€.


✨ μ£Όμš” κΈ°λŠ₯

Tool κΈ°λŠ₯ 좜λ ₯
analyze_lna LNA CSV 전체 뢄석 JSON (νŒ€λ³„ 점수, 자격증, μ—­ν• )
generate_report PPT 리포트 μžλ™ 생성 PPTX (λ ˆμ΄λ” 차트 포함)
get_team_scores νŒ€/전체 과정별 점수 쑰회 JSON (과정별 점수)
get_recommendations ꡐ윑 μΆ”μ²œ κ³Όμ • λ„μΆœ JSON (κΈ΄κΈ‰/λ†’μŒ/보톡)
get_individual_assessments κ°œμΈλ³„ μ—­λŸ‰ 평가 JSON (강점/약점/μΆ”μ²œκ΅μœ‘)

πŸ“‹ μš”κ΅¬μ‚¬ν•­

  • Python 3.10 이상
  • pip νŒ¨ν‚€μ§€ κ΄€λ¦¬μž
  • Windows 10/11, macOS, λ˜λŠ” Linux

πŸš€ μ„€μΉ˜ 방법

Step 1: 리포지토리 Clone

git clone https://github.com/twkim1122/LNA_Report_MCP.git
cd LNA_Report_MCP

Step 2: νŒ¨ν‚€μ§€ μ„€μΉ˜ (editable λͺ¨λ“œ)

pip install -e .

μ°Έκ³ : μ˜μ‘΄μ„±μ΄ μžλ™ μ„€μΉ˜λ©λ‹ˆλ‹€ (mcp[cli], pandas, python-pptx, matplotlib, numpy)

Step 3: μ„€μΉ˜ 확인

python -m lna_mcp.server --help

였λ₯˜ 없이 μ‹€ν–‰λ˜λ©΄ μ„€μΉ˜ μ™„λ£Œ!


πŸ”Œ MCP ν΄λΌμ΄μ–ΈνŠΈ 연동 μ„€μ •

Option A: Amazon Quick 연동

  1. Amazon Quick μ—΄κΈ°
  2. Settings β†’ Capabilities β†’ Connectors 이동
  3. "+ Add MCP server" β†’ Local (stdio) 선택
  4. μ•„λž˜ κ°’ μž…λ ₯:
ν•­λͺ© κ°’
Name lna-report
Command python
Args -m, lna_mcp.server
Working Directory <cloneν•œ 경둜>/LNA_Report_MCP/src
  1. Save β†’ μƒˆ λŒ€ν™”μ—μ„œ "LNA 파일 뢄석해 쀘" μž…λ ₯ν•˜μ—¬ Tool 인식 확인

Option B: Kiro CLI 연동

~/.kiro/settings/mcp.json νŒŒμΌμ— μΆ”κ°€ (μ—†μœΌλ©΄ μƒˆλ‘œ 생성):

{
  "mcpServers": {
    "lna-report": {
      "command": "python",
      "args": ["-m", "lna_mcp.server"],
      "cwd": "<cloneν•œ 경둜>/LNA_Report_MCP/src",
      "env": {}
    }
  }
}

Windows μ˜ˆμ‹œ:
"cwd": "C:\\Users\\<username>\\projects\\LNA_Report_MCP\\src"

macOS/Linux μ˜ˆμ‹œ:
"cwd": "/home/<username>/projects/LNA_Report_MCP/src"

Kiro CLI μž¬μ‹œμž‘ ν›„ Tool이 μΈμ‹λ©λ‹ˆλ‹€.

Option C: Claude Desktop 연동

claude_desktop_config.json에 μΆ”κ°€:

{
  "mcpServers": {
    "lna-report": {
      "command": "python",
      "args": ["-m", "lna_mcp.server"],
      "cwd": "<cloneν•œ 경둜>/LNA_Report_MCP/src"
    }
  }
}

πŸ“Š μ‚¬μš© 방법

1. 전체 뢄석

AIμ—κ²Œ μš”μ²­:

LNA CSV νŒŒμΌμ„ 뢄석해 μ£Όμ„Έμš”.
csv_path: "C:\경둜\LNA_2026.csv"

2. PPT 리포트 생성

LNA 뢄석 리포트λ₯Ό PPT둜 λ§Œλ“€μ–΄ μ£Όμ„Έμš”.
csv_path: "C:\경둜\LNA_2026.csv"
output_path: "C:\좜λ ₯\리포트.pptx"
company_name: "ACME Corp"

3. νŠΉμ • νŒ€ ꡐ윑 μΆ”μ²œ

ν΄λΌμš°λ“œ AXνŒ€μ— ν•„μš”ν•œ ꡐ윑 과정을 μΆ”μ²œν•΄ μ£Όμ„Έμš”.

4. κ°œμΈλ³„ 평가

각 κ°œμΈλ³„ 강점, 약점, μΆ”μ²œ κ΅μœ‘μ„ μ•Œλ € μ£Όμ„Έμš”.

πŸ—‚οΈ CSV μž…λ ₯ ν˜•μ‹

ν•„μˆ˜ 사항

  • Qualtrics LNA Excelμ—μ„œ 'Raw Data' μ‹œνŠΈλ₯Ό CSV둜 λ³€ν™˜
  • ⚠️ 'Student Heatmap' μ‹œνŠΈκ°€ μ•„λ‹Œ 'Raw Data' μ‹œνŠΈ μ‚¬μš©
  • Progress 컬럼이 λ°˜λ“œμ‹œ ν¬ν•¨λ˜μ–΄μ•Ό 함 (100% μ™„λ£Œ μ‘λ‹΅λ§Œ 뢄석)
  • 인코딩: UTF-8 BOM ꢌμž₯

CSV λ³€ν™˜ 방법

  1. Qualtrics LNA Excel μ—΄κΈ°
  2. 'Raw Data' μ‹œνŠΈ 선택
  3. λ‹€λ₯Έ μ΄λ¦„μœΌλ‘œ μ €μž₯ β†’ CSV UTF-8 (μ‰Όν‘œλ‘œ 뢄리)(*.csv) 선택
  4. μ €μž₯

🏒 νŒ€ μ„€μ • (team_config)

LNA CSV의 νŒ€ μ»¬λŸΌμ€ Qualtrics μž„λ² λ””λ“œ λ³€μˆ˜(${e://Field/Team1} λ“±)둜 λ˜μ–΄ μžˆμ–΄, μ‹€μ œ νŒ€λͺ…κ³Ό 맀핑이 ν•„μš”ν•©λ‹ˆλ‹€.

team_config JSON ν˜•μ‹

{
  "${e://Field/Team1}": {
    "name": "μ—”ν„°ν”„λΌμ΄μ¦ˆ ꡬ좕/μš΄μ˜νŒ€",
    "leader": "K",
    "mission": "ν΄λΌμš°λ“œ ꡬ좕/운영"
  },
  "${e://Field/Team2}": {
    "name": "AXνŒ€",
    "leader": "T",
    "mission": "ν΄λΌμš°λ“œ μ „ν™˜ μ»¨μ„€νŒ…"
  }
}

팁: team_config 없이도 뢄석은 κ°€λŠ₯ν•©λ‹ˆλ‹€. 이 경우 νŒ€λͺ…이 μ›μ‹œκ°’μœΌλ‘œ ν‘œμ‹œλ©λ‹ˆλ‹€.


πŸ“‘ 리포트 포함 λ‚΄μš© (PPT)

μƒμ„±λ˜λŠ” PPT λ¦¬ν¬νŠΈμ—λŠ” λ‹€μŒμ΄ ν¬ν•¨λ©λ‹ˆλ‹€:

  1. ν‘œμ§€ + κΈ°λ°€ κ³ μ§€
  2. LNA μΆ”μ§„ λ°°κ²½ 및 λͺ©μ 
  3. Executive Summary (강점/약점 μ˜μ—­)
  4. Score μ •μ˜ κΈ°μ€€ (1~5점 해석)
  5. 전사 μ—­λŸ‰ ν˜„ν™© + λ ˆμ΄λ” 차트
  6. νŒ€λ³„ 상세 뢄석 (ν”„λ‘œν•„, 점수, κ°œλ³„ λ ˆμ΄λ” 차트)
  7. νŒ€λ³„ 비ꡐ λ ˆμ΄λ” 차트 (μ˜€λ²„λ ˆμ΄)
  8. νŒ€λ³„ ꡐ윑 μΆ”μ²œ (κΈ΄κΈ‰/λ†’μŒ/보톡)
  9. 결둠 및 Next Steps

πŸ“ ν”„λ‘œμ νŠΈ ꡬ쑰

LNA_Report_MCP/
β”œβ”€β”€ pyproject.toml              # νŒ¨ν‚€μ§€ μ„€μ • 및 μ˜μ‘΄μ„±
β”œβ”€β”€ README.md                   # λ³Έ λ¬Έμ„œ
β”œβ”€β”€ .gitignore
└── src/lna_mcp/
    β”œβ”€β”€ __init__.py
    β”œβ”€β”€ server.py               # MCP μ„œλ²„ (Tool μ •μ˜)
    β”œβ”€β”€ analyzer.py             # LNA 뢄석 μ—”μ§„
    └── report_generator.py     # PPT 리포트 생성기

πŸ”„ μ—…λ°μ΄νŠΈ 방법

μ„œλ²„κ°€ μ—…λ°μ΄νŠΈλ˜λ©΄:

cd LNA_Report_MCP
git pull
pip install -e .  # μ˜μ‘΄μ„± λ³€κ²½ μ‹œ

Amazon Quick / Kiro CLI μž¬μ‹œμž‘ λ˜λŠ” MCP μ„œλ²„ Reconnect


❓ FAQ

Q: Python 버전이 3.9인데 μ‚¬μš© κ°€λŠ₯ν•œκ°€μš”?

A: 3.10 이상이 ν•„μš”ν•©λ‹ˆλ‹€. python --version으둜 확인 ν›„, ν•„μš”μ‹œ μ—…κ·Έλ ˆμ΄λ“œν•˜μ„Έμš”.

Q: pip install -e . μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€

A: pipλ₯Ό μ΅œμ‹ μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•œ ν›„ μž¬μ‹œλ„:

pip install --upgrade pip
pip install -e .

Q: Tool이 μΈμ‹λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€

A: cwd κ²½λ‘œκ°€ src 폴더λ₯Ό κ°€λ¦¬ν‚€λŠ”μ§€ ν™•μΈν•˜μ„Έμš”. LNA_Report_MCP/srcκ°€ μ •ν™•ν•œ κ²½λ‘œμž…λ‹ˆλ‹€.

Q: CSV 뢄석 μ‹œ "Progress 컬럼 μ—†μŒ" 였λ₯˜

A: Qualtrics Excelμ—μ„œ 'Raw Data' μ‹œνŠΈλ₯Ό CSV둜 λ³€ν™˜ν–ˆλŠ”μ§€ ν™•μΈν•˜μ„Έμš”. 'Student Heatmap' μ‹œνŠΈλŠ” Progress 컬럼이 μ—†μŠ΅λ‹ˆλ‹€.

Q: ν•œκΈ€μ΄ κΉ¨μ§‘λ‹ˆλ‹€

A: CSV μ €μž₯ μ‹œ UTF-8 BOM 인코딩을 μ‚¬μš©ν•˜μ„Έμš”. Excelμ—μ„œ CSV UTF-8 (μ‰Όν‘œλ‘œ 뢄리) ν˜•μ‹μœΌλ‘œ μ €μž₯ν•©λ‹ˆλ‹€.

Q: λ ˆμ΄λ” μ°¨νŠΈκ°€ μƒμ„±λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€

A: matplotlib ν•œκΈ€ 폰트 이슈일 수 μžˆμŠ΅λ‹ˆλ‹€. WindowsλŠ” 'Malgun Gothic', macOSλŠ” 'AppleGothic'이 ν•„μš”ν•©λ‹ˆλ‹€. macOS μ‚¬μš©μžλŠ” src/lna_mcp/report_generator.pyμ—μ„œ 폰트 섀정을 λ³€κ²½ν•˜μ„Έμš”:

plt.rcParams["font.family"] = "AppleGothic"  # macOS

🏷️ Score μ •μ˜

Score μˆ˜μ€€ 의미
1 None 기본적인 κ΄€λ ¨ 지식이 μ—†λŠ” μƒνƒœ
2 Basic 기본적인 이해λ ₯을 κ°–μΆ”κ³  μžˆμœΌλ‚˜ 업무 μˆ˜ν–‰ λΆˆκ°€
3 Functional μŠ€ν‚¬ ν™œμš© 업무 μˆ˜ν–‰ κ°€λŠ₯, ν•„μš”μ‹œ AWS 지원 ν•„μš”
4 Proficient λ‹€μ–‘ν•œ μˆ˜μ€€μ˜ 업무λ₯Ό μˆ˜ν–‰ 및 적용 κ°€λŠ₯
5 Expert μ „λ¬Έκ°€ μ—­ν•  μˆ˜ν–‰ 및 μ»¨μ„€νŒ… μˆ˜ν–‰ κ°€λŠ₯

πŸ“œ License

Internal use only β€” AWS T&C Korea


πŸ‘€ Author

AWS T&C Korea Team
Contact: ktaewoo@amazon.com

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured