gate-mcp 0.18.0 → 0.18.2
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.
- package/dist/client.d.ts +10 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +40 -6
- package/dist/client.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
import { ApiClient } from 'gate-api';
|
|
2
2
|
import { AsyncLocalStorage } from 'async_hooks';
|
|
3
|
+
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
4
|
export declare const toolContext: AsyncLocalStorage<string>;
|
|
5
|
+
/**
|
|
6
|
+
* 绑定 McpServer 的 oninitialized:客户端发送 `notifications/initialized` 后,
|
|
7
|
+
* 从 getClientVersion() 刷新缓存的 clientInfo。
|
|
8
|
+
*/
|
|
9
|
+
export declare function bindClientInfoUpdater(mcpServer: McpServer): void;
|
|
10
|
+
/** 仅单测:清空缓存的 MCP 客户端信息 */
|
|
11
|
+
export declare function clearMcpClientInfoForTests(): void;
|
|
12
|
+
/** 仅单测:模拟 oninitialized 后的客户端信息 */
|
|
13
|
+
export declare function setMcpClientInfoForTests(name: string, versionStr: string): void;
|
|
4
14
|
export declare function createClient(): ApiClient;
|
|
5
15
|
export declare function isAuthenticated(): boolean;
|
|
6
16
|
export declare function requireAuth(): void;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQzE,eAAO,MAAM,WAAW,2BAAkC,CAAC;AAK3D;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAQhE;AAED,0BAA0B;AAC1B,wBAAgB,0BAA0B,IAAI,IAAI,CAGjD;AAED,mCAAmC;AACnC,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAG/E;AAED,wBAAgB,YAAY,IAAI,SAAS,CAwBxC;AAED,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,wBAAgB,WAAW,IAAI,IAAI,CAMlC"}
|
package/dist/client.js
CHANGED
|
@@ -4,16 +4,50 @@ import { AsyncLocalStorage } from 'async_hooks';
|
|
|
4
4
|
const DEFAULT_BASE_URL = 'https://api.gateio.ws';
|
|
5
5
|
const _require = createRequire(import.meta.url);
|
|
6
6
|
const { version } = _require('../package.json');
|
|
7
|
-
const
|
|
7
|
+
const MCP_NAME = 'gate-local-mcp';
|
|
8
|
+
const UA_BASE = `${MCP_NAME}/${version}`;
|
|
8
9
|
export const toolContext = new AsyncLocalStorage();
|
|
10
|
+
let mcpClientName = '';
|
|
11
|
+
let mcpClientVersion = '';
|
|
12
|
+
/**
|
|
13
|
+
* 绑定 McpServer 的 oninitialized:客户端发送 `notifications/initialized` 后,
|
|
14
|
+
* 从 getClientVersion() 刷新缓存的 clientInfo。
|
|
15
|
+
*/
|
|
16
|
+
export function bindClientInfoUpdater(mcpServer) {
|
|
17
|
+
mcpServer.server.oninitialized = () => {
|
|
18
|
+
const clientVersion = mcpServer.server.getClientVersion();
|
|
19
|
+
if (clientVersion) {
|
|
20
|
+
mcpClientName = clientVersion.name ?? '';
|
|
21
|
+
mcpClientVersion = clientVersion.version ?? '';
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/** 仅单测:清空缓存的 MCP 客户端信息 */
|
|
26
|
+
export function clearMcpClientInfoForTests() {
|
|
27
|
+
mcpClientName = '';
|
|
28
|
+
mcpClientVersion = '';
|
|
29
|
+
}
|
|
30
|
+
/** 仅单测:模拟 oninitialized 后的客户端信息 */
|
|
31
|
+
export function setMcpClientInfoForTests(name, versionStr) {
|
|
32
|
+
mcpClientName = name;
|
|
33
|
+
mcpClientVersion = versionStr;
|
|
34
|
+
}
|
|
9
35
|
export function createClient() {
|
|
10
36
|
const baseUrl = process.env.GATE_BASE_URL ?? DEFAULT_BASE_URL;
|
|
11
37
|
const client = new ApiClient(`${baseUrl}/api/v4`);
|
|
12
|
-
const toolName = toolContext.getStore();
|
|
13
|
-
const origUA = client.defaultHeaders?.['User-Agent'];
|
|
14
|
-
|
|
15
|
-
const userAgent =
|
|
16
|
-
client.defaultHeaders = {
|
|
38
|
+
const toolName = toolContext.getStore() ?? '';
|
|
39
|
+
const origUA = client.defaultHeaders?.['User-Agent'] ?? '';
|
|
40
|
+
// 固定 6 段:gate-local-mcp/{版本}/{工具名}/{Agent}/{Agent版本}/{SDK原始UA},空段保留
|
|
41
|
+
const userAgent = `${UA_BASE}/${toolName}/${mcpClientName}/${mcpClientVersion}/${origUA}`;
|
|
42
|
+
client.defaultHeaders = {
|
|
43
|
+
...client.defaultHeaders,
|
|
44
|
+
'User-Agent': userAgent,
|
|
45
|
+
'X-Gate-Agent': mcpClientName,
|
|
46
|
+
'X-Gate-Agent-Version': mcpClientVersion,
|
|
47
|
+
'X-Gate-MCP-Tools-Name': toolName,
|
|
48
|
+
'X-Gate-MCP-Name': MCP_NAME,
|
|
49
|
+
'X-Gate-MCP-Version': version,
|
|
50
|
+
};
|
|
17
51
|
const key = process.env.GATE_API_KEY;
|
|
18
52
|
const secret = process.env.GATE_API_SECRET;
|
|
19
53
|
if (key && secret) {
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -23,7 +23,7 @@ stdioShared.ReadBuffer.prototype.readMessage = function () {
|
|
|
23
23
|
};
|
|
24
24
|
import { sanitizeToolName, isWriteTool } from './utils.js';
|
|
25
25
|
import { parseConfig } from './config.js';
|
|
26
|
-
import { toolContext } from './client.js';
|
|
26
|
+
import { bindClientInfoUpdater, toolContext } from './client.js';
|
|
27
27
|
import { registerSpotTools } from './tools/spot.js';
|
|
28
28
|
import { registerFuturesTools } from './tools/futures.js';
|
|
29
29
|
import { registerDeliveryTools } from './tools/delivery.js';
|
|
@@ -51,6 +51,7 @@ const server = new McpServer({
|
|
|
51
51
|
name: 'gate',
|
|
52
52
|
version: '0.1.0',
|
|
53
53
|
});
|
|
54
|
+
bindClientInfoUpdater(server);
|
|
54
55
|
// Monkey-patch server.tool: apply name sanitization, readonly filter, and tool-name UA injection
|
|
55
56
|
const _registerTool = server.tool.bind(server);
|
|
56
57
|
server.tool = (name, ...args) => {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,4FAA4F;AAC5F,uFAAuF;AACvF,sEAAsE;AACtE,2EAA2E;AAC3E,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACjE,oFAAoF;AACpF,MAAM,WAAW,GAAG,QAAQ,CAAC,2CAA2C,CAAC,CAAC;AAC1E,MAAM,EAAE,oBAAoB,EAAE,GAAG,QAAQ,CAAC,oCAAoC,CAAC,CAAC;AAChF,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,GAAG;IAC7C,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACxE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAChD,OAAO,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AACF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,4FAA4F;AAC5F,uFAAuF;AACvF,sEAAsE;AACtE,2EAA2E;AAC3E,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACjE,oFAAoF;AACpF,MAAM,WAAW,GAAG,QAAQ,CAAC,2CAA2C,CAAC,CAAC;AAC1E,MAAM,EAAE,oBAAoB,EAAE,GAAG,QAAQ,CAAC,oCAAoC,CAAC,CAAC;AAChF,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,GAAG;IAC7C,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACxE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAChD,OAAO,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AACF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC;AAE7B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAE9B,iGAAiG;AACjG,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAc,CAAC,IAAI,GAAG,CAAC,IAAY,EAAE,GAAG,IAAe,EAAE,EAAE;IAC1D,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAC,SAAS,CAAC;QAAE,OAAO;IACtD,iGAAiG;IACjG,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAiC,CAAC;IACtE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAgB,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACpG,aAA4D,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF,MAAM,eAAe,GAAoD;IACvE,IAAI,EAAS,iBAAiB;IAC9B,OAAO,EAAM,oBAAoB;IACjC,QAAQ,EAAK,qBAAqB;IAClC,MAAM,EAAO,mBAAmB;IAChC,MAAM,EAAO,mBAAmB;IAChC,OAAO,EAAM,oBAAoB;IACjC,OAAO,EAAM,oBAAoB;IACjC,IAAI,EAAS,iBAAiB;IAC9B,UAAU,EAAG,sBAAsB;IACnC,OAAO,EAAM,oBAAoB;IACjC,WAAW,EAAY,uBAAuB;IAC9C,GAAG,EAAoB,gBAAgB;IACvC,MAAM,EAAiB,mBAAmB;IAC1C,OAAO,EAAgB,oBAAoB;IAC3C,KAAK,EAAkB,kBAAkB;IACzC,MAAM,EAAiB,mBAAmB;IAC1C,qBAAqB,EAAE,gCAAgC;IACvD,QAAQ,EAAe,qBAAqB;IAC5C,MAAM,EAAiB,mBAAmB;IAC1C,MAAM,EAAiB,mBAAmB;IAC1C,MAAM,EAAiB,mBAAmB;IAC1C,OAAO,EAAgB,oBAAoB;CAC5C,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAiB,CAAC,CAAC;AAE9F,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;IACjC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3E,OAAO,CAAC,KAAK,CAAC,uBAAuB,UAAU,gBAAgB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
|
package/package.json
CHANGED