daiso 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +106 -7
  2. package/dist/api/actionsProxy.js +10 -0
  3. package/dist/api/compareHandlers.js +26 -0
  4. package/dist/api/configStatus.js +8 -0
  5. package/dist/api/feedbackHandlers.js +60 -0
  6. package/dist/api/healthCheckDefinitions.js +170 -0
  7. package/dist/api/healthCheckShape.js +106 -0
  8. package/dist/api/healthCheckTypes.js +4 -0
  9. package/dist/api/healthChecks.js +3 -271
  10. package/dist/api/opinetHandlers.js +91 -0
  11. package/dist/api/routes/compareRoutes.js +9 -0
  12. package/dist/api/routes/feedbackRoutes.js +5 -0
  13. package/dist/api/routes/healthRoutes.js +17 -1
  14. package/dist/api/routes/opinetRoutes.js +24 -0
  15. package/dist/bin.js +0 -0
  16. package/dist/cli/commandOptions.js +24 -2
  17. package/dist/cli/commands/apiCommand.js +24 -0
  18. package/dist/cli/commands/cinema.js +65 -0
  19. package/dist/cli/commands/convenience.js +75 -100
  20. package/dist/cli/http.js +1 -1
  21. package/dist/cli.js +12 -1
  22. package/dist/cliHelp.js +55 -8
  23. package/dist/cliRenderer.js +15 -0
  24. package/dist/core/outputSchema.js +141 -0
  25. package/dist/core/registry.js +1 -126
  26. package/dist/index.js +96 -28
  27. package/dist/pages/openapiFullSpec.js +8 -0
  28. package/dist/pages/openapiSpecActions.js +70 -0
  29. package/dist/pages/openapiSpecPathsCompare.js +59 -0
  30. package/dist/pages/openapiSpecPathsFeedback.js +95 -0
  31. package/dist/pages/openapiSpecPathsOpinet.js +81 -0
  32. package/dist/pages/promptReferenceText.js +18 -1
  33. package/dist/pages/promptRetailCinemaText.js +21 -4
  34. package/dist/services/compare/client.js +133 -0
  35. package/dist/services/compare/index.js +17 -0
  36. package/dist/services/compare/tools/compareProducts.js +45 -0
  37. package/dist/services/compare/types.js +1 -0
  38. package/dist/services/feedback/client.js +109 -0
  39. package/dist/services/feedback/index.js +22 -0
  40. package/dist/services/feedback/tools/submitDeveloperRequest.js +54 -0
  41. package/dist/services/feedback/types.js +3 -0
  42. package/dist/services/gs25/client.js +1 -84
  43. package/dist/services/gs25/productSearch.js +97 -0
  44. package/dist/services/oliveyoung/client.js +1 -55
  45. package/dist/services/oliveyoung/normalize.js +58 -0
  46. package/dist/services/opinet/client.js +231 -0
  47. package/dist/services/opinet/index.js +26 -0
  48. package/dist/services/opinet/location.js +119 -0
  49. package/dist/services/opinet/tools.js +80 -0
  50. package/dist/services/opinet/types.js +1 -0
  51. package/openapi.json +92 -0
  52. package/openapi.yaml +62 -0
  53. package/package.json +18 -17
package/openapi.json CHANGED
@@ -53,7 +53,9 @@
53
53
  "sevenelevenCheckInventory",
54
54
  "sevenelevenGetPopwords",
55
55
  "sevenelevenGetCatalog",
56
+ "compareProducts",
56
57
  "placesSearchNearby",
58
+ "submitDeveloperRequest",
57
59
  "megaboxFindTheaters",
58
60
  "megaboxListMovies",
59
61
  "megaboxGetSeats",
@@ -129,6 +131,96 @@
129
131
  "type": "string"
130
132
  }
131
133
  },
