<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Skill on Jeongseup Blog</title><link>https://jeongseup.github.io/tags/skill/</link><description>Recent content in Skill on Jeongseup Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Sat, 19 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://jeongseup.github.io/tags/skill/index.xml" rel="self" type="application/rss+xml"/><item><title>Transformer에서 MCP와 Skill까지: AI 에이전트는 어떻게 생각하고 행동하는가?</title><link>https://jeongseup.github.io/p/transformer-mcp-skill/</link><pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate><guid>https://jeongseup.github.io/p/transformer-mcp-skill/</guid><description>&lt;img src="https://jeongseup.github.io/p/transformer-mcp-skill/cover.png" alt="Featured image of post Transformer에서 MCP와 Skill까지: AI 에이전트는 어떻게 생각하고 행동하는가?" /&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;요약:&lt;/strong&gt;&lt;br&gt;
CNN/RNN의 파편화를 끝낸 &lt;strong&gt;Transformer의 대통합&lt;/strong&gt;, &amp;ldquo;방 안의 뇌&amp;quot;였던 LLM에게 손발을 달아주려다 실패한 &lt;strong&gt;1세대 플러그인&lt;/strong&gt;, 그 한계를 극복한 오픈 표준 &lt;strong&gt;MCP(Model Context Protocol)&lt;/strong&gt;, 그리고 토큰 낭비 없이 전문 전술을 주입하는 **스킬(Skill)**의 진화 과정을 &lt;strong&gt;실제 통신 패킷과 시각화 아키텍처&lt;/strong&gt;로 쉽게 풀어봅니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id="1-프롤로그-모든-데이터가-하나로-통합되던-순간-transformer-혁명"&gt;1. 프롤로그: 모든 데이터가 하나로 통합되던 순간 (Transformer 혁명)
&lt;/h2&gt;&lt;p&gt;과거 딥러닝 시절에는 데이터 형태에 따라 완전히 다른 모델과 수학 공식을 써야 했습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;이미지:&lt;/strong&gt; 픽셀 격자 위를 훑는 3×3 필터 행렬 연산 (&lt;strong&gt;CNN&lt;/strong&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;텍스트:&lt;/strong&gt; 이전 단어의 기억을 다음 상태로 넘기는 재귀 루프 (&lt;strong&gt;RNN/LSTM&lt;/strong&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;하지만 2017년 &lt;strong&gt;Transformer&lt;/strong&gt;의 등장 이후, AI는 세상의 모든 데이터를 단 하나의 포맷, 즉 **&amp;lsquo;토큰(Token)&amp;rsquo;**으로 통일해 버렸습니다.&lt;/p&gt;
&lt;h3 id="-example-서로-다른-데이터가-토큰으로-바뀌는-실제-모습"&gt;💡 Example: 서로 다른 데이터가 토큰으로 바뀌는 실제 모습
&lt;/h3&gt;&lt;h4 id="-텍스트의-토큰화-bpe-tokenization"&gt;① 텍스트의 토큰화 (BPE Tokenization)
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;#34;def calculate(price):&amp;#34; ──► [721, 14205, 7, 4923, 1313]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h4 id="-이미지의-토큰화-vision-transformer-vit"&gt;② 이미지의 토큰화 (Vision Transformer, ViT)
&lt;/h4&gt;&lt;p&gt;224×224 픽셀 이미지를 16×16 픽셀짜리 바둑판 조각(패치) 196개로 자른 뒤 일렬로 펼쳐 단어처럼 취급합니다.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;[16x16 픽셀 패치 1개] ──► 1차원 펼치기 (768차원 실수 벡터) ──► [0.24, -0.81, 0.05, ...]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h4 id="-결과-다차원-공간에서의-공통-의미-좌표-수렴"&gt;③ 결과: 다차원 공간에서의 &amp;ldquo;공통 의미 좌표&amp;rdquo; 수렴
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Cosine Similarity( &amp;#34;고양이&amp;#34;, &amp;#34;cat&amp;#34; ) ≒ 0.96 (거의 일치)
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Cosine Similarity( &amp;#34;고양이&amp;#34;, [고양이 털 사진 16x16 패치] ) ≒ 0.91 (의미 일치!)
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Cosine Similarity( &amp;#34;고양이&amp;#34;, &amp;#34;class Cat(Animal):&amp;#34; ) ≒ 0.88 (코드와도 일치!)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h3 id="-architecture-1-transformer-multimodal-tokenization--shared-latent-space"&gt;🏛️ Architecture 1: Transformer Multimodal Tokenization &amp;amp; Shared Latent Space
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;아래 다이어그램은 글자, 이미지 패치, 오디오가 단일 트랜스포머 어텐션 계층을 거쳐 공통 잠재 공간(Shared Latent Space)으로 수렴하는 구조를 보여줍니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;iframe src="https://jeongseup.github.io/interactive/transformer-tokenization.html?embed=1" width="100%" height="520" frameborder="0" style="border: 1px solid var(--card-separator-color, #e0e0e0); border-radius: 8px; margin: 16px 0; width: 100%; box-shadow: 0 4px 12px rgba(0,0,0,0.05);" loading="lazy"&gt;&lt;/iframe&gt;
&lt;p align="center" style="font-size: 0.88rem; margin-top: -6px; margin-bottom: 20px;"&gt;
&lt;a href="https://jeongseup.github.io/interactive/transformer-tokenization.html" target="_blank" rel="noopener"&gt;🔍 &lt;strong&gt;인터랙티브 다이어그램 전체화면으로 보기&lt;/strong&gt; (줌/팬 &amp; 가이드 뷰 지원)&lt;/a&gt;
&lt;/p&gt;
&lt;details&gt;
&lt;summary style="cursor: pointer; font-size: 0.9rem; color: var(--card-text-color-secondary, #666); margin-bottom: 12px;"&gt;📷 정적 다이어그램 이미지로 보기&lt;/summary&gt;
&lt;p&gt;&lt;img src="https://jeongseup.github.io/p/transformer-mcp-skill/transformer-tokenization.png"
width="2048"
height="1320"
srcset="https://jeongseup.github.io/p/transformer-mcp-skill/transformer-tokenization_hu_115f03f3bf1c1b7d.png 480w, https://jeongseup.github.io/p/transformer-mcp-skill/transformer-tokenization_hu_feac5e7f1adfc3c9.png 1024w"
loading="lazy"
alt="Transformer Multimodal Tokenization"
class="gallery-image"
data-flex-grow="155"
data-flex-basis="372px"
&gt;&lt;/p&gt;
&lt;/details&gt;
&lt;hr&gt;
&lt;h2 id="2-방-안의-천재에게-손발을-달아주려던-1세대-시도-플러그인plugin의-실패"&gt;2. &amp;ldquo;방 안의 천재&amp;quot;에게 손발을 달아주려던 1세대 시도: 플러그인(Plugin)의 실패
&lt;/h2&gt;&lt;p&gt;똑똑해진 LLM도 혼자서는 방 안을 벗어날 수 없었습니다. 모델은 오직 &amp;ldquo;텍스트를 받아 다음 텍스트를 출력하는 수학 함수&amp;quot;였기 때문입니다. 이때 등장한 1세대 시도가 **2023년의 &amp;lsquo;ChatGPT Plugins&amp;rsquo;**였습니다.&lt;/p&gt;
&lt;h3 id="-example-과거-플러그인의-구조적-한계-ai-pluginjson"&gt;💡 Example: 과거 플러그인의 구조적 한계 (&lt;code&gt;ai-plugin.json&lt;/code&gt;)
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;schema_version&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;v1&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;name_for_model&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;autocad&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;api&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;openapi&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;url&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;https://api.my-cloud.com/openapi.yaml&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;[사용자] &amp;#34;내 맥북에 켜진 AutoCAD에 사각형 그려줘.&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ▼ (1) ChatGPT 클라우드가 플러그인 API 호출 시도
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;OpenAI Server ──► HTTP POST https://api.my-cloud.com/draw
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ▼ (2) &amp;#34;내 맥북의 로컬 AutoCAD를 어떻게 부르지?&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;클라우드 서버는 사용자의 개인 맥북 사설망(192.168.0.x)이나 COM 포트에 접속 불가!
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ❌ 결과: 로컬 PC 제어 불가능 (클라우드 SaaS만 호출 가능)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="3-2세대-표준화-혁명-mcp-model-context-protocol--ai의-usb-c"&gt;3. 2세대 표준화 혁명: MCP (Model Context Protocol) — AI의 USB-C
&lt;/h2&gt;&lt;p&gt;Anthropic이 오픈소스로 공개한 &lt;strong&gt;MCP&lt;/strong&gt;는 도구를 클라우드가 아닌 &lt;strong&gt;사용자의 로컬 컴퓨터에서 독립 프로세스로 실행&lt;/strong&gt;하도록 하여 이 한계를 정면으로 돌파했습니다.&lt;/p&gt;
&lt;h3 id="-example-ai와-로컬-앱-사이의-실제-통신-패킷-json-rpc"&gt;💡 Example: AI와 로컬 앱 사이의 실제 통신 패킷 (JSON-RPC)
&lt;/h3&gt;&lt;h4 id="-ai--mcp-server-request"&gt;① AI ➔ MCP Server (Request):
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;jsonrpc&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;2.0&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;method&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;tools/call&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;params&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;draw_line&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;arguments&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;start&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;end&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;500&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;layer&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Wall&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h4 id="-mcp-server--로컬-autocad-실행-후-ai-응답-response"&gt;② MCP Server ➔ 로컬 AutoCAD 실행 후 AI 응답 (Response):
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;jsonrpc&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;2.0&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[{&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;text&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;text&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Success: Line Entity #A284 created on &amp;#39;Wall&amp;#39;.&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="4-손발이-생겼는데-왜-또-스킬skill이-필요할까"&gt;4. 손발이 생겼는데 왜 또 &amp;lsquo;스킬(Skill)&amp;lsquo;이 필요할까?
&lt;/h2&gt;&lt;p&gt;도구(MCP)만 쥐어준다고 일을 잘하지는 않습니다.&lt;br&gt;
회사 규칙(&lt;code&gt;Git Flow&lt;/code&gt;), 커밋 컨벤션(&lt;code&gt;Conventional Commits&lt;/code&gt;), 도면 레이어 규칙을 모르면 엉뚱하게 도구를 쓰기 때문입니다.&lt;/p&gt;
&lt;p&gt;스킬은 모든 규칙을 시스템 프롬프트에 넣어 토큰을 낭비하는 대신, **필요한 순간에만 전문 매뉴얼(&lt;code&gt;SKILL.md&lt;/code&gt;)을 대화 컨텍스트에 동적 주입(Progressive Disclosure)**합니다.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="-architecture-2-plugin-vs-mcp-vs-skill-엔드투엔드-워크플로우"&gt;🏛️ Architecture 2: Plugin vs MCP vs Skill 엔드투엔드 워크플로우
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;아래 다이어그램은 상단의 &lt;strong&gt;Skill 주입 흐름&lt;/strong&gt;, 중앙의 &lt;strong&gt;에이전트 판단&lt;/strong&gt;, 그리고 하단의 **MCP 로컬 실행 (AutoCAD/Figma)**과 &lt;strong&gt;Legacy Plugin&lt;/strong&gt;의 차이를 한눈에 보여줍니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;iframe src="https://jeongseup.github.io/interactive/plugin-mcp-skill-workflow.html?embed=1" width="100%" height="580" frameborder="0" style="border: 1px solid var(--card-separator-color, #e0e0e0); border-radius: 8px; margin: 16px 0; width: 100%; box-shadow: 0 4px 12px rgba(0,0,0,0.05);" loading="lazy"&gt;&lt;/iframe&gt;
&lt;p align="center" style="font-size: 0.88rem; margin-top: -6px; margin-bottom: 20px;"&gt;
&lt;a href="https://jeongseup.github.io/interactive/plugin-mcp-skill-workflow.html" target="_blank" rel="noopener"&gt;🔍 &lt;strong&gt;인터랙티브 다이어그램 전체화면으로 보기&lt;/strong&gt; (Trace 애니메이션 및 뷰 전환 지원)&lt;/a&gt;
&lt;/p&gt;
&lt;details&gt;
&lt;summary style="cursor: pointer; font-size: 0.9rem; color: var(--card-text-color-secondary, #666); margin-bottom: 12px;"&gt;📷 정적 다이어그램 이미지로 보기&lt;/summary&gt;
&lt;p&gt;&lt;img src="https://jeongseup.github.io/p/transformer-mcp-skill/plugin-mcp-skill-workflow.png"
width="2048"
height="1320"
srcset="https://jeongseup.github.io/p/transformer-mcp-skill/plugin-mcp-skill-workflow_hu_a0562a66307748ad.png 480w, https://jeongseup.github.io/p/transformer-mcp-skill/plugin-mcp-skill-workflow_hu_77806e9148aafe07.png 1024w"
loading="lazy"
alt="Plugin vs MCP vs Skill Workflow"
class="gallery-image"
data-flex-grow="155"
data-flex-basis="372px"
&gt;&lt;/p&gt;
&lt;/details&gt;
&lt;hr&gt;
&lt;h2 id="5-실제-프롬프트-백엔드에서는-무슨-일이-일어나는가"&gt;5. 실제 프롬프트 백엔드에서는 무슨 일이 일어나는가?
&lt;/h2&gt;&lt;p&gt;사용자가 채팅창에 입력한 글은 단 한 줄이지만, 런타임은 배후에서 스킬을 결합하여 거대한 프롬프트로 확장(Augment)해 LLM에 전달합니다.&lt;/p&gt;
&lt;h3 id="사용자가-입력한-것"&gt;사용자가 입력한 것:
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;ldquo;새로운 로그인 기능 커밋하고 PR 올려줘. /git-workflow&amp;rdquo;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="실제-llm-api로-전달되는-http-payload"&gt;실제 LLM API로 전달되는 HTTP Payload:
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;model&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;claude-3-7-sonnet&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;messages&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;role&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;system&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;당신은 AI 코딩 어시스턴트입니다...&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;role&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;system&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;injected_skill_instructions&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;=== [DYNAMIC SKILL LOADED: git-workflow] ===\n1. 커밋 전 반드시 npm test 통과 여부를 검증할 것.\n2. 커밋 메시지는 &amp;#39;feat(auth): ...&amp;#39; 형식을 준수할 것.\n3. main에 직접 푸시하지 말고 feature/ 브랜치를 생성할 것.\n============================================&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;role&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;user&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;새로운 로그인 기능 커밋하고 PR 올려줘.&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tools&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[{&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;mcp_git_cli&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;description&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;로컬 git 명령어 실행&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="6-결론-2026-에이전트-아키텍처의-완성-공식"&gt;6. 결론: 2026 에이전트 아키텍처의 완성 공식
&lt;/h2&gt;$$\text{완전한 AI 에이전트} = \text{Transformer (두뇌)} + \text{Skill (전술/SOP)} + \text{MCP (손발/도구)}$$&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Transformer:&lt;/strong&gt; 텍스트, 코드, 이미지를 단일 토큰 공간에서 해석하는 &lt;strong&gt;거대한 만능 두뇌&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Skill:&lt;/strong&gt; 토큰을 낭비하지 않고 필요할 때만 전문가 매뉴얼을 뇌에 주입하는 &lt;strong&gt;동적 전술 지침(SOP)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MCP:&lt;/strong&gt; 내 컴퓨터의 OS, 로컬 파일, CAD, Figma, DB를 직접 조종하는 &lt;strong&gt;표준화된 인터페이스 (USB-C)&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;이 세 요소가 결합될 때 비로소 모델은 단순한 챗봇을 넘어, &lt;strong&gt;현실 세계의 소프트웨어와 엔지니어링 문제를 스스로 해결하는 진정한 에이전트&lt;/strong&gt;로 진화합니다.&lt;/p&gt;</description></item></channel></rss>