Langgraph Dynamic MCP Agents
LangGraph ReAct Agents with an ability to use MCP Tools dynamically
Installation
npx langgraph-dynamic-mcp-agentsAsk AI about Langgraph Dynamic MCP Agents
Powered by Claude ยท Grounded in docs
I know everything about Langgraph Dynamic MCP Agents. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
LangGraph Dynamic MCP Agents
ํ๋ก์ ํธ ๊ฐ์
์ฑํ ์ธํฐํ์ด์ค

LangGraph Dynamic MCP Agents ์ Model Context Protocol(MCP)์ ํตํด ๋ค์ํ ์ธ๋ถ ๋๊ตฌ์ ๋ฐ์ดํฐ ์์ค์ ์ ๊ทผํ ์ ์๋ ReAct ์์ด์ ํธ๋ฅผ ๊ตฌํํ ํ๋ก์ ํธ์
๋๋ค. ์ด ํ๋ก์ ํธ๋ LangGraph ์ ReAct ์์ด์ ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, MCP ๋๊ตฌ๋ฅผ ์ฝ๊ฒ ์ถ๊ฐํ๊ณ ๊ตฌ์ฑํ ์ ์๋ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.

์ฃผ์ ๊ธฐ๋ฅ
๋์ ๋ฐฉ์์ผ๋ก ๋๊ตฌ ์ค์ ๋์๋ณด๋
http://localhost:2025 ์ ์ ์ํ์ฌ ๋๊ตฌ ์ค์ ๋์๋ณด๋๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.

๋๊ตฌ ์ถ๊ฐ ํญ์์ Smithery ์์ ์ฌ์ฉํ MCP ๋๊ตฌ์ JSON ๊ตฌ์ฑ์ ๋ณต์ฌ ๋ถ์ฌ๋ฃ๊ธฐ ํ์ฌ ๋๊ตฌ๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.

์ค์๊ฐ ๋ฐ์
๋๊ตฌ ์ค์ ๋์๋ณด๋์์ ๋๊ตฌ๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์์ ํ๋ฉด ์ค์๊ฐ์ผ๋ก ๋ฐ์๋ฉ๋๋ค.

์์คํ ํ๋กฌํํธ ์ค์
prompts/system_prompt.yaml ํ์ผ์ ์์ ํ์ฌ ์์คํ
ํ๋กฌํํธ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
์ด ๋ํ ๋์ ์ผ๋ก ๋ฐ๋ก ๋ฐ์๋๋ ํํ์ ๋๋ค.

