@yjzf/mcp-server-yjzf 0.2.4 → 0.2.6

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 (58) hide show
  1. package/dist/index.js +20 -9
  2. package/dist/index.js.map +1 -1
  3. package/dist/tools/contract/investment_contract.d.ts +8 -0
  4. package/dist/tools/contract/investment_contract.d.ts.map +1 -0
  5. package/dist/tools/contract/investment_contract.js +100 -0
  6. package/dist/tools/contract/investment_contract.js.map +1 -0
  7. package/dist/tools/contract/lease_sale_contract_export.d.ts +30 -0
  8. package/dist/tools/contract/lease_sale_contract_export.d.ts.map +1 -0
  9. package/dist/tools/contract/lease_sale_contract_export.js +171 -0
  10. package/dist/tools/contract/lease_sale_contract_export.js.map +1 -0
  11. package/dist/tools/contract/new_house_contract_export.d.ts +14 -0
  12. package/dist/tools/contract/new_house_contract_export.d.ts.map +1 -0
  13. package/dist/tools/contract/new_house_contract_export.js +205 -0
  14. package/dist/tools/contract/new_house_contract_export.js.map +1 -0
  15. package/dist/tools/data/count_all_statement.d.ts +46 -0
  16. package/dist/tools/data/count_all_statement.d.ts.map +1 -0
  17. package/dist/tools/data/count_all_statement.js +322 -0
  18. package/dist/tools/data/count_all_statement.js.map +1 -0
  19. package/dist/tools/data/overview_by_c.d.ts +26 -0
  20. package/dist/tools/data/overview_by_c.d.ts.map +1 -0
  21. package/dist/tools/data/overview_by_c.js +190 -0
  22. package/dist/tools/data/overview_by_c.js.map +1 -0
  23. package/dist/tools/data/statement_query.d.ts +43 -0
  24. package/dist/tools/data/statement_query.d.ts.map +1 -0
  25. package/dist/tools/data/statement_query.js +430 -0
  26. package/dist/tools/data/statement_query.js.map +1 -0
  27. package/dist/tools/util/branch_select.d.ts +26 -0
  28. package/dist/tools/util/branch_select.d.ts.map +1 -0
  29. package/dist/tools/util/branch_select.js +50 -0
  30. package/dist/tools/util/branch_select.js.map +1 -0
  31. package/dist/tools/util/date_to_timestamp.d.ts +19 -0
  32. package/dist/tools/util/date_to_timestamp.d.ts.map +1 -0
  33. package/dist/tools/util/date_to_timestamp.js +45 -0
  34. package/dist/tools/util/date_to_timestamp.js.map +1 -0
  35. package/dist/tools/util/get_current_time.d.ts +13 -0
  36. package/dist/tools/util/get_current_time.d.ts.map +1 -0
  37. package/dist/tools/util/get_current_time.js +23 -0
  38. package/dist/tools/util/get_current_time.js.map +1 -0
  39. package/dist/tools/util/hello_world.d.ts +20 -0
  40. package/dist/tools/util/hello_world.d.ts.map +1 -0
  41. package/dist/tools/util/hello_world.js +47 -0
  42. package/dist/tools/util/hello_world.js.map +1 -0
  43. package/dist/utils/async-export.d.ts +37 -0
  44. package/dist/utils/async-export.d.ts.map +1 -0
  45. package/dist/utils/async-export.js +73 -0
  46. package/dist/utils/async-export.js.map +1 -0
  47. package/dist/utils/cities.d.ts +11 -0
  48. package/dist/utils/cities.d.ts.map +1 -0
  49. package/dist/utils/cities.js +22 -0
  50. package/dist/utils/cities.js.map +1 -0
  51. package/dist/utils/env.d.ts +0 -1
  52. package/dist/utils/env.d.ts.map +1 -1
  53. package/dist/utils/env.js +0 -3
  54. package/dist/utils/env.js.map +1 -1
  55. package/dist/utils/http.d.ts.map +1 -1
  56. package/dist/utils/http.js +5 -5
  57. package/dist/utils/http.js.map +1 -1
  58. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date_to_timestamp.js","sourceRoot":"","sources":["../../../src/tools/util/date_to_timestamp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,IAAI,GAAG,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,kJAAkJ;IAC/J,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;aACb,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC;aAC1B,KAAK,CAAC,SAAS,EAAE,8BAA8B,CAAC;aAChD,QAAQ,CAAC,+BAA+B,CAAC;QAC5C,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;aAC7B,QAAQ,CAAC,sEAAsE,CAAC;KACpF,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAA0C;IACtE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAEhC,iBAAiB;IACjB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW;IACjE,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE/C,qBAAqB;IACrB,gDAAgD;IAChD,IAAI,gBAAwB,CAAC;IAC7B,IAAI,QAAQ,EAAE,CAAC;QACb,uBAAuB;QACvB,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,uBAAuB;QACvB,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,SAAS,EAAE,gBAAgB;oBAC3B,aAAa,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE;iBACxD,EAAE,IAAI,EAAE,CAAC,CAAC;aACZ;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import * as z from "zod/v4";
