Model Context Protocol (MCP)์ด๋?
1. ๊ฐ์
Model Context Protocol (MCP)๋ AI ๋ชจ๋ธ์ด ๋ค์ํ ์ ๋ ฅ(Context)์ ๋ฐ์๋ค์ด๊ณ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ ๋ํ ํ์คํ๋ ๊ท๊ฒฉ ๋๋ ๋ฉ์ปค๋์ฆ์ ์๋ฏธํ๋ค.
์ด๋ ํนํ LLM ๊ธฐ๋ฐ ์์คํ ์์ ๋ฌธ๋งฅ ์ ๋ณด(์: ์ฌ์ฉ์ ์ค์ , ์ด์ ๋ํ, ์์ ํ๊ฒฝ ๋ฑ)๋ฅผ ์ด๋ป๊ฒ ์ ๋ฆฌ·์ฃผ์ ํ๊ณ , ์ผ๊ด์ฑ ์๊ฒ ๋ค๋ฃจ๋์ง๋ฅผ
์ ์ํ๋๋ฐ ์ด์ ์ด ๋ง์ถฐ์ ธ ์๋ค.
MCP๋ OpenAI, Anthropic ๋ฑ ์ต์ LLM ์ ๊ณต์๋ค์ด ๋ฉํฐ๋ชจ๋ฌ ๋ํ์์ ์ผ๊ด์ฑ๊ณผ ๋งฅ๋ฝ ์ ์ง ๋ฅ๋ ฅ์ ํฅ์์ํค๊ธฐ ์ํด ์ฌ์ฉํ๋
ํต์ฌ ๊ธฐ์ ๊ตฌ์ฑ ์์ ์ค ํ๋๋ค.
2. ์ ํ์ํ๊ฐ?
- ๊ธด ๋งฅ๋ฝ ์ ์ง: LLM์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฌธ๋งฅ ๊ธธ์ด์ ์ ํ์ด ์์. MCP๋ ์ด๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ๊ด๋ฆฌ.
- ์ญํ ๊ธฐ๋ฐ ํ๋ ์ ๋: ์ฌ์ฉ์์ ์๋๋ ํ๊ฒฝ์ ๋ช ํํ๊ฒ ๋ชจ๋ธ์ ์ ๋ฌํ์ฌ ๋ ์ ์ ํ ์๋ต ์ ๋.
- ์ํ ์ง์์ฑ ์ ์ง: ๊ณผ๊ฑฐ ๋ํ, ์์คํ ์ธํ , ์ ์ ํ๋กํ ๋ฑ์ ๊ธฐ์ตํ๊ณ ์ง์ํ ์ ์๋๋ก ํจ.
- ๋ฉํฐ ์ ์ /์ธ์ ์ฒ๋ฆฌ: ์ฌ๋ฌ ์ฌ์ฉ์, ์ฌ๋ฌ ์ธ์ ๊ฐ ๋ฌธ๋งฅ ์ถฉ๋ ๋ฐฉ์ง.
3. ์ฃผ์ ๊ตฌ์ฑ์์
์์ | ์ค๋ช |
Instructions | ์ฌ์ฉ์ ์๊ตฌ์ฌํญ ๋ฐ ์์คํ ํ๋กฌํํธ ๋ฑ์ ํฌํจํ ๊ณ ์ ์ง์์ฌํญ |
Tools Context | ํ์ฌ ๋ํ์์ ์ฌ์ฉํ ์ ์๋ ๋๊ตฌ ๋ฐ ๊ธฐ๋ฅ ๋ฆฌ์คํธ (์: ์น ๊ฒ์, ์ฝ๋ ์คํ) |
User-Defined Context | ์ฌ์ฉ์ ์ค์ , ์ฑํฅ, ์ ํธ๋ ๋ฑ ๊ฐ์ธํ ์ ๋ณด |
Conversation History | ์ง์ ๋ํ ๋๋ ์ต๊ทผ ์ค์ ๋ํ ๋ด์ฉ์ ์์ฝํ๊ฑฐ๋ ์ ์ฒด ํฌํจ |
Memory Context | ์ฅ๊ธฐ์ ์ผ๋ก ์ ์ฅ๋ ์ ๋ณด (์: ์ฌ์ฉ์ ์ด๋ฆ, ๊ณผ๊ฑฐ ๋ํ์์ ์ ์ฅํ ํญ๋ชฉ ๋ฑ) |
Environment Metadata | ์์น, ์ฅ์น ์ ๋ณด, ํ์์กด ๋ฑ ์์คํ ์ ์ธ ๋ฉํ๋ฐ์ดํฐ |
4. ์ ์ฉ ์์ (OpenAI ๊ธฐ์ค)
- System Message ๋ด๋ถ์ MCP ์์๊ฐ ํจ๊ป ๊ตฌ์ฑ๋์ด ๋ชจ๋ธ์ ์ด๊ธฐ ์ธ์๊ณผ ์๋ต ๊ฒฝ๋ก๋ฅผ ํ์ฑ
- ์์: #JSON
{
"system_message": {
"instructions": "You are a backend assistant specialized in Django.",
"user_defined_context": {
"role": "backend engineer",
"current_task": "working on JWT auth"
},
"memory": {
"projects": ["travel planner", "chatbot with vector search"]
}
}
}
5. ๊ด๋ จ ๊ธฐ์ /์ปจ์
๊ธฐ์ | ์ค๋ช |
Function Calling / Tool Use | MCP๋ ์ด๋ค function/tool์ ์ฌ์ฉํ ์ง ๋ฏธ๋ฆฌ ์ ์ํ๊ณ ์ด ๋ฌธ๋งฅ์ ๋ฐ๋ผ ๋ชจ๋ธ์ด ์ ํ์ ์ผ๋ก ์คํ |
LangChain์ Memory, ContextualRetriever | MCP์ ๊ฐ๋ ๊ณผ ์ ์ฌํ๊ฒ ์๋. |
Vector Store Memory (e.g., FAISS, Chroma) | ์ฅ๊ธฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋ฒ ๋ฉ ๊ธฐ๋ฐ์ผ๋ก ์ ์ฅํ๊ณ ๊ฒ์ํ๋ ๊ตฌ์กฐ |
Session/Thread Management | ๋ํ๋ฅผ ์ค๋ ๋ ๋จ์๋ก ๋๋๊ณ ํด๋น ์ค๋ ๋๋ณ ๋ฌธ๋งฅ์ ๊ด๋ฆฌ (์: OpenAI Thread API) |
6. ์ ๋ฆฌ
ํฌ์ธํธ | ์ค๋ช |
์ ์ | ๋ชจ๋ธ์ด ๋ฌธ๋งฅ(Context)์ ๋ฐ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์ ๋ฐ ํฌ๋งท์ ๋ํ ๊ท์ฝ |
๋ชฉ์ | ๋ํ ์ง์์ฑ, ๊ฐ์ธํ, ํด ์ฐ๋์ฑ ํฅ์ |
์ฃผ์ ๊ตฌ์ฑ | instructions, memory, user context, toolset ๋ฑ |
์ค์์ฑ | ์ฅ๊ธฐ์ AI์์ ์ํธ์์ฉ์ ์ํ ํต์ฌ ์ธํ๋ผ |
7. ์ฐธ๊ณ ์๋ฃ
- OpenAI Dev Docs: https://platform.openai.com/docs/
- LangChain Memory: https://docs.langchain.com/docs/modules/memory
- Anthropic’s Constitutional AI ๊ตฌ์กฐ
- Microsoft Guidance ํ๋ ์์ํฌ
'Computer Science ๐ > CS ์ง์ ๐ฉ๐ปโ๐ซ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[250605] ์์คํ ๋ฒ์ค๋? (1) | 2025.06.05 |
---|---|
[250605] 3-tier๋? (2) | 2025.06.05 |
[250408] runserver ๋ ์๋๋ฐ ์ ์ค์ ์น ์๋ฒ๋ฅผ ๋ฐฐํฌํ ๋๋ nginx ๋ฅผ ์ฐ๋์? (1) | 2025.04.08 |
[250313] CS ์ฃผ์๊ฐ๋ ์ ๋ฆฌ (2) | 2025.03.13 |
[250310] WebSocket์ด๋? (2) | 2025.03.10 |