๋ง์ฝ, ์์ด์ ํธ์ ์ค์ ๋๋ ์์คํ
ํ๋กฌํํธ๋ฅผ ์์ ํ๊ณ ์ถ๋ค๋ฉด prompts/system_prompt.yaml ํ์ผ์ ๋ด์ฉ์ ์์ ํ๋ฉด ๋ฉ๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
- LangGraph ReAct ์์ด์ ํธ: LangGraph๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ReAct ์์ด์ ํธ
- ์ค์๊ฐ ๋์ ๋๊ตฌ ๊ด๋ฆฌ: MCP ๋๊ตฌ๋ฅผ ์ฝ๊ฒ ์ถ๊ฐ, ์ ๊ฑฐ, ๊ตฌ์ฑ ๊ฐ๋ฅ (Smithery JSON ํ์ ์ง์)
- ์ค์๊ฐ ๋์ ์์คํ ํ๋กฌํํธ ์ค์ : ์์คํ ํ๋กฌํํธ๋ฅผ ์ฝ๊ฒ ์์ ๊ฐ๋ฅ (๋์ ๋ฐ์)
- ๋ํ ๊ธฐ๋ก: ์์ด์ ํธ์์ ๋ํ ๋ด์ฉ ์ถ์ ๋ฐ ๊ด๋ฆฌ
- TeddyFlow ์ฐ๋: ์ฑํ ์ธํฐํ์ด์ค ์ฐ๋
- Docker ์ด๋ฏธ์ง ๋น๋: Docker ์ด๋ฏธ์ง ๋น๋ ๊ฐ๋ฅ
- localhost ์ง์: localhost ๋ก ์คํ ๊ฐ๋ฅ(์ฑํ ์ธํฐํ์ด์ค ์ฐ๋ ๊ฐ๋ฅ)
์ค์น ๋ฐฉ๋ฒ
- ์ ์ฅ์ ๋ณต์ ํ๊ธฐ
git clone https://github.com/teddynote-lab/langgraph-dynamic-mcp-agents
cd langgraph-dynamic-mcp-agents
.envํ์ผ ์ค์ ํ๊ธฐ
.env.example ํ์ผ์ .env๋ก ๋ณต์ฌํ๊ณ ํ์ํ API ํค๋ฅผ ์ถ๊ฐํฉ๋๋ค.
cp .env.example .env
.env ํ์ผ์์ LLM_PROVIDER ๋ฅผ ์ค์ ํฉ๋๋ค.
์ ํ ๊ฐ๋ฅ(ํ 1): ANTHROPIC, OPENAI, AZURE_OPENAI
LLM_PROVIDER=AZURE_OPENAI
์๋๋ ํ์ํ API ํค ๋ชฉ๋ก์
๋๋ค. (์ ํํ LLM_PROVIDER ์ ๋ฐ๋ผ ์ค์ ํฉ๋๋ค)
Anthropic, OpenAI, Azure OpenAI ์์ ์ฌ์ฉํ API ํค๋ฅผ ์ค์ ํฉ๋๋ค.(๋ฐ๋์ ํ๋์ ๋ชจ๋ธ์ ์ค์ ๋์ด์ผ ํฉ๋๋ค.)
ANTHROPIC_API_KEY: Anthropic API ํคOPENAI_API_KEY: OpenAI API ํคAZURE_OPENAI_API_KEY: Azure OpenAI API ํคAZURE_OPENAI_ENDPOINT: Azure OpenAI ์๋ํฌ์ธํธ
- MCP ๋๊ตฌ ์ค์
mcp-config ํด๋์ ์๋ mcp_config.json ํ์ผ์ ๊ธฐ์ค์ผ๋ก ๋ชจ๋ธ์ด ์ฌ์ฉํ MCP ๋๊ตฌ๋ฅผ ์ค์ ํฉ๋๋ค.
๋ฐ๋ผ์, ๋ฏธ๋ฆฌ ์ฌ์ฉํ๊ณ ์ ํ๋ MCP ๋๊ตฌ๋ฅผ JSON ํ์์ผ๋ก ์ค์ ํด ๋ ์ ์์ต๋๋ค. ์ด ๊ณผ์ ์ ๋๊ตฌ ์ค์ ๋์๋ณด๋์์๋ ์ค์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
์๋๋ ์ํ๋ก ์์ฑ๋ ์์์ ๋๋ค.
{
"mcpServers": {
"perplexity-search": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@arjunkmrm/perplexity-search",
"--key",
"SMITHERY_API_KEY ๋ฅผ ์
๋ ฅํ์ธ์"
],
"transport": "stdio"
},
"get_current_time": {
"command": "python",
"args": [
"/app/resources/mcp_server_time.py"
],
"transport": "stdio"
}
}
}
- .py ํ์ผ์ MCP
stdio์๋ฒ๋ก ์ถ๊ฐ
- (์ฐธ๊ณ )
resourcesํด๋์ ์๋mcp_server_time.pyํ์ผ์ ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค.
-
์ฌ์ฉํ๊ณ ์ ํ๋ ์ปค์คํ ์์ฑ๋ .py ํ์ผ์
resourcesํด๋์ ์ถ๊ฐํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณstdio์๋ฒ๋ก ์คํํ ์ ์๋๋ก ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. -
mcp-config/mcp_config.json์ ์ถ๊ฐํ ๋ ํ์ผ ๊ฒฝ๋ก๋ฅผ ์์ ํฉ๋๋ค.๊ท์น
./resources/ํ์ผ๋ช .py>/app/resources/ํ์ผ๋ช .py์๋ฅผ ๋ค์ด,
./resources/mcp_server_time.pyํ์ผ์ ์ถ๊ฐํ๊ณ ์ ํ๋ค๋ฉด/app/resources/mcp_server_time.py๋ก ์ค์ ํฉ๋๋ค."get_current_time": { "command": "python", "args": [ "/app/resources/mcp_server_time.py" ], "transport": "stdio" } -
Smithery ์ ๋ฑ๋ก๋ ๋๊ตฌ ์ถ๊ฐ
Smithery ์์ ์ฌ์ฉํ MCP ๋๊ตฌ์ JSON ๊ตฌ์ฑ์ ๊ฐ์ ธ์ ๋๊ตฌ ๋์๋ณด๋์์ ์ฝ๊ฒ ์ถ๊ฐํ ์ ์์ต๋๋ค.
- Smithery ์น์ฌ์ดํธ๋ฅผ ๋ฐฉ๋ฌธํ์ฌ ์ฌ์ฉํ๊ณ ์ถ์ ๋๊ตฌ๋ฅผ ์ ํํฉ๋๋ค.
- ๋๊ตฌ ํ์ด์ง์์ ์ค๋ฅธ์ชฝ์ 'COPY' ๋ฒํผ์ ํด๋ฆญํ์ฌ JSON ๊ตฌ์ฑ์ ๋ณต์ฌํฉ๋๋ค.