2
+ export declare const name = "get_current_time";
3
+ export declare const schema: {
4
+ description: string;
5
+ inputSchema: z.ZodObject<{}, z.core.$strip>;
6
+ };
7
+ export declare function handler(): Promise<{
8
+ content: {
9
+ type: "text";
10
+ text: string;
11
+ }[];
12
+ }>;
13
+ //# sourceMappingURL=get_current_time.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_current_time.d.ts","sourceRoot":"","sources":["../../../src/tools/util/get_current_time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,eAAO,MAAM,IAAI,qBAAqB,CAAC;AAEvC,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,wBAAsB,OAAO;;;;;GAgB5B"}
@@ -0,0 +1,23 @@
1
+ import * as z from "zod/v4";
2
+ export const name = "get_current_time";
3
+ export const schema = {
4
+ description: "获取当前时间的毫秒时间戳和格式化时间 当需要知晓当前日期时间时必须先调用此工具",
5
+ inputSchema: z.object({}),
6
+ };
7
+ export async function handler() {
8
+ const now = new Date();
9
+ const timestamp = now.getTime();
10
+ const formattedTime = now.toISOString();
11
+ return {
12
+ content: [
13
+ {
14
+ type: "text",
15
+ text: JSON.stringify({
16
+ timestamp: timestamp,
17
+ formattedTime: formattedTime,
18
+ }, null, 2),
19
+ },
20
+ ],
21
+ };
22
+ }
23
+ //# sourceMappingURL=get_current_time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get_current_time.js","sourceRoot":"","sources":["../../../src/tools/util/get_current_time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAEvC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,aAAa,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAExC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,SAAS,EAAE,SAAS;oBACpB,aAAa,EAAE,aAAa;iBAC7B,EAAE,IAAI,EAAE,CAAC,CAAC;aACZ;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ import * as z from "zod/v4";
2
+ export declare const name = "hello_world";
3
+ export declare const schema: {
4
+ description: string;
5
+ inputSchema: z.ZodObject<{}, z.core.$strip>;
6
+ };
7
+ export declare function handler(): Promise<{
8
+ content: {
9
+ type: "text";
10
+ text: string;
11
+ }[];
12
+ isError: boolean;
13
+ } | {
14
+ content: {
15
+ type: "text";
16
+ text: string;
17
+ }[];
18
+ isError?: undefined;
19
+ }>;
20
+ //# sourceMappingURL=hello_world.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hello_world.d.ts","sourceRoot":"","sources":["../../../src/tools/util/hello_world.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAI5B,eAAO,MAAM,IAAI,gBAAgB,CAAC;AAElC,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,wBAAsB,OAAO;;;;;;;;;;;;GAyC5B"}
@@ -0,0 +1,47 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import * as z from "zod/v4";
4
+ import { getDataDir, getGatewayBaseUrl } from "../../utils/env.js";
5
+ import { buildGatewayHeaders } from "../../utils/http.js";
6
+ export const name = "hello_world";
7
+ export const schema = {
8
+ description: "Say hello world to YJZF",
9
+ inputSchema: z.object({}),
10
+ };
11
+ export async function handler() {
12
+ const headers = buildGatewayHeaders();
13
+ // HTTP GET request
14
+ const response = await fetch(`${getGatewayBaseUrl()}/hello_world`, {
15
+ method: "GET",
16
+ headers,
17
+ });
18
+ if (!response.ok) {
19
+ return {
20
+ content: [
21
+ {
22
+ type: "text",
23
+ text: `Request failed with status ${response.status}: ${response.statusText}`,
24
+ },
25
+ ],
26
+ isError: true,
27
+ };
28
+ }
29
+ const body = await response.text();
30
+ // Ensure data directory exists
31
+ const dataDir = getDataDir();
32
+ fs.mkdirSync(dataDir, { recursive: true });
33
+ // Write response to file with datetime prefix
34
+ const now = new Date();
35
+ const datetimePrefix = now.toISOString().replace(/[:.]/g, "-").slice(0, 19);
36
+ const filePath = path.join(dataDir, `${datetimePrefix}-hello_world-response.txt`);
37
+ fs.writeFileSync(filePath, body, "utf-8");
38
+ return {
39
+ content: [
40
+ {
41
+ type: "text",
42
+ text: `Response saved to ${filePath}\n\n${body}`,
43
+ },
44
+ ],
45
+ };
46
+ }
47
+ //# sourceMappingURL=hello_world.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hello_world.js","sourceRoot":"","sources":["../../../src/tools/util/hello_world.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,CAAC,MAAM,IAAI,GAAG,aAAa,CAAC;AAElC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,yBAAyB;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,mBAAmB;IACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,iBAAiB,EAAE,cAAc,EAAE;QACjE,MAAM,EAAE,KAAK;QACb,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,8BAA8B,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE;iBAC9E;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEnC,+BAA+B;IAC/B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3C,8CAA8C;IAC9C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,2BAA2B,CAAC,CAAC;IAClF,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE1C,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,qBAAqB,QAAQ,OAAO,IAAI,EAAE;aACjD;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * 单次轮询返回的状态
3
+ */
4
+ export type PollStatus = {
5
+ state: "pending";
6
+ } | {
7
+ state: "success";
8
+ downloadUrl: string;
9
+ } | {
10
+ state: "failed";
11
+ reason?: string;
12
+ };
13
+ /**
14
+ * 轮询配置
15
+ */
16
+ export interface PollAsyncExportConfig {
17
+ /** 每次轮询调用,由各工具自行实现状态判定逻辑 */
18
+ checkStatus: () => Promise<PollStatus>;
19
+ /** 轮询间隔序列(ms),超出序列长度后重复最后一个值 */
20
+ intervals?: number[];
21
+ /** 最大等待时间(ms),默认 600000 (10分钟) */
22
+ maxWait?: number;
23
+ /** 连续错误次数上限,默认 3 */
24
+ maxConsecutiveErrors?: number;
25
+ /** 日志标签 */
26
+ logTag?: string;
27
+ }
28
+ /**
29
+ * 轮询异步导出状态,成功时返回 downloadUrl。
30
+ * 失败或超时时 throw Error。
31
+ */
32
+ export declare function pollAsyncExport(config: PollAsyncExportConfig): Promise<string>;
33
+ /**
34
+ * 从 URL 下载文件到 DATA_DIR,返回本地文件绝对路径。
35
+ */
36
+ export declare function downloadToDataDir(url: string, fileName: string): Promise<string>;
37
+ //# sourceMappingURL=async-export.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-export.d.ts","sourceRoot":"","sources":["../../src/utils/async-export.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,MAAM,UAAU,GAChB;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,GACpB;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,4BAA4B;IAC5B,WAAW,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACvC,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAkBD;;;GAGG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4CpF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWtF"}
@@ -0,0 +1,73 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import { getDataDir } from "./env.js";
4
+ // ---------------------------------------------------------------------------
5
+ // 默认配置
6
+ // ---------------------------------------------------------------------------
7
+ const DEFAULT_INTERVALS = [5000, 5000, 10000, 10000, 15000, 15000, 20000, 20000, 30000];
8
+ const DEFAULT_MAX_WAIT = 600_000; // 10分钟
9
+ const DEFAULT_MAX_CONSECUTIVE_ERRORS = 3;
10
+ // ---------------------------------------------------------------------------
11
+ // 公共方法
12
+ // ---------------------------------------------------------------------------
13
+ function sleep(ms) {
14
+ return new Promise(resolve => setTimeout(resolve, ms));
15
+ }
16
+ /**
17
+ * 轮询异步导出状态,成功时返回 downloadUrl。
18
+ * 失败或超时时 throw Error。
19
+ */
20
+ export async function pollAsyncExport(config) {
21
+ const intervals = config.intervals ?? DEFAULT_INTERVALS;
22
+ const maxWait = config.maxWait ?? DEFAULT_MAX_WAIT;
23
+ const maxConsecutiveErrors = config.maxConsecutiveErrors ?? DEFAULT_MAX_CONSECUTIVE_ERRORS;
24
+ const logTag = config.logTag ?? "pollAsyncExport";
25
+ let totalWaited = 0;
26
+ let consecutiveErrors = 0;
27
+ for (let i = 0; totalWaited < maxWait; i++) {
28
+ const interval = intervals[Math.min(i, intervals.length - 1)];
29
+ await sleep(interval);
30
+ totalWaited += interval;
31
+ try {
32
+ const status = await config.checkStatus();
33
+ consecutiveErrors = 0;
34
+ if (status.state === "success") {
35
+ return status.downloadUrl;
36
+ }
37
+ if (status.state === "failed") {
38
+ throw new Error(status.reason ?? "异步导出失败");
39
+ }
40
+ // state === "pending",继续轮询
41
+ console.error(`[${logTag}] 尚未完成,已等待 ${totalWaited / 1000}s`);
42
+ }
43
+ catch (e) {
44
+ const msg = e instanceof Error ? e.message : String(e);
45
+ // 如果是业务层明确失败(非网络错误),直接抛出
46
+ if (msg.includes("导出失败") || msg.includes("执行失败")) {
47
+ throw e;
48
+ }
49
+ consecutiveErrors++;
50
+ if (consecutiveErrors >= maxConsecutiveErrors) {
51
+ throw new Error(`轮询连续失败${maxConsecutiveErrors}次: ${msg}`);
52
+ }
53
+ console.error(`[${logTag}] 请求异常(${consecutiveErrors}/${maxConsecutiveErrors}): ${msg}`);
54
+ }
55
+ }
56
+ throw new Error(`异步导出超时(${maxWait / 1000}s),请到 ERP"我的导出"页面查看`);
57
+ }
58
+ /**
59
+ * 从 URL 下载文件到 DATA_DIR,返回本地文件绝对路径。
60
+ */
61
+ export async function downloadToDataDir(url, fileName) {
62
+ const resp = await fetch(url);
63
+ if (!resp.ok) {
64
+ throw new Error(`下载文件失败: ${resp.status} ${resp.statusText}`);
65
+ }
66
+ const buffer = Buffer.from(await resp.arrayBuffer());
67
+ const dataDir = getDataDir();
68
+ fs.mkdirSync(dataDir, { recursive: true });
69
+ const filePath = path.join(dataDir, fileName);
70
+ fs.writeFileSync(filePath, buffer);
71
+ return filePath;
72
+ }
73
+ //# sourceMappingURL=async-export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-export.js","sourceRoot":"","sources":["../../src/utils/async-export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface CityElement {
2
+ branchId: string;
3
+ cityCode: string;
4
+ branchName: string;
5
+ }
6
+ /**
7
+ * 从 Gateway 动态获取直营城市列表
8
+ * Gateway 端通过 ERP API 过滤: businessType=0(直营), mainType=2(二手), isEnabled=1(启用)
9
+ */
10
+ export declare function fetchZyCities(): Promise<CityElement[]>;
11
+ //# sourceMappingURL=cities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cities.d.ts","sourceRoot":"","sources":["../../src/utils/cities.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAgB5D"}
@@ -0,0 +1,22 @@
1
+ import { buildGatewayHeaders } from "./http.js";
2
+ import { getGatewayBaseUrl } from "./env.js";
3
+ import { debug } from "./debug.js";
4
+ /**
5
+ * 从 Gateway 动态获取直营城市列表
6
+ * Gateway 端通过 ERP API 过滤: businessType=0(直营), mainType=2(二手), isEnabled=1(启用)
7
+ */
8
+ export async function fetchZyCities() {
9
+ const headers = buildGatewayHeaders();
10
+ const url = `${getGatewayBaseUrl()}/statement/branches?preset=直营`;
11
+ debug("fetchZyCities url", url);
12
+ const resp = await fetch(url, { method: "GET", headers });
13
+ if (!resp.ok) {
14
+ throw new Error(`获取直营城市列表失败: ${resp.status} ${resp.statusText}`);
15
+ }
16
+ const data = await resp.json();
17
+ if (!data.succeed) {
18
+ throw new Error(`获取直营城市列表失败: ${data.msg}`);
19
+ }
20
+ return data.data;
21
+ }
22
+ //# sourceMappingURL=cities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cities.js","sourceRoot":"","sources":["../../src/utils/cities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAQnC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACtC,MAAM,GAAG,GAAG,GAAG,iBAAiB,EAAE,+BAA+B,CAAC;IAClE,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IAEhC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAA6D,CAAC;IAC1F,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC"}
@@ -1,5 +1,4 @@
1
1
  export declare function getDataDir(): string;
