ν‹°μŠ€ν† λ¦¬ λ·°

λ°˜μ‘ν˜•

 

🧠 MCP μ„œλ²„ ꡬ좕 κ°€μ΄λ“œ: ν”„λ‘¬ν”„νŠΈ κΈ°λŠ₯ μΆ”κ°€ν•˜κΈ°

MCP(Model Context Protocol) μ„œλ²„μ— ν”„λ‘¬ν”„νŠΈ κΈ°λŠ₯을 μΆ”κ°€ν•˜μ—¬,
AI λͺ¨λΈκ³Όμ˜ μƒν˜Έμž‘μš©μ„ λ”μš± 효율적으둜 λ§Œλ“œλŠ” 방법을 μ†Œκ°œν•©λ‹ˆλ‹€.
ν”„λ‘¬ν”„νŠΈλŠ” 반볡 κ°€λŠ₯ν•œ λ©”μ‹œμ§€ μ‹œν€€μŠ€λ₯Ό μ •μ˜ν•˜μ—¬, μΌκ΄€λœ AI 응닡을 μœ λ„ν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€.


πŸ”§ ν”„λ‘¬ν”„νŠΈλž€ λ¬΄μ—‡μΈκ°€μš”?

ν”„λ‘¬ν”„νŠΈλŠ” AI λͺ¨λΈκ³Όμ˜ μƒν˜Έμž‘μš©μ„ ν‘œμ€€ν™”ν•˜λŠ” ν…œν”Œλ¦Ώμž…λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄, μ½”λ“œ 리뷰, 데이터 뢄석, 이메일 생성 λ“±μ˜ μž‘μ—…μ— λŒ€ν•΄
μΌκ΄€λœ μš”μ²­ ν˜•μ‹μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

