hpmcp 0.0.1 → 0.0.3
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/index.js +0 -0
- package/dist/mcp.js +13 -4
- package/dist/mcp.js.map +1 -1
- package/dist/remote.js +10 -18
- package/dist/remote.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
File without changes
|
package/dist/mcp.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { InitializeRequestSchema, ListToolsRequestSchema, CallToolRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
2
2
|
import { getClient } from "./remote.js";
|
|
3
|
+
const TIMEOUT_MS = 5000;
|
|
4
|
+
function withTimeout(promise, ms = TIMEOUT_MS) {
|
|
5
|
+
return Promise.race([
|
|
6
|
+
promise,
|
|
7
|
+
new Promise((_, reject) => setTimeout(() => reject(new Error("timeout")), ms)),
|
|
8
|
+
]);
|
|
9
|
+
}
|
|
3
10
|
export function registerHandlers(server, cache) {
|
|
4
11
|
server.setRequestHandler(InitializeRequestSchema, async () => {
|
|
5
12
|
const cached = await cache.get("init");
|
|
@@ -8,10 +15,12 @@ export function registerHandlers(server, cache) {
|
|
|
8
15
|
const c = getClient();
|
|
9
16
|
if (c) {
|
|
10
17
|
try {
|
|
18
|
+
const caps = withTimeout(Promise.resolve(c.getServerCapabilities()));
|
|
19
|
+
const ver = withTimeout(Promise.resolve(c.getServerVersion()));
|
|
11
20
|
const result = {
|
|
12
21
|
protocolVersion: "2024-11-05",
|
|
13
|
-
capabilities:
|
|
14
|
-
serverInfo:
|
|
22
|
+
capabilities: (await caps) ?? {},
|
|
23
|
+
serverInfo: (await ver) ?? { name: "hpmcp", version: "0.0.1" },
|
|
15
24
|
};
|
|
16
25
|
await cache.set(["init"], result);
|
|
17
26
|
return result;
|
|
@@ -33,7 +42,7 @@ export function registerHandlers(server, cache) {
|
|
|
33
42
|
const c = getClient();
|
|
34
43
|
if (c) {
|
|
35
44
|
try {
|
|
36
|
-
const { tools } = await c.listTools();
|
|
45
|
+
const { tools } = await withTimeout(c.listTools());
|
|
37
46
|
const result = { tools };
|
|
38
47
|
await cache.set(["tools_list"], result);
|
|
39
48
|
return result;
|
|
@@ -53,7 +62,7 @@ export function registerHandlers(server, cache) {
|
|
|
53
62
|
const c = getClient();
|
|
54
63
|
if (c) {
|
|
55
64
|
try {
|
|
56
|
-
const result = await c.callTool({ name, arguments: args });
|
|
65
|
+
const result = await withTimeout(c.callTool({ name, arguments: args }));
|
|
57
66
|
await cache.set(["tool_call", name, argsKey], result);
|
|
58
67
|
return result;
|
|
59
68
|
}
|
package/dist/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/remote.js
CHANGED
|
@@ -1,24 +1,16 @@
|
|
|
1
1
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
2
|
-
import {
|
|
2
|
+
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
3
3
|
let client = null;
|
|
4
4
|
export async function connect(url, token) {
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
client = new Client({ name: "hpmcp", version: "0.0.1" }, { capabilities: {} });
|
|
15
|
-
await client.connect(transport);
|
|
16
|
-
console.error(`[hpmcp] connected to ${url}`);
|
|
17
|
-
return client;
|
|
18
|
-
}
|
|
19
|
-
finally {
|
|
20
|
-
clearTimeout(timer);
|
|
21
|
-
}
|
|
5
|
+
const transport = new StreamableHTTPClientTransport(new URL(url), {
|
|
6
|
+
requestInit: {
|
|
7
|
+
headers: { "x-heroui-personal-token": token },
|
|
8
|
+
},
|
|
9
|
+
});
|
|
10
|
+
client = new Client({ name: "hpmcp", version: "0.0.1" }, { capabilities: {} });
|
|
11
|
+
await client.connect(transport);
|
|
12
|
+
console.error(`[hpmcp] connected to ${url}`);
|
|
13
|
+
return client;
|
|
22
14
|
}
|
|
23
15
|
export function getClient() {
|
|
24
16
|
return client;
|
package/dist/remote.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAEnG,IAAI,MAAM,GAAkB,IAAI,CAAC;AAEjC,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,KAAa;IACtD,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE;QAChE,WAAW,EAAE;YACX,OAAO,EAAE,EAAE,yBAAyB,EAAE,KAAK,EAAE;SAC9C;KACF,CAAC,CAAC;IAEH,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/E,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,MAAM,IAAI,IAAI,CAAC;AACxB,CAAC"}
|