134
+ {
135
+ "name": "services",
136
+ "in": "query",
137
+ "required": false,
138
+ "description": "통합 비교 서비스 목록(daiso,gs25,seveneleven,emart24)",
139
+ "schema": {
140
+ "type": "string"
141
+ }
142
+ },
143
+ {
144
+ "name": "type",
145
+ "in": "query",
146
+ "required": false,
147
+ "description": "개발자 요청 유형(bug, improvement, feature, docs, other)",
148
+ "schema": {
149
+ "type": "string"
150
+ }
151
+ },
152
+ {
153
+ "name": "severity",
154
+ "in": "query",
155
+ "required": false,
156
+ "description": "개발자 요청 영향도(low, medium, high, critical)",
157
+ "schema": {
158
+ "type": "string"
159
+ }
160
+ },
161
+ {
162
+ "name": "title",
163
+ "in": "query",
164
+ "required": false,
165
+ "description": "개발자 요청 제목",
166
+ "schema": {
167
+ "type": "string"
168
+ }
169
+ },
170
+ {
171
+ "name": "description",
172
+ "in": "query",
173
+ "required": false,
174
+ "description": "개발자 요청 상세 설명",
175
+ "schema": {
176
+ "type": "string"
177
+ }
178
+ },
179
+ {
180
+ "name": "toolName",
181
+ "in": "query",
182
+ "required": false,
183
+ "description": "문제가 발생했거나 개선이 필요한 MCP 도구 이름",
184
+ "schema": {
185
+ "type": "string"
186
+ }
187
+ },
188
+ {
189
+ "name": "reproduction",
190
+ "in": "query",
191
+ "required": false,
192
+ "description": "오류 재현 방법",
193
+ "schema": {
194
+ "type": "string"
195
+ }
196
+ },
197
+ {
198
+ "name": "expected",
199
+ "in": "query",
200
+ "required": false,
201
+ "description": "기대 결과",
202
+ "schema": {
203
+ "type": "string"
204
+ }
205
+ },
206
+ {
207
+ "name": "actual",
208
+ "in": "query",
209
+ "required": false,
210
+ "description": "실제 결과",
211
+ "schema": {
212
+ "type": "string"
213
+ }
214
+ },
215
+ {
216
+ "name": "source",
217
+ "in": "query",
218
+ "required": false,
219
+ "description": "요청 출처(mcp, chatgpt, claude, cli, api, other)",
220
+ "schema": {
221
+ "type": "string"
222
+ }
223
+ },
132
224
  {
133
225
  "name": "sido",
134
226
  "in": "query",
package/openapi.yaml CHANGED
@@ -54,7 +54,9 @@ paths:
54
54
  - sevenelevenCheckInventory
55
55
  - sevenelevenGetPopwords
56
56
  - sevenelevenGetCatalog
57
+ - compareProducts
57
58
  - placesSearchNearby
59
+ - submitDeveloperRequest
58
60
  - megaboxFindTheaters
59
61
  - megaboxListMovies
60
62
  - megaboxGetSeats
@@ -106,6 +108,66 @@ paths:
106
108
  description: 주변 장소 카테고리(restaurant, cafe, food, dessert, all)
107
109
  schema:
108
110
  type: string
111
+ - name: services
112
+ in: query
113
+ required: false
114
+ description: 통합 비교 서비스 목록(daiso,gs25,seveneleven,emart24)
115
+ schema:
116
+ type: string
117
+ - name: type
118
+ in: query
119
+ required: false
120
+ description: 개발자 요청 유형(bug, improvement, feature, docs, other)
121
+ schema:
122
+ type: string
123
+ - name: severity
124
+ in: query
125
+ required: false
126
+ description: 개발자 요청 영향도(low, medium, high, critical)
127
+ schema:
128
+ type: string
129
+ - name: title
130
+ in: query
131
+ required: false
132
+ description: 개발자 요청 제목
133
+ schema:
134
+ type: string
135
+ - name: description
136
+ in: query
137
+ required: false
138
+ description: 개발자 요청 상세 설명
139
+ schema:
140
+ type: string
141
+ - name: toolName
142
+ in: query
143
+ required: false
144
+ description: 문제가 발생했거나 개선이 필요한 MCP 도구 이름
145
+ schema:
146
+ type: string
147
+ - name: reproduction
148
+ in: query
149
+ required: false
150
+ description: 오류 재현 방법
151
+ schema:
152
+ type: string
153
+ - name: expected
154
+ in: query
155
+ required: false
156
+ description: 기대 결과
157
+ schema:
158
+ type: string
159
+ - name: actual
160
+ in: query
161
+ required: false
162
+ description: 실제 결과
163
+ schema:
164
+ type: string
165
+ - name: source
166
+ in: query
167
+ required: false
168
+ description: 요청 출처(mcp, chatgpt, claude, cli, api, other)
169
+ schema:
170
+ type: string
109
171
  - name: sido
110
172
  in: query
111
173
  required: false
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "daiso",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Korean retail and cinema MCP server, CLI, and Codex Skill for Daiso, convenience stores, marts, Olive Young, and theaters",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -39,7 +39,8 @@
39
39
  "test": "vitest run",
40
40
  "test:watch": "vitest",
41
41
  "test:coverage": "vitest run --coverage",
42
- "check": "npm run format:check && npm run lint && npm run typecheck && npm test"
42
+ "check": "npm run format:check && npm run lint && npm run lint:biome && npm run typecheck && npm test",
43
+ "lint:biome": "biome lint"
43
44
  },
44
45
  "keywords": [
45
46
  "mcp",
@@ -78,24 +79,23 @@
78
79
  "node": ">=20"
79
80
  },
80
81
  "devDependencies": {
81
- "@cloudflare/workers-types": "^4.20260316.1",
82
+ "@biomejs/biome": "^2.4.15",
83
+ "@cloudflare/workers-types": "^4.20260526.1",
82
84
  "@eslint/js": "^10.0.1",
83
- "@types/node": "^25.5.0",
84
- "@vitest/coverage-v8": "^4.1.0",
85
- "chart.js": "^4.5.1",
86
- "chartjs-node-canvas": "^5.0.0",
87
- "chartjs-plugin-datalabels": "^2.2.0",
88
- "eslint": "^10.0.2",
85
+ "@types/node": "^25.9.1",
86
+ "@vitest/coverage-v8": "^4.1.7",
87
+ "eslint": "^10.4.0",
89
88
  "eslint-config-prettier": "^10.1.8",
90
89
  "globals": "^17.4.0",
91
- "jiti": "^2.6.1",
92
- "playwright": "^1.58.2",
93
- "prettier": "^3.8.1",
94
- "tsx": "^4.20.6",
90
+ "jiti": "^2.7.0",
91
+ "playwright": "^1.60.0",
92
+ "prettier": "^3.8.3",
93
+ "sharp": "^0.34.5",
94
+ "tsx": "^4.22.3",
95
95
  "typescript": "^6.0.3",
96
- "typescript-eslint": "^8.59.3",
97
- "vitest": "^4.1.0",
98
- "wrangler": "^4.73.0"
96
+ "typescript-eslint": "^8.60.0",
97
+ "vitest": "^4.1.7",
98
+ "wrangler": "^4.95.0"
99
99
  },
100
100
  "overrides": {
101
101
  "flatted": "3.4.2",
@@ -105,7 +105,8 @@
105
105
  },
106
106
  "dependencies": {
107
107
  "@modelcontextprotocol/sdk": "^1.27.1",
108
- "hono": "^4.12.8",
108
+ "hono": "^4.12.23",
109
+ "proj4": "^2.20.8",
109
110
  "workers-mcp": "^0.0.13"
110
111
  }
111
112
  }