2
- export declare function getApiKey(): string | undefined;
3
2
  export declare function getYjzfAccessToken(): string | undefined;
4
3
  export declare function getGatewayBaseUrl(): string;
5
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAGA,wBAAgB,UAAU,IAAI,MAAM,CAanC;AAED,wBAAgB,SAAS,IAAI,MAAM,GAAG,SAAS,CAE9C;AAED,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAEvD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,GAAE,OAAc,GAC3B,MAAM,CAcR"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAGA,wBAAgB,UAAU,IAAI,MAAM,CAanC;AAED,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAEvD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,GAAE,OAAc,GAC3B,MAAM,CAcR"}
package/dist/utils/env.js CHANGED
@@ -14,9 +14,6 @@ export function getDataDir() {
14
14
  }
15
15
  return path.join(os.homedir(), "mcp-server-yjzf", "data");
16
16
  }
17
- export function getApiKey() {
18
- return process.env.MCP_YJZF_API_KEY;
19
- }
20
17
  export function getYjzfAccessToken() {
21
18
  return process.env.YJZF_ACCESS_TOKEN;
22
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,MAAM,UAAU,UAAU;IACxB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,sBAAsB,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,SAAiB,EACjB,eAAwB,IAAI;IAE5B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,yBAAyB;IACzB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,GAAG,OAAO,GAAG,OAAO,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;AACzF,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,MAAM,UAAU,UAAU;IACxB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,sBAAsB,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,SAAiB,EACjB,eAAwB,IAAI;IAE5B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,yBAAyB;IACzB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,GAAG,OAAO,GAAG,OAAO,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;AACzF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/utils/http.ts"],"names":[],"mappings":"AAMA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB5D;AAMD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAK7D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAI/D"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/utils/http.ts"],"names":[],"mappings":"AAUA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAMD,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa5D;AAMD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAK7D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAI/D"}
@@ -1,4 +1,7 @@
1
- import { getApiKey, getYjzfAccessToken } from "./env.js";
1
+ import { createRequire } from "node:module";
2
+ import { getYjzfAccessToken } from "./env.js";
3
+ const require = createRequire(import.meta.url);
4
+ const { version } = require("../../package.json");
2
5
  // ---------------------------------------------------------------------------
