LNA-Report MCP Server
Analyzes LNA (Learning Needs Analysis) CSV data exported from Qualtrics to generate competency assessment reports in PPT format.
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., "@LNA-Report MCP ServerAnalyze the LNA CSV file and generate a PPT competency report."
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.
π§ LNA-Report MCP Server
AWS LNA(Learning Needs Analysis) CSV λ°μ΄ν°λ₯Ό μλ λΆμνμ¬ **μλκ°ν νκ° λΆμ 리ν¬νΈ(PPT)**λ₯Ό μμ±νλ MCP(Model Context Protocol) μλ²μ λλ€.
MCPλ? AI μμ΄μ νΈκ° μΈλΆ λꡬλ₯Ό νΈμΆν μ μκ² ν΄μ£Όλ νμ€ νλ‘ν μ½μ λλ€.
μ΄ μλ²λ₯Ό μ°κ²°νλ©΄ AIκ° LNA λ°μ΄ν° λΆμκ³Ό 리ν¬νΈ μμ±μ μλμΌλ‘ μνν©λλ€.
β¨ μ£Όμ κΈ°λ₯
Tool | κΈ°λ₯ | μΆλ ₯ |
| LNA CSV μ 체 λΆμ | JSON (νλ³ μ μ, μ격μ¦, μν ) |
| PPT 리ν¬νΈ μλ μμ± | PPTX (λ μ΄λ μ°¨νΈ ν¬ν¨) |
| ν/μ 체 κ³Όμ λ³ μ μ μ‘°ν | JSON (κ³Όμ λ³ μ μ) |
| κ΅μ‘ μΆμ² κ³Όμ λμΆ | JSON (κΈ΄κΈ/λμ/보ν΅) |
| κ°μΈλ³ μλ νκ° | JSON (κ°μ /μ½μ /μΆμ²κ΅μ‘) |
Related MCP server: Neptune MCP Server
π μꡬμ¬ν
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_MCPStep 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 μ°λ
Amazon Quick μ΄κΈ°
Settings β Capabilities β Connectors μ΄λ
"+ Add MCP server" β Local (stdio) μ ν
μλ κ° μ λ ₯:
νλͺ© | κ° |
Name |
|
Command |
|
Args |
|
Working Directory |
|
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 λ³ν λ°©λ²
Qualtrics LNA Excel μ΄κΈ°
'Raw Data' μνΈ μ ν
λ€λ₯Έ μ΄λ¦μΌλ‘ μ μ₯βCSV UTF-8 (μΌνλ‘ λΆλ¦¬)(*.csv)μ νμ μ₯
π’ ν μ€μ (team_config)
LNA CSVμ ν 컬λΌμ Qualtrics μλ² λλ λ³μ(${e://Field/Team1} λ±)λ‘ λμ΄ μμ΄, μ€μ νλͺ
κ³Ό λ§€νμ΄ νμν©λλ€.
team_config JSON νμ
{
"${e://Field/Team1}": {
"name": "μν°νλΌμ΄μ¦ ꡬμΆ/μ΄μν",
"leader": "μ΅μ§μ μ무",
"mission": "ν΄λΌμ°λ ꡬμΆ/μ΄μ"
},
"${e://Field/Team2}": {
"name": "ν΄λΌμ°λ AXν",
"leader": "μ μΉλͺ¨ μ무",
"mission": "ν΄λΌμ°λ μ ν 컨μ€ν
"
}
}ν: team_config μμ΄λ λΆμμ κ°λ₯ν©λλ€. μ΄ κ²½μ° νλͺ μ΄ μμκ°μΌλ‘ νμλ©λλ€.
π 리ν¬νΈ ν¬ν¨ λ΄μ© (PPT)
μμ±λλ PPT 리ν¬νΈμλ λ€μμ΄ ν¬ν¨λ©λλ€:
νμ§ + κΈ°λ° κ³ μ§
LNA μΆμ§ λ°°κ²½ λ° λͺ©μ
Executive Summary (κ°μ /μ½μ μμ)
Score μ μ κΈ°μ€ (1~5μ ν΄μ)
μ μ¬ μλ νν© + λ μ΄λ μ°¨νΈ
νλ³ μμΈ λΆμ (νλ‘ν, μ μ, κ°λ³ λ μ΄λ μ°¨νΈ)
νλ³ λΉκ΅ λ μ΄λ μ°¨νΈ (μ€λ²λ μ΄)
νλ³ κ΅μ‘ μΆμ² (κΈ΄κΈ/λμ/보ν΅)
κ²°λ‘ λ° 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
Maintenance
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/twkim1122/LNA_Report_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server