๐ Claude + Supabase MCP๋ก 40๋ถ๋ง์ ๋ง์ง ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถํ๊ธฐ
"๊ฐ๋ฐ ์ง์์ด ๋ถ์กฑํด๋ AI์ ํจ๊ป๋ผ๋ฉด ๊ธฐ์ด MVP๋ฅผ ๋ง๋ค ์ ์๋ค!"
์คํํธ์ ์ฐฝ์ ์ค๋น์์ด Claude MCP๋ฅผ ํ์ฉํด ์ค์ ์๋น์ค ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ถํ ์ค์ ๊ฒฝํ๋ด
๐ ๋ค์ด๊ฐ๋ฉฐ
์๋ ํ์ธ์! ์ ๋ ํ์ฌ ํ๋ก์ ํธ๋ฅผ ์ฌ์ ํ ๋์ ํ๊ณ ์๋ ์ฐฝ์ ์ค๋น์์ ๋๋ค. ๊ฐ๋ฐ ์ง์์ ๋ง์ด ๋ถ์กฑํ์ง๋ง, ์ต๊ทผ Claude, ์ปค์์ MCP(Model Context Protocol) ๊ธฐ๋ฅ์ ํ์ฉํด์ ๋๋ผ์ด ๊ฒฝํ์ ํ์ต๋๋ค.
๋จ 40๋ถ๋ง์ 30๊ฐ ๋ ์คํ ๋์ ์์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ตฌ์ถํ์ต๋๋ค.
์ฃผ๋ก ์ต๊ทผ ํด๋ก๋์ ์ปค์์์ MCP ํ์ฉํ ์ ์๋ค๋ ์ฅ์ ์ ์ ๋๊ปด์ ธ์, ์ ์ฐฝ์
์์ ๋์์ ํ ์ ์๋ ๊ฒ์ด ๋ฌด์์ธ์ง๋ฅผ ๋ฐ์ํด๋ณด์์ต๋๋ค.
๋ฌ๋ฒ๋ธ๋ก MVP ๊ตฌ์ถํ๋ ๊ณผ์ ์ ์ํ๋ฒ ์ด์ค์ ๋ง์ง ๋ฐ์ดํ ์์ง ์ ๋ฆฌ๋ฑ์ ์ด๋ ค์์ ์ ๋๊ปด์ก์ต๋๋ค. ๊ทธ๋์ ๋ฐฉ๋ฒ์ ์ฐพ๋ค๋ณด๋๊น ํน์๋ ์ํ๋ฒ ์ด์ค๋ ํด๋ก๋๋ ์ปค์๋ฅผ ํตํด ์์ ๊ฐ๋ฅํ์ง ์์๊น์๋ผ๊ณ ํด์ ์ฐพ๊ฒ ๋์์ต๋๋ค!
์ด ๊ฒฝํ์ ์คํฐ๋ ๊ทธ๋ฃน ์ฌ๋ฌ๋ถ๊ณผ ๊ณต์ ํ๊ณ ์ถ์ด์ ๊ธ์ ์์ฑํฉ๋๋ค.
๐ฏ ํ๋ก์ ํธ ๊ฐ์
๋ชฉํ: ๋ง์ง 30๊ณณ์ ๋ค๊ตญ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ
์กฐ๊ฑด: ๋ค์ด๋ฒ/์นด์นด์ค ํ์ 3์ด์, ํ๊ตญ์ด + ์ค๊ตญ์ด ์ง์
๊ฒฐ๊ณผ: ์๋ฒฝํ ๋ ์คํ ๋ DB + ์น ์ธํฐํ์ด์ค๊น์ง ์์ฑ!
๐ ๏ธ 1๋จ๊ณ: Supabase MCP ์ค์ ํ๊ธฐ
1-1. Supabase ํ๋ก์ ํธ ์์ฑ
1. https://supabase.com ์ ์
2. ์ ํ๋ก์ ํธ ์์ฑ
3. ํ๋ก์ ํธ ์ ๋ณด ๊ธฐ๋ก:
- Project URL: https://[ํ๋ก์ ํธID].supabase.co
- Anon Key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... (๊ณต๊ฐ์ฉ)
1-2. ๊ฐ์ธ ์ก์ธ์ค ํ ํฐ ์์ฑ โ ๏ธ ํต์ฌ!
1. Supabase ๋์๋ณด๋ โ ์ฐ์ธก ์๋จ ํ๋กํ ์์ด์ฝ
2. "Account" โ "Access Tokens"
3. "Generate new token" ํด๋ฆญ
4. ๊ถํ ์ค์ : projects:read, projects:write
5. ํ ํฐ ๋ณต์ฌ (sbp_๋ก ์์ํ๋ ํ ํฐ)
๊ฐ์กฐ ํ์๋ ๋ฒํผ์ด์๋ WordPress ํ์ด์ง์ ์คํฌ๋ฆฐ ์ท
๋ฒํผ์ด์๋ ํ์ด์ง์ ์คํฌ๋ฆฐ ์ท
1-3. Claude MCP ์ค์
{
"mcpServers": {
"supabase": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@supabase/mcp-server-supabase@latest",
"--access-token",
"sbp_[์ฌ๊ธฐ์_๊ฐ์ธ_์ก์ธ์ค_ํ ํฐ]"
]
}
}
}
๐ฅ ํต์ฌ ํ: anon key๊ฐ ์๋ ๊ฐ์ธ ์ก์ธ์ค ํ ํฐ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค!
์ ์ด๋ฏธ์ง ์ฐธ๊ณ (ํ ํฐ ํ์ธ)
๐ช 2๋จ๊ณ: ๋ง๋ฒ ๊ฐ์ ํ๋กฌํํธ ์์ฑ๋ฒ
2-1. ์๋ฒฝํ ํ๋กฌํํธ ํ ํ๋ฆฟ
Supabase ํ๋ก์ ํธ ID: [ํ๋ก์ ํธID]
ํ
์ด๋ธ๋ช
: restaurants
๋ฐ์ดํฐ ์
๋ ฅ ์์ฒญ:
- ์ฃผ์ : "๋ง์ง"
- ๊ฐ์: 30๊ฐ
- ์กฐ๊ฑด: "๋ค์ด๋ฒ/์นด์นด์ค ํ์ 3 ์ด์"
- ์ธ์ด: "ํ๊ตญ์ด + ์์ด"
- ํน๋ณ ์๊ตฌ์ฌํญ: "๋ค์ํ ์นดํ
๊ณ ๋ฆฌ"
[ํ
์ด๋ธ ์คํค๋ง ์ฒจ๋ถ]
2-2. ์ค์ ์ฌ์ฉํ ํ๋กฌํํธ
"์ง๊ธ ์ด Supabase ํ์ด์ง์์ ์ด ๊ท๊ฒฉ์ ๋ง๊ฒ 30๊ฐ๊น์ง ๋ค์ด๋ฒ๋ ์นด์นด์ค ํ์ 3 ์ด์ ๋ง์ง ๋ฐ์ดํฐ ์ ๋ ฅํด์ผ ํฉ๋๋ค. ์ฌ์ฉ ์ธ์ด๋ ํ๊ตญ์ด์ ๋ฒ์ฒด์ ์ค๊ตญ์ด๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด์ผ ํฉ๋๋ค."
๐ง 3๋จ๊ณ: Claude์ ๋๋ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ณผ์
3-1. ์๋ ์ ์ฝ์กฐ๊ฑด ํ์
Claude๊ฐ ๋จผ์ ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ๋ถ์ํ์ต๋๋ค:
SELECT column_name, data_type, is_nullable, column_default
FROM information_schema.columns
WHERE table_name = 'restaurants';
๋ฐ๊ฒฌํ ์ ์ฝ์กฐ๊ฑด: price_range๋ 'budget', 'moderate', 'expensive'๋ง ํ์ฉ