3
6
  // Gateway 请求头
4
7
  // ---------------------------------------------------------------------------
@@ -6,11 +9,8 @@ export function buildGatewayHeaders() {
6
9
  const headers = {
7
10
  Accept: "application/json",
8
11
  "Content-Type": "application/json",
12
+ "X-MCP-Version": version,
9
13
  };
10
- const apiKey = getApiKey();
11
- if (apiKey) {
12
- headers["Authorization"] = `Bearer ${apiKey}`;
13
- }
14
14
  const yjzfToken = getYjzfAccessToken();
15
15
  if (yjzfToken) {
16
16
  headers["X-YJZF-Token"] = yjzfToken;
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/utils/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAiBzD,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAA2B;QACtC,MAAM,EAAE,kBAAkB;QAC1B,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IACtC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/utils/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAiBlD,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAA2B;QACtC,MAAM,EAAE,kBAAkB;QAC1B,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,OAAO;KACzB,CAAC;IAEF,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IACtC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yjzf/mcp-server-yjzf",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "description": "MCP Server for YJZF",
5
5
  "type": "module",
6
6
  "bin": {
@@ -13,7 +13,7 @@
13
13
  "build": "tsc",
14
14
  "dev": "tsc --watch",
15
15
  "start": "node dist/index.js",
16
- "prepublishOnly": "npm run build",
16
+ "prepublishOnly": "npm install && npm run build",
17
17
  "inspect": "npx @modelcontextprotocol/inspector node dist/index.js",
18
18
  "test": "node test-mcp.js",
19
19
  "test:debug": "DEBUG=1 node test-mcp.js",