mcp_config.jsonํ์ผ์ ์ด๊ณ ๋ณต์ฌํ JSON์ ์ถ๊ฐํฉ๋๋ค.
๋ณต์ฌํ ๋ด์ฉ์ ๋ถ์ฌ๋ฃ๊ธฐ ํฉ๋๋ค.

์ ํ๋ฆฌ์ผ์ด์ ์คํ
๋ชจ๋ ์ค์ ์ด ์๋ฃ๋์๋ค๋ฉด, ๋ค์ ๋ช ๋ น์ด๋ก ์คํํ ์ ์์ต๋๋ค.
Windows(PowerShell)
docker compose build --no-cache; docker-compose up -d
Mac / Linux
docker compose build --no-cache && docker-compose up -d
์ ์ ์ฃผ์
- TeddyFlow ์ฐ๋: https://teddyflow.com/
- ์ฑํ
์ธํฐํ์ด์ค:
http://localhost:2024 - ๋๊ตฌ ์ค์ ๋์๋ณด๋:
http://localhost:2025
teddyflow.com ์ฐ๊ฒฐ ๋ฐฉ๋ฒ
- teddyflow.com ์์ ํ์๊ฐ์ ์ ํฉ๋๋ค.
ํ์๊ฐ์
์ "๋ฒ ํ ํค" ์ teddynote-youtube ๋ฅผ ์
๋ ฅํ๋ฉด ์น์ธ ์์ด ๋ฐ๋ก ๊ฐ์
์ด ๊ฐ๋ฅํฉ๋๋ค.

- ๋ก๊ทธ์ธ ํ "์๋ก์ด ์ฑ ์ฐ๊ฒฐ" ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.

- ์ฑ ์ด๋ฆ์ ์ ๋ ฅํ๊ณ "์ฐ๊ฒฐ" ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
- ํญ์์ "LangGraph" ๋ฅผ ์ ํํ ๋ค ๋ค์์ ์ ๋ณด๋ฅผ ์ ๋ ฅํฉ๋๋ค.
- Endpoint:
http://localhost:2024 - Graph:
agent

-
์ฐ๊ฒฐ ์ค์ ์ด ์๋ฃ๋๋ฉด "์ ์ฅ" ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
-
"์ฑ ์ฐ๊ฒฐํ๊ธฐ" ๋ฒํผ์ ๋๋ฌ ์ ์ฅํฉ๋๋ค.
ํ์ฌ๋ช / ์ปค๋ฎค๋ํฐ ๋ก๊ณ ๋ฐ ๋ธ๋๋ฉ ์ ์ฉ
ํ์ฌ๋ช / ์ปค๋ฎค๋ํฐ๋ฅผ ์ํ ์ปค์คํ ๊ธฐ๋ฅ์ ์ถ์ํ์์ต๋๋ค.

๋์ ์ ํฌ๋งํ์ ๋ค๋ฉด service@brain-crew.com ์ผ๋ก ๋ฌธ์์ฃผ์๋ฉด ๋์์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๋ผ์ด์ผ์ค
Apache License 2.0 (LICENSE)
