@portone/mcp-server 0.15.0-alpha.3 → 0.15.0-alpha.5
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.
|
@@ -291,7 +291,7 @@ datetime: 2025-03-03T15:00:00.000Z
|
|
|
291
291
|
- 인증창 호출 시 업체 측에서 전달하는 Ret\_URL(본인확인 인증 결과 리턴 페이지 설정)이 해당 메뉴에 등록되어 있지 않으면 서비스 이용이 불가합니다.
|
|
292
292
|
|
|
293
293
|
* 인증결과를 받을 URL을 설정 방법
|
|
294
|
-
- 인증결과 경로 등록 URL : <https://
|
|
294
|
+
- 인증결과 경로 등록 URL : <https://checkout-service.prod.iamport.co/>
|
|
295
295
|
|
|
296
296
|
<Accordion title="▶KCP 관리자페이지>URL설정 경로 이미지 참고" image="https://help.portone.io/uploads/KCP_본인인증3333.png" />
|
|
297
297
|
|
package/manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@portone/mcp-server",
|
|
3
|
-
"version": "0.15.0-alpha.
|
|
3
|
+
"version": "0.15.0-alpha.5",
|
|
4
4
|
"description": "포트원 사용자를 위한 MCP (Model Context Protocol) 서버입니다. 포트원 개발자센터, 헬프센터 등 공식 문서 내용을 LLM(Large Language Model)에 제공해 정확한 정보를 바탕으로 사용자의 연동 및 질의를 돕도록 합니다.",
|
|
5
5
|
"main": "server/index.js",
|
|
6
6
|
"type": "module",
|
package/server/index.js
CHANGED
|
@@ -15,7 +15,7 @@ import { GraphQLClient } from "graphql-request";
|
|
|
15
15
|
// package.json
|
|
16
16
|
var package_default = {
|
|
17
17
|
name: "@portone/mcp-server",
|
|
18
|
-
version: "0.15.0-alpha.
|
|
18
|
+
version: "0.15.0-alpha.5",
|
|
19
19
|
description: "\uD3EC\uD2B8\uC6D0 \uC0AC\uC6A9\uC790\uB97C \uC704\uD55C MCP (Model Context Protocol) \uC11C\uBC84\uC785\uB2C8\uB2E4. \uD3EC\uD2B8\uC6D0 \uAC1C\uBC1C\uC790\uC13C\uD130, \uD5EC\uD504\uC13C\uD130 \uB4F1 \uACF5\uC2DD \uBB38\uC11C \uB0B4\uC6A9\uC744 LLM(Large Language Model)\uC5D0 \uC81C\uACF5\uD574 \uC815\uD655\uD55C \uC815\uBCF4\uB97C \uBC14\uD0D5\uC73C\uB85C \uC0AC\uC6A9\uC790\uC758 \uC5F0\uB3D9 \uBC0F \uC9C8\uC758\uB97C \uB3D5\uB3C4\uB85D \uD569\uB2C8\uB2E4.",
|
|
20
20
|
main: "server/index.js",
|
|
21
21
|
type: "module",
|
|
@@ -1058,12 +1058,39 @@ __export(getDocsUrl_exports, {
|
|
|
1058
1058
|
import z8 from "zod";
|
|
1059
1059
|
|
|
1060
1060
|
// src/tools/utils/docPathToUrl.ts
|
|
1061
|
+
var overridenPaths = /* @__PURE__ */ new Map([
|
|
1062
|
+
[
|
|
1063
|
+
"sdk/ko/v2-server-sdk/javascript",
|
|
1064
|
+
"https://github.com/portone-io/server-sdk/tree/main/javascript#readme"
|
|
1065
|
+
],
|
|
1066
|
+
[
|
|
1067
|
+
"sdk/ko/v2-server-sdk/python",
|
|
1068
|
+
"https://github.com/portone-io/server-sdk/tree/main/python#readme"
|
|
1069
|
+
],
|
|
1070
|
+
[
|
|
1071
|
+
"sdk/ko/v2-server-sdk/jvm",
|
|
1072
|
+
"https://github.com/portone-io/server-sdk/tree/main/jvm#readme"
|
|
1073
|
+
],
|
|
1074
|
+
[
|
|
1075
|
+
"sdk/ko/v2-mobile-sdk/android",
|
|
1076
|
+
"https://github.com/portone-io/android-sdk/tree/main#readme"
|
|
1077
|
+
],
|
|
1078
|
+
[
|
|
1079
|
+
"sdk/ko/v2-mobile-sdk/react-native",
|
|
1080
|
+
"https://github.com/portone-io/react-native-sdk/tree/main#readme"
|
|
1081
|
+
]
|
|
1082
|
+
]);
|
|
1061
1083
|
function docPathToUrl(path) {
|
|
1062
|
-
|
|
1063
|
-
|
|
1084
|
+
const withoutMd = path.endsWith(".md") ? path.slice(0, -3) : path;
|
|
1085
|
+
const overriden = overridenPaths.get(withoutMd);
|
|
1086
|
+
if (overriden != null) {
|
|
1087
|
+
return overriden;
|
|
1088
|
+
}
|
|
1089
|
+
if (withoutMd.startsWith("help/")) {
|
|
1090
|
+
const slug = withoutMd.slice(path.lastIndexOf("/") + 1);
|
|
1064
1091
|
return `${HELP_CENTER_URL}/content/${slug}`;
|
|
1065
1092
|
}
|
|
1066
|
-
return `${DEVELOPERS_URL}/${
|
|
1093
|
+
return `${DEVELOPERS_URL}/${withoutMd}`;
|
|
1067
1094
|
}
|
|
1068
1095
|
|
|
1069
1096
|
// src/tools/getDocsUrl.ts
|
|
@@ -2239,13 +2266,17 @@ function init10(schema) {
|
|
|
2239
2266
|
try {
|
|
2240
2267
|
const pruned_data = pruneYaml(schemaData, 3);
|
|
2241
2268
|
const yamlOutput = stringifyYaml(pruned_data);
|
|
2269
|
+
const structuredContent = {
|
|
2270
|
+
result: yamlOutput
|
|
2271
|
+
};
|
|
2242
2272
|
return {
|
|
2243
2273
|
content: [
|
|
2244
2274
|
{
|
|
2245
2275
|
type: "text",
|
|
2246
|
-
text:
|
|
2276
|
+
text: JSON.stringify(structuredContent, null, 2)
|
|
2247
2277
|
}
|
|
2248
|
-
]
|
|
2278
|
+
],
|
|
2279
|
+
structuredContent
|
|
2249
2280
|
};
|
|
2250
2281
|
} catch (error) {
|
|
2251
2282
|
return {
|
|
@@ -2286,9 +2317,6 @@ framework\uB97C \uC81C\uC678\uD55C \uBAA8\uB4E0 Args\uB294 \uC120\uD0DD\uC0AC\uD
|
|
|
2286
2317
|
"\uC0AC\uC6A9\uD560 \uACB0\uC81C \uBC29\uBC95. \uC635\uC158: card, virtualAccount, easyPay, transfer, mobile, giftCertificate"
|
|
2287
2318
|
),
|
|
2288
2319
|
smart_routing: z17.boolean().optional().describe("\uC2A4\uB9C8\uD2B8 \uB77C\uC6B0\uD305 \uC0AC\uC6A9 \uC5EC\uBD80. \uC635\uC158: true \uB610\uB294 false")
|
|
2289
|
-
},
|
|
2290
|
-
outputSchema: {
|
|
2291
|
-
result: z17.string().describe("\uB9C8\uD06C\uB2E4\uC6B4 \uD615\uC2DD\uC758 \uBC31\uC5D4\uB4DC \uCF54\uB4DC \uC608\uC81C")
|
|
2292
2320
|
}
|
|
2293
2321
|
};
|
|
2294
2322
|
function init11(apiBasePath) {
|
|
@@ -2318,17 +2346,13 @@ ${errorText}`
|
|
|
2318
2346
|
}
|
|
2319
2347
|
const data = await response.text();
|
|
2320
2348
|
if (data) {
|
|
2321
|
-
const structuredContent = {
|
|
2322
|
-
result: data
|
|
2323
|
-
};
|
|
2324
2349
|
return {
|
|
2325
2350
|
content: [
|
|
2326
2351
|
{
|
|
2327
2352
|
type: "text",
|
|
2328
|
-
text:
|
|
2353
|
+
text: data
|
|
2329
2354
|
}
|
|
2330
|
-
]
|
|
2331
|
-
structuredContent
|
|
2355
|
+
]
|
|
2332
2356
|
};
|
|
2333
2357
|
} else {
|
|
2334
2358
|
return {
|
|
@@ -2380,9 +2404,6 @@ framework\uB97C \uC81C\uC678\uD55C \uBAA8\uB4E0 Args\uB294 \uC120\uD0DD\uC0AC\uD
|
|
|
2380
2404
|
"\uC0AC\uC6A9\uD560 \uACB0\uC81C \uBC29\uBC95. \uC635\uC158: card, virtualAccount, easyPay, transfer, mobile, giftCertificate"
|
|
2381
2405
|
),
|
|
2382
2406
|
smart_routing: z18.boolean().optional().describe("\uC2A4\uB9C8\uD2B8 \uB77C\uC6B0\uD305 \uC0AC\uC6A9 \uC5EC\uBD80. \uC635\uC158: true \uB610\uB294 false")
|
|
2383
|
-
},
|
|
2384
|
-
outputSchema: {
|
|
2385
|
-
result: z18.string().describe("\uB9C8\uD06C\uB2E4\uC6B4 \uD615\uC2DD\uC758 \uD504\uB860\uD2B8\uC5D4\uB4DC \uCF54\uB4DC \uC608\uC81C")
|
|
2386
2407
|
}
|
|
2387
2408
|
};
|
|
2388
2409
|
function init12(apiBasePath) {
|
|
@@ -2412,17 +2433,13 @@ ${errorText}`
|
|
|
2412
2433
|
}
|
|
2413
2434
|
const data = await response.text();
|
|
2414
2435
|
if (data) {
|
|
2415
|
-
const structuredContent = {
|
|
2416
|
-
result: data
|
|
2417
|
-
};
|
|
2418
2436
|
return {
|
|
2419
2437
|
content: [
|
|
2420
2438
|
{
|
|
2421
2439
|
type: "text",
|
|
2422
|
-
text:
|
|
2440
|
+
text: data
|
|
2423
2441
|
}
|
|
2424
|
-
]
|
|
2425
|
-
structuredContent
|
|
2442
|
+
]
|
|
2426
2443
|
};
|
|
2427
2444
|
} else {
|
|
2428
2445
|
return {
|
|
@@ -2562,11 +2579,6 @@ max(0, idx - contextSize)\uBD80\uD130 min(contentLength, idx + len(query) + cont
|
|
|
2562
2579
|
showMetadata: z19.boolean().default(false).describe(
|
|
2563
2580
|
"true\uC774\uBA74 \uBB38\uC11C\uC758 \uBA54\uD0C0\uB370\uC774\uD130(\uC81C\uBAA9, \uC124\uBA85, \uB300\uC0C1 \uBC84\uC804)\uC744 \uACB0\uACFC\uC5D0 \uD3EC\uD568\uD569\uB2C8\uB2E4."
|
|
2564
2581
|
)
|
|
2565
|
-
},
|
|
2566
|
-
outputSchema: {
|
|
2567
|
-
result: z19.string().describe(
|
|
2568
|
-
`\uD3EC\uD2B8\uC6D0 \uBB38\uC11C\uB97C \uCC3E\uC73C\uBA74 \uD574\uB2F9 \uBB38\uC11C\uC758 \uACBD\uB85C\uC640 \uAE38\uC774, \uBA54\uD0C0\uB370\uC774\uD130, query\uAC00 \uB9E4\uCE6D\uB41C \uC8FC\uBCC0 \uCEE8\uD14D\uC2A4\uD2B8\uB97C \uBC18\uD658\uD569\uB2C8\uB2E4.`
|
|
2569
|
-
)
|
|
2570
2582
|
}
|
|
2571
2583
|
};
|
|
2572
2584
|
function formatOccurrence(occurrence) {
|
|
@@ -2682,17 +2694,14 @@ ${result}`;
|
|
|
2682
2694
|
const truncationMsg = `
|
|
2683
2695
|
|
|
2684
2696
|
... (output truncated due to length limit. Use page: ${page + 1} for next page)`;
|
|
2685
|
-
const
|
|
2686
|
-
result: fullResult.substring(0, limit) + truncationMsg
|
|
2687
|
-
};
|
|
2697
|
+
const truncatedResult = fullResult.substring(0, limit) + truncationMsg;
|
|
2688
2698
|
return {
|
|
2689
2699
|
content: [
|
|
2690
2700
|
{
|
|
2691
2701
|
type: "text",
|
|
2692
|
-
text:
|
|
2702
|
+
text: truncatedResult
|
|
2693
2703
|
}
|
|
2694
|
-
]
|
|
2695
|
-
structuredContent
|
|
2704
|
+
]
|
|
2696
2705
|
};
|
|
2697
2706
|
}
|
|
2698
2707
|
return {
|