kwery-mcp 0.2.0 → 1.0.0

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/README.md CHANGED
@@ -51,5 +51,5 @@ Get your API key at [kwery.xyz/dashboard](https://kwery.xyz/dashboard).
51
51
 
52
52
  - [Full docs](https://kwery.xyz/docs/mcp)
53
53
  - [API reference](https://kwery-api.com/docs)
54
- - [GitHub](https://github.com/KweryAPI/kwery-agents)
54
+ - [GitHub](https://github.com/KweryAPI/core-ai)
55
55
  - [Pricing](https://kwery.xyz/pricing)
package/dist/client.js CHANGED
@@ -18,7 +18,7 @@ export class KweryClient {
18
18
  const res = await fetch(url.toString(), {
19
19
  headers: {
20
20
  "X-API-Key": this.apiKey,
21
- "User-Agent": "kwery-mcp/0.1.0",
21
+ "User-Agent": "kwery-mcp/1.0.0",
22
22
  },
23
23
  });
24
24
  if (!res.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAMnE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;aAkCG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA3BxB,CAAC;AAEF,wBAAgB,YAAY,IAAI,MAAM,CAuCrC;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAiB,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAMnE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA8D1C,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;aA5Bc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmCpC,CAAC;AAEF,wBAAgB,YAAY,IAAI,MAAM,CAwCrC;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAiB,CAAC"}
package/dist/server.js CHANGED
@@ -8,6 +8,54 @@ import { polymarketTools } from "./tools/polymarket.js";
8
8
  import { kalshiTools } from "./tools/kalshi.js";
9
9
  import { hyperliquidTools } from "./tools/hyperliquid.js";
10
10
  import { binanceTools } from "./tools/binance.js";
11
+ // Max characters before we trim the data array and warn about pagination.
12
+ // Claude Code rejects tool responses that exceed ~100k chars; 60k gives headroom.
13
+ const MAX_RESPONSE_CHARS = 60_000;
14
+ function safeSerialize(result) {
15
+ const full = JSON.stringify(result);
16
+ if (full.length <= MAX_RESPONSE_CHARS)
17
+ return full;
18
+ // Only trim if the result has a data array we can slice
19
+ if (result !== null &&
20
+ typeof result === "object" &&
21
+ "data" in result &&
22
+ Array.isArray(result.data)) {
23
+ const r = result;
24
+ const total = r.data.length;
25
+ // Binary search for the largest row count that fits within MAX_RESPONSE_CHARS
26
+ let lo = 1;
27
+ let hi = total;
28
+ let best = 1;
29
+ while (lo <= hi) {
30
+ const mid = Math.floor((lo + hi) / 2);
31
+ const candidate = JSON.stringify({
32
+ ...r,
33
+ data: r.data.slice(0, mid),
34
+ _truncated: { warning: "", hint: "", after: null },
35
+ });
36
+ if (candidate.length <= MAX_RESPONSE_CHARS) {
37
+ best = mid;
38
+ lo = mid + 1;
39
+ }
40
+ else {
41
+ hi = mid - 1;
42
+ }
43
+ }
44
+ const after = r.data[best - 1]?.timestamp ?? r.data[best - 1]?.time ?? null;
45
+ return JSON.stringify({
46
+ ...r,
47
+ data: r.data.slice(0, best),
48
+ _truncated: {
49
+ warning: `Response too large. Showing ${best} of ${total} rows.`,
50
+ hint: "Use the 'after' cursor or reduce 'limit' to paginate.",
51
+ after,
52
+ },
53
+ });
54
+ }
55
+ // Fallback: truncate raw string with a warning appended
56
+ return (full.slice(0, MAX_RESPONSE_CHARS) +
57
+ `... [TRUNCATED — ${full.length} chars total. Use pagination params to fetch in smaller chunks.]`);
58
+ }
11
59
  export const ALL_TOOLS = [
12
60
  ...discoveryTools,
13
61
  ...marketTools,
@@ -17,7 +65,7 @@ export const ALL_TOOLS = [
17
65
  ...binanceTools,
18
66
  ];
19
67
  export function createServer() {
20
- const s = new Server({ name: "kwery-mcp", version: "0.1.0" }, { capabilities: { tools: {} } });
68
+ const s = new Server({ name: "kwery-mcp", version: "1.0.0" }, { capabilities: { tools: {} } });
21
69
  s.setRequestHandler(ListToolsRequestSchema, async () => ({
22
70
  tools: ALL_TOOLS.map((t) => ({
23
71
  name: t.name,
@@ -37,8 +85,9 @@ export function createServer() {
37
85
  const params = tool.inputSchema.parse(request.params.arguments ?? {});
38
86
  const client = new KweryClient();
39
87
  const result = await tool.handler(params, client);
88
+ const text = safeSerialize(result);
40
89
  return {
41
- content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
90
+ content: [{ type: "text", text }],
42
91
  };
43
92
  }
44
93
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kwery-mcp",
3
- "version": "0.2.0",
3
+ "version": "1.0.0",
4
4
  "description": "MCP server for Kwery — unified crypto and prediction market data across Polymarket, Kalshi, Hyperliquid, Binance, and Chainlink.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -40,11 +40,11 @@
40
40
  "homepage": "https://kwery.xyz/docs/mcp",
41
41
  "repository": {
42
42
  "type": "git",
43
- "url": "https://github.com/KweryAPI/kwery-agents.git",
43
+ "url": "https://github.com/KweryAPI/core-ai.git",
44
44
  "directory": "kwery-mcp"
45
45
  },
46
46
  "bugs": {
47
- "url": "https://github.com/KweryAPI/kwery-agents/issues"
47
+ "url": "https://github.com/KweryAPI/core-ai/issues"
48
48
  },
49
49
  "engines": {
50
50
  "node": ">=20"