πŸ“„ μ˜ˆμ‹œ ν”„λ‘¬ν”„νŠΈ

  • μ½”λ“œ 리뷰 ν”„λ‘¬ν”„νŠΈ
  •  
  • "name": "code-review" Please review the following {{language}} code focusing on {{focusAreas}}: ```{{language}} {{codeBlock}}
  • 데이터 뢄석 ν”„λ‘¬ν”„νŠΈ
  • "name": "analyze-sales-data" Analyze {{timeframe}} sales data focusing on {{metrics}}
  • 이메일 생성 ν”„λ‘¬ν”„νŠΈ
  • "name": "generate-email" Generate a {{tone}} {{type}} email for {{context}}
λ°˜μ‘ν˜•

πŸ› οΈ ν”„λ‘¬ν”„νŠΈ κΈ°λŠ₯ κ΅¬ν˜„ν•˜κΈ°

1. ν”„λ‘¬ν”„νŠΈ μ •μ˜

// src/prompts.ts
export const prompts = {
  "create-greeting": {
    name: "create-greeting",
    description: "Generate a customized greeting message",
    arguments: [
      {
        name: "name",
        description: "Name of the person to greet",
        required: true,
      },
      {
        name: "style",
        description: "The style of greeting, such as formal, excited, or casual. If not specified, casual will be used",
      }
    ],
  },
};

2. ν”„λ‘¬ν”„νŠΈ ν•Έλ“€λŸ¬ κ΅¬ν˜„

export const promptHandlers = {
  "create-greeting": ({ name, style = "casual" }: { name: string, style?: string }) => {
    return {
      messages: [
        {
          role: "user",
          content: {
            type: "text",
            text: `Please generate a greeting in ${style} style to ${name}.`,
          },
        },
      ],
    };
  },
};

3. ν•Έλ“€λŸ¬μ— ν”„λ‘¬ν”„νŠΈ μΆ”κ°€

// src/handlers.ts
import {
  GetPromptRequestSchema,
  ListPromptsRequestSchema,
} from "@modelcontextprotocol/sdk/types.js";
import { promptHandlers, prompts } from "./prompts.js";

export const setupHandlers = (server: Server): void => {
  server.setRequestHandler(ListPromptsRequestSchema, () => ({ prompts }));
  server.setRequestHandler(GetPromptRequestSchema, (request) => {
    const { name } = request.params ?? {};
    const promptHandler = promptHandlers[name as keyof typeof promptHandlers];
    if (promptHandler) return promptHandler(request.arguments);
    throw new Error("Prompt not found");
  });
};

πŸ’‘ μ €μ˜ 생각

MCP μ„œλ²„μ— ν”„λ‘¬ν”„νŠΈ κΈ°λŠ₯을 μΆ”κ°€ν•¨μœΌλ‘œμ¨,
반볡적인 μš”μ²­μ„ ν‘œμ€€ν™”ν•˜κ³ , AI λͺ¨λΈκ³Όμ˜ μƒν˜Έμž‘μš©μ„
λ”μš± μΌκ΄€λ˜κ³  예츑 κ°€λŠ₯ν•˜κ²Œ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.

특히 μ½”λ“œ 리뷰, 데이터 뢄석, μ½˜ν…μΈ  생성과 같이
μΌκ΄€λœ ν˜•μ‹μ΄ μ€‘μš”ν•œ μž‘μ—…μ—μ„œλŠ” 맀우 μœ μš©ν•©λ‹ˆλ‹€.

λ˜ν•œ, ν”„λ‘¬ν”„νŠΈλ₯Ό λͺ¨λ“ˆν™”ν•˜μ—¬ κ΄€λ¦¬ν•˜λ©΄
μœ μ§€λ³΄μˆ˜μ„±κ³Ό ν™•μž₯성이 크게 ν–₯μƒλ©λ‹ˆλ‹€.
μ΄λŠ” νŒ€ ν˜‘μ—… μ‹œμ—λ„ 큰 μž₯점으둜 μž‘μš©ν•  κ²ƒμž…λ‹ˆλ‹€.

κ°œμΈμ μœΌλ‘œλŠ” μ΄λŸ¬ν•œ λͺ¨λ“ˆν™” μ „λž΅μ΄
ν–₯ν›„ λ‹€μ–‘ν•œ AI μ„œλΉ„μŠ€μ™€μ˜ 톡합에 맀우 μœ λ¦¬ν•˜λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.
ν•˜λ‚˜μ˜ ν”„λ‘¬ν”„νŠΈλ₯Ό λ‹€μ–‘ν•œ λ„κ΅¬μ—μ„œ μž¬μ‚¬μš©ν•  수 있기 λ•Œλ¬Έμ—
개발 속도와 μœ μ§€λ³΄μˆ˜μ„±μ΄ λ™μ‹œμ— ν–₯상될 κ²ƒμž…λ‹ˆλ‹€.


 

MCP μ„œλ²„, ν”„λ‘¬ν”„νŠΈ μ—”μ§€λ‹ˆμ–΄λ§, AI μƒν˜Έμž‘μš©, μ½”λ“œ 리뷰 μžλ™ν™”, 데이터 뢄석 μžλ™ν™”,
μ½˜ν…μΈ  생성, TypeScript, μ„œλ²„ ꡬ좕, AI 톡합, Model Context Protocol


 

β€» 이 ν¬μŠ€νŒ…μ€ 쿠팑 νŒŒνŠΈλ„ˆμŠ€ ν™œλ™μ˜ μΌν™˜μœΌλ‘œ, 이에 λ”°λ₯Έ μΌμ •μ•‘μ˜ 수수료λ₯Ό μ œκ³΅λ°›μŠ΅λ‹ˆλ‹€.
곡지사항
μ΅œκ·Όμ— 올라온 κΈ€
μ΅œκ·Όμ— 달린 λŒ“κΈ€
Total
Today
Yesterday
링크
Β«   2025/05   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
κΈ€ 보관함
λ°˜μ‘ν˜•