# MCP Swagger UI ๆถๆ่ฎพ่ฎกๆๆกฃ
## ๆดไฝๆถๆๅพ
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ็จๆท็้ขๅฑ (UI Layer) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Home.vue โ
โ โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโ โ
โ โ ่พๅ
ฅๅบๅ โ ้ข่งๅบๅ โ ้
็ฝฎๅบๅ โ โ
โ โ โโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโ โ โโโโโโโโโโโโโโโ โ โ
โ โ โข URL ่พๅ
ฅ โ โข API ไฟกๆฏ โ โข HTTP ๆนๆณ โ โ
โ โ โข ๆไปถไธไผ โ โข ็ซฏ็นๅ่กจ โ โข ๆ ็ญพ่ฟๆปค โ โ
โ โ โข ๆๆฌ็ฒ่ดด โ โข ็ถๆๆพ็คบ โ โข ้ซ็บง้้กน โ โ
โ โโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโ โ
โ ็ปๆๅบๅ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ โข MCP ้
็ฝฎ้ข่ง โข ไธ่ฝฝๅ่ฝ โข ๅคๅถๅ่ฝ โข ๅฏๅจๅฝไปค โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ (Vue Router)
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ็ถๆ็ฎก็ๅฑ (State Layer) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Pinia Store โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ AppStore (stores/app.ts) โ โ
โ โ โโ State: โ โ
โ โ โ โข inputSource: InputSource โ โ
โ โ โ โข config: ConvertConfig โ โ
โ โ โ โข apiInfo: OpenApiInfo โ โ
โ โ โ โข endpoints: ApiEndpoint[] โ โ
โ โ โ โข convertResult: ConvertResult โ โ
โ โ โ โข loading: boolean โ โ
โ โ โ โข error: string โ โ
โ โ โโ Getters: โ โ
โ โ โ โข isValidInput โ โ
โ โ โ โข availableTags โ โ
โ โ โ โข filteredEndpoints โ โ
โ โ โโ Actions: โ โ
โ โ โ โข setInputSource() โ โ
โ โ โ โข validateInput() โ โ
โ โ โ โข previewApi() โ โ
โ โ โ โข convertToMcp() โ โ
โ โ โโ Mutations: (้่ฟ Actions ่ชๅจๅค็) โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ (Axios HTTP)
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๆๅกๅฑ (Service Layer) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ API Service โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ utils/api.ts โ โ
โ โ โโ validateApi(source): ้ช่ฏ OpenAPI ่ง่ โ โ
โ โ โโ previewApi(source): ้ข่ง API ไฟกๆฏ โ โ
โ โ โโ convertApi(params): ่ฝฌๆขไธบ MCP ๆ ผๅผ โ โ
โ โ โโ downloadFile(): ๆไปถไธ่ฝฝๅทฅๅ
ท โ โ
โ โ โโ copyToClipboard(): ๅช่ดดๆฟๆไฝ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ utils/demo-data.ts (ๆผ็คบๆจกๅผๆฐๆฎ) โ โ
โ โ โโ demoApiInfo: ๆผ็คบ API ไฟกๆฏ โ โ
โ โ โโ demoEndpoints: ๆผ็คบ็ซฏ็นๆฐๆฎ โ โ
โ โ โโ demoConvertResult: ๆผ็คบ่ฝฌๆข็ปๆ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ (HTTP/WebSocket)
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๅ็ซฏๆๅก (Backend) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ MCP Swagger Server โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ HTTP API ็ซฏ็น: โ โ
โ โ โโ POST /api/validate - ้ช่ฏ OpenAPI ่ง่ โ โ
โ โ โโ POST /api/preview - ้ข่ง API ไฟกๆฏ โ โ
โ โ โโ POST /api/convert - ่ฝฌๆขไธบ MCP ๆ ผๅผ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
## ๆฐๆฎๆตๅพ
```
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ ็จๆท่พๅ
ฅ โ โ ็ถๆ็ฎก็ โ โ API ่ฐ็จ โ
โ โ โ โ โ โ
โ โข URL ๅฐๅ โโโโโถโ setInputSource โโโโโถโ validateApi โ
โ โข ไธไผ ๆไปถ โ โ โ โ โ
โ โข ็ฒ่ดดๆๆฌ โ โ โโโโโโโโโโโโโโโ โ โ โโโโโโโโโโโโโโโ โ
โ โ โ โ inputSource โ โ โ โ ้ช่ฏ็ปๆ โ โ
โโโโโโโโโโโโโโโโโโโ โ โ config โ โ โ โโโโโโโโโโโโโโโ โ
โ โ loading โ โ โ โ
โโโโโโโโโโโโโโโโโโโ โ โ error โ โ โ previewApi โ
โ ้
็ฝฎ้้กน โโโโโถโ โโโโโโโโโโโโโโโ โโโโโถโ โ
โ โ โ โ โ โโโโโโโโโโโโโโโ โ
โ โข HTTP ๆนๆณ โ โ setConfig โ โ โ API ไฟกๆฏ โ โ
โ โข ๆ ็ญพ่ฟๆปค โ โ โ โ โ ็ซฏ็นๅ่กจ โ โ
โ โข ้ซ็บง้้กน โ โ โโโโโโโโโโโโโโโ โ โ โโโโโโโโโโโโโโโ โ
โ โ โ โ apiInfo โ โ โ โ
โโโโโโโโโโโโโโโโโโโ โ โ endpoints โ โโโโโโ convertApi โ
โ โโโโโโโโโโโโโโโ โ โ โ
โโโโโโโโโโโโโโโโโโโ โ โ โ โโโโโโโโโโโโโโโ โ
โ ็จๆทๆไฝ โ โ convertToMcp โ โ โ MCP ้
็ฝฎ โ โ
โ โโโโโถโ โ โ โ ๅทฅๅ
ทๅ่กจ โ โ
โ โข ่ฝฌๆขๆ้ฎ โ โ โโโโโโโโโโโโโโโ โ โ โ ๅ
ๆฐๆฎ โ โ
โ โข ้ช่ฏๆ้ฎ โ โ โconvertResultโ โโโโโโ โโโโโโโโโโโโโโโ โ
โ โข ไธ่ฝฝๆ้ฎ โ โ โโโโโโโโโโโโโโโ โ โ โ
โ โ โ โ โโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ ็จๆท็้ข โ
โ โ
โ โข ่ฟๅบฆๆ็คบๅจ โ
โ โข ้ข่ง้ขๆฟ โ
โ โข ็ปๆๅฑ็คบ โ
โ โข ้่ฏฏๆ็คบ โ
โ โ
โโโโโโโโโโโโโโโโโโโ
```
## ็ปไปถๅ
ณ็ณปๅพ
```
App.vue
โโ router-view
โโ Home.vue (ไธป้กต้ข)
โโ ่พๅ
ฅ้จๅ (ๅ
่็ปไปถ)
โ โโ URL ่พๅ
ฅๆ ็ญพ้กต
โ โโ ๆไปถไธไผ ๆ ็ญพ้กต
โ โโ ๆๆฌ่พๅ
ฅๆ ็ญพ้กต
โ
โโ ้ข่ง้จๅ (ๅ
่็ปไปถ)
โ โโ API ๅบๆฌไฟกๆฏๅก็
โ โโ ็ซฏ็นๅ่กจ็ฝๆ ผ
โ โโ ็ถๆๅพฝ็ซ
โ
โโ ้
็ฝฎ้จๅ (ๅ
่็ปไปถ)
โ โโ HTTP ๆนๆณ่ฟๆปค
โ โโ ๆ ็ญพ่ฟๆปค
โ โโ ้ซ็บง้้กน
โ โโ ไผ ่พๅ่ฎฎ้ๆฉ
โ
โโ ็ปๆ้จๅ (ๅ
่็ปไปถ)
โโ MCP ้
็ฝฎ้ข่ง
โโ ไธ่ฝฝๆ้ฎ
โโ ๅคๅถๆ้ฎ
โโ ๅฏๅจๅฝไปค
```
## ็ถๆ็ฎก็ๆต็จ
```
โโโโโโโโโโโโโโโโโโโ Action โโโโโโโโโโโโโโโโโโโ
โ Vue ็ปไปถ โโโโโโโโโโโโโโโถโ Pinia Store โ
โ โ โ โ
โ โข ็จๆทไบคไบ โ โ โข ็ถๆๆดๆฐ โ
โ โข ไบไปถ่งฆๅ โ โ โข ๅฏไฝ็จๅค็ โ
โ โข ็ๅฝๅจๆ โ โ โข API ่ฐ็จ โ
โ โ โ โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โฒ โ
โ โ State Change
โ โผ
โโโโโโโโโโโโโโโโโโโ Reactive โโโโโโโโโโโโโโโโโโโ
โ Vue ๅๅบๅผ โโโโโโโโโโโโโโโโ Store State โ
โ โ โ โ
โ โข ้ๆฐๆธฒๆ โ โ โข inputSource โ
โ โข ่ฎก็ฎๅฑๆง โ โ โข config โ
โ โข ็ๅฌๅจ โ โ โข apiInfo โ
โ โ โ โข endpoints โ
โโโโโโโโโโโโโโโโโโโ โ โข convertResult โ
โ โข loading โ
โ โข error โ
โโโโโโโโโโโโโโโโโโโ
```
## API ่ฐ็จๆต็จ
```
โโโโโโโโโโโโโโโโโโโ
โ ็จๆท่งฆๅๆไฝ โ
โ (็นๅป่ฝฌๆขๆ้ฎ) โ
โโโโโโโโโโโฌโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ Home.vue โ
โ handleConvert() โ
โโโโโโโโโโโฌโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ AppStore โ
โ setInputSource()โ
โ previewApi() โ
โ convertToMcp() โ
โโโโโโโโโโโฌโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ HTTP โโโโโโโโโโโโโโโโโโโ
โ API Service โโโโโโโโโโโโโถโ Backend API โ
โ utils/api.ts โ โ โ
โ โโโโโโโโโโโโโโ โข /api/preview โ
โ โข ่ฏทๆฑๅฐ่ฃ
โ Response โ โข /api/convert โ
โ โข ้่ฏฏๅค็ โ โ โข /api/validate โ
โ โข ๅๅบ่งฃๆ โ โ โ
โโโโโโโโโโโฌโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ Store ็ถๆๆดๆฐ โ
โ โข loading: true โ
โ โข apiInfo: data โ
โ โข convertResult โ
โ โข error: null โ
โโโโโโโโโโโฌโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ UI ่ชๅจๆดๆฐ โ
โ โข ๆพ็คบ่ฟๅบฆ โ
โ โข ๅฑ็คบ็ปๆ โ
โ โข ๅค็้่ฏฏ โ
โโโโโโโโโโโโโโโโโโโ
```
## ็ฑปๅ็ณป็ปๆถๆ
```
types/index.ts
โโ InputSource - ่พๅ
ฅๆบ็ฑปๅ
โ โโ type: 'url' | 'file' | 'text'
โ โโ content: string
โ โโ auth?: AuthConfig
โ
โโ ConvertConfig - ่ฝฌๆข้
็ฝฎ
โ โโ filters: FilterConfig
โ โโ transport: TransportType
โ โโ optimization: OptimizationConfig
โ
โโ OpenApiInfo - API ๅบๆฌไฟกๆฏ
โ โโ title: string
โ โโ version: string
โ โโ description?: string
โ โโ serverUrl?: string
โ
โโ ApiEndpoint - API ็ซฏ็น
โ โโ method: string
โ โโ path: string
โ โโ summary?: string
โ โโ tags?: string[]
โ โโ deprecated?: boolean
โ
โโ ConvertResult - ่ฝฌๆข็ปๆ
โ โโ mcpConfig: McpConfig
โ โโ metadata: ResultMetadata
โ โโ processingTime: number
โ
โโ AppState - ๅบ็จ็ถๆ
โโ inputSource: InputSource
โโ config: ConvertConfig
โโ apiInfo: OpenApiInfo | null
โโ endpoints: ApiEndpoint[]
โโ convertResult: ConvertResult | null
โโ loading: boolean
โโ error: string | null
```
## ๆๅปบๅ้จ็ฝฒๆถๆ
```
ๅผๅ็ฏๅข (Development)
โโ Vite Dev Server (Port 3000)
โ โโ HMR (็ญๆจกๅๆฟๆข)
โ โโ TypeScript ็ผ่ฏ
โ โโ Vue SFC ๅค็
โ โโ API ไปฃ็ (/api โ localhost:3322)
โ
โโ ่ชๅจๅฏผๅ
ฅ
โ โโ Vue APIs (ref, reactive, computed...)
โ โโ Router APIs (useRouter, useRoute...)
โ โโ Pinia APIs (defineStore, storeToRefs...)
โ โโ Element Plus ็ปไปถ
โ
โโ ๅผๅๅทฅๅ
ท
โโ Vue DevTools
โโ TypeScript ็ฑปๅๆฃๆฅ
โโ ESLint ไปฃ็ ๆฃๆฅ
โโ Prettier ไปฃ็ ๆ ผๅผๅ
็ไบง็ฏๅข (Production)
โโ ๆๅปบ่พๅบ (dist/)
โ โโ HTML ๆจกๆฟ
โ โโ JavaScript ๅ
โ โ โโ ไธปๅบ็จๅ
โ โ โโ Element Plus ๅ
โ โ โโ Monaco Editor ๅ
โ โโ CSS ๆ ทๅผ
โ โโ ้ๆ่ตๆบ
โ
โโ ไผๅ็ญ็ฅ
โ โโ ไปฃ็ ๅๅฒ (Code Splitting)
โ โโ Tree Shaking
โ โโ ่ตๆบๅ็ผฉ
โ โโ ็ผๅญ็ญ็ฅ
โ
โโ ้จ็ฝฒ้้กน
โโ ้ๆๆไปถๆๅกๅจ
โโ CDN ๅๅ
โโ Docker ๅฎนๅจๅ
```
่ฟไธชๆถๆ่ฎพ่ฎกๆๆกฃๆไพไบ MCP Swagger UI ้กน็ฎ็ๅฎๆดๆถๆ่งๅพ๏ผๅ
ๆฌ็ปไปถๅ
ณ็ณปใๆฐๆฎๆตใ็ถๆ็ฎก็ๅๆๅปบ้จ็ฝฒ็ญๅไธชๆน้ข็่ฏฆ็ป่ฏดๆใ