YouTube κ²μ, μμ½, μ±λ λΆμ κΈ°λ₯μ κ°μΆ μ νλΈ μμ΄μ νΈλ₯Ό MCPλ‘ κ΅¬νν μμ μ λλ€.
- AIκ° μΈλΆ λ°μ΄ν°μ λꡬ(Tools)μ ν¨κ³Όμ μΌλ‘ μ°κ²°ν μ μλ νμ€νλ λ°©μ
- νΉν λ€μν λꡬμ νμ€νλ μ°κ²°λ‘ λ§μ΄ νμ©λκ³ μμ
- MCP Server: μ¬μ©ν μ μλ λꡬ(tool)λ₯Ό μ μνκ³ μ 곡νλ μν
- MCP Client: μ μλ λꡬλ₯Ό λΆλ¬μ μ¬μ© (Claude Desktop, Cursor, OpenAI Agents SDK)
- μ΄λ² μμ μμλ μ νλΈ μ»¨ν μΈ λΆμμ μν MCP Serverλ₯Ό λ§λ€μ΄λ³΄κ³ , OpenAI Agents SDK κΈ°λ°μ MCP Clientμλ μ°κ²°ν΄λ³Ό μμ μ λλ€.
-
λ ν¬μ§ν 리 clone λλ λ€μ΄λ‘λνκΈ°
git clone https://github.com/dabidstudio/python-mcp-agent.git cd python-mcp-agent -
.env.exampleλ₯Ό 볡μ¬ν ν API ν€λ₯Ό μ λ ₯νκ³ .envλ‘ μ μ₯
OPENAI_API_KEY=apiν€_μ λ ₯ YOUTUBE_API_KEY=api_ν€_μ λ ₯
-
python -m venv venv venv\Scripts\activate # Macμ source venv/bin/activate
-
ν¨ν€μ§ μ€μΉ
pip install mcp openai-agents streamlit youtube-transcript-api python-dotenv requests
Claude, Cursorμ κ°μ MCP ν΄λΌμ΄μΈνΈ μ ν리μΌμ΄μ
μμ λ‘컬 MCP μλ²λ₯Ό μ°λνλ €λ©΄,
μλ² μ€νμ νμν Python μ€ν νμΌ κ²½λ‘μ MCP μλ² μ€ν¬λ¦½νΈ κ²½λ‘λ₯Ό JSON μ€μ μ μ
λ ₯ν΄μΌ ν©λλ€.
- λ΄ κ²½λ‘μ μλ§κ² mcp.jsonμ μμ ν΄λ‘λλ€.
(μ: νλ‘μ νΈ ν΄λκ° C:\projects\dabidstudio_videos\python_mcp_agentμΈ κ²½μ°)
μ£Όμ: Windowsμμλ JSON λ¬Έλ²μ
\λμ\\(μμ¬λμ λ λ²)μ μ¬μ©ν΄μΌ ν©λλ€.
{
"mcpServers": {
"mcp-test": {
"command": "C:\\projects\\dabidstudio_videos\\python_mcp_agent\\venv\\Scripts\\python.exe",
"args": [
"C:\\projects\\dabidstudio_videos\\python_mcp_agent\\2_mcp_server.py"
]
}
}
}(μ: νλ‘μ νΈ ν΄λκ° /Users/yourname/projects/python_mcp_agentμΈ κ²½μ°)
{
"mcpServers": {
"mcp-test": {
"command": "/Users/yourname/projects/python_mcp_agent/venv/bin/python",
"args": [
"/Users/yourname/projects/python_mcp_agent/2_mcp_server.py"
]
}
}
}python-mcp-agent/
βββ 1_mcp_server_functions.ipynb # MCP μλ² ν¨μ μμ λ
ΈνΈλΆ
βββ 2_mcp_server.py # MCP μλ² κ΅¬ν μμ
βββ 3_openai_agents_basics.py # OpenAI Agent κΈ°λ³Έ μμ
βββ 4_mcp_client.py # Streamlit MCP Client μμ
βββ .env.example # νκ²½λ³μ μμ νμΌ
βββ mcp.json # MCP μλ² μ€μ νμΌ
