@deeprelay/mcp 0.1.1 → 0.2.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 +41 -14
- package/dist/auth.d.ts +6 -0
- package/dist/auth.js +16 -0
- package/dist/auth.js.map +1 -1
- package/dist/guardrail/estimate.d.ts +23 -2
- package/dist/guardrail/estimate.js +54 -12
- package/dist/guardrail/estimate.js.map +1 -1
- package/dist/roster.d.ts +3 -3
- package/dist/roster.js +71 -0
- package/dist/roster.js.map +1 -1
- package/dist/tools/api-json.d.ts +5 -0
- package/dist/tools/api-json.js +15 -0
- package/dist/tools/api-json.js.map +1 -0
- package/dist/tools/readonly/alerts.d.ts +26 -0
- package/dist/tools/readonly/alerts.js +58 -0
- package/dist/tools/readonly/alerts.js.map +1 -0
- package/dist/tools/readonly/define.d.ts +12 -1
- package/dist/tools/readonly/define.js +17 -3
- package/dist/tools/readonly/define.js.map +1 -1
- package/dist/tools/readonly/index.d.ts +3 -1
- package/dist/tools/readonly/index.js +90 -23
- package/dist/tools/readonly/index.js.map +1 -1
- package/dist/tools/readonly/requests.d.ts +78 -0
- package/dist/tools/readonly/requests.js +195 -0
- package/dist/tools/readonly/requests.js.map +1 -0
- package/dist/tools/readonly/usage.js +48 -11
- package/dist/tools/readonly/usage.js.map +1 -1
- package/dist/tools/readonly/video-reads.js +7 -4
- package/dist/tools/readonly/video-reads.js.map +1 -1
- package/dist/tools/spend/define.js +3 -1
- package/dist/tools/spend/define.js.map +1 -1
- package/dist/tools/spend/index.d.ts +2 -0
- package/dist/tools/spend/index.js +181 -30
- package/dist/tools/spend/index.js.map +1 -1
- package/dist/tools/spend/media.js +7 -5
- package/dist/tools/spend/media.js.map +1 -1
- package/dist/tools/spend/pricing.js +4 -0
- package/dist/tools/spend/pricing.js.map +1 -1
- package/dist/tools/write/alerts.d.ts +4 -0
- package/dist/tools/write/alerts.js +141 -0
- package/dist/tools/write/alerts.js.map +1 -0
- package/dist/tools/write/index.d.ts +2 -1
- package/dist/tools/write/index.js +10 -3
- package/dist/tools/write/index.js.map +1 -1
- package/dist/tools/write/payment-links.js +26 -4
- package/dist/tools/write/payment-links.js.map +1 -1
- package/dist/tools/write/spending-limit.js +26 -33
- package/dist/tools/write/spending-limit.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.requestReadTools = exports.requestsListInputSchema = exports.requestLogEntrySchema = exports.REQUEST_STATUSES = exports.REQUEST_SURFACES = exports.REQUESTS_MAX_PAGES = exports.REQUESTS_MAX_LIMIT = void 0;
|
|
4
|
+
exports.shortKeyPrefix = shortKeyPrefix;
|
|
5
|
+
exports.listRequestLog = listRequestLog;
|
|
6
|
+
// deeprelay_requests_list / deeprelay_requests_get: the request log
|
|
7
|
+
// (Phase 111, D-01..D-03, R-08).
|
|
8
|
+
//
|
|
9
|
+
// Transport: @deeprelay/sdk RequestsApi (listRequestsRaw / getRequestRaw).
|
|
10
|
+
// The JSON body is parsed with the local zod schema below rather than the
|
|
11
|
+
// SDK's typed decode (see tools/api-json.ts). The schema is a closed object:
|
|
12
|
+
// any field the API adds
|
|
13
|
+
// later (or that a misconfigured proxy injects) is dropped before the result
|
|
14
|
+
// reaches the agent. The schema has no secret, org, provider or content field
|
|
15
|
+
// by construction; ok() still sanitizes and redacts the payload (T-111-84).
|
|
16
|
+
//
|
|
17
|
+
// The list follows cursors only when asked (max_pages > 1), and stops when the
|
|
18
|
+
// API hands back a cursor it already returned, so a server that ignores the
|
|
19
|
+
// cursor can never make the tool loop or count a row twice (the usage tool's
|
|
20
|
+
// CR-02 rule).
|
|
21
|
+
//
|
|
22
|
+
// The CSV export (/requests/export) is not a tool: it is a file download, and
|
|
23
|
+
// an agent reads the same rows through deeprelay_requests_list.
|
|
24
|
+
const sdk_1 = require("@deeprelay/sdk");
|
|
25
|
+
const zod_1 = require("zod");
|
|
26
|
+
const api_json_js_1 = require("../api-json.js");
|
|
27
|
+
const define_js_1 = require("./define.js");
|
|
28
|
+
/** The API's page-size maximum for GET /v1/requests. */
|
|
29
|
+
exports.REQUESTS_MAX_LIMIT = 100;
|
|
30
|
+
/** Most pages one tool call follows. */
|
|
31
|
+
exports.REQUESTS_MAX_PAGES = 10;
|
|
32
|
+
exports.REQUEST_SURFACES = ["chat", "messages", "responses", "embeddings", "image", "video"];
|
|
33
|
+
exports.REQUEST_STATUSES = ["ok", "error", "cancelled", "rejected"];
|
|
34
|
+
const optionalCount = zod_1.z.number().int().optional();
|
|
35
|
+
/**
|
|
36
|
+
* A key's public prefix (`deeprelay_live_` plus four characters) is not a
|
|
37
|
+
* secret, but it has the shape redactSecrets() exists to catch, so passed
|
|
38
|
+
* through whole it would reach the agent as [REDACTED]. Loosening the
|
|
39
|
+
* redactor is the wrong fix. Instead the prefix is shown without its leading
|
|
40
|
+
* `deeprelay_` (`live_AbC1`): still enough to match it against the dashboard,
|
|
41
|
+
* and never key-shaped.
|
|
42
|
+
*/
|
|
43
|
+
function shortKeyPrefix(prefix) {
|
|
44
|
+
return prefix?.replace(/^deeprelay_(?=(live|test)_)/, "");
|
|
45
|
+
}
|
|
46
|
+
/** One request-log row as the agent sees it. Closed: unknown fields are dropped. */
|
|
47
|
+
exports.requestLogEntrySchema = zod_1.z.object({
|
|
48
|
+
request_id: zod_1.z.string(),
|
|
49
|
+
client_request_id: zod_1.z.string().optional(),
|
|
50
|
+
occurred_at: zod_1.z.string(),
|
|
51
|
+
surface: zod_1.z.string(),
|
|
52
|
+
model: zod_1.z.string(),
|
|
53
|
+
key_id: zod_1.z.string().optional(),
|
|
54
|
+
key_name: zod_1.z.string().optional(),
|
|
55
|
+
key_prefix: zod_1.z.string().optional().transform(shortKeyPrefix),
|
|
56
|
+
status: zod_1.z.string(),
|
|
57
|
+
http_status: zod_1.z.number().int().optional(),
|
|
58
|
+
error_code: zod_1.z.string().optional(),
|
|
59
|
+
finish_reason: zod_1.z.string().optional(),
|
|
60
|
+
prompt_tokens: optionalCount,
|
|
61
|
+
completion_tokens: optionalCount,
|
|
62
|
+
cached_tokens: optionalCount,
|
|
63
|
+
reasoning_tokens: optionalCount,
|
|
64
|
+
quota_units: optionalCount,
|
|
65
|
+
// A JSON number on the wire (the SDK 0.3.0 type says string): accept both
|
|
66
|
+
// and always show a string, so the output does not depend on either.
|
|
67
|
+
cost: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]).transform(String),
|
|
68
|
+
cost_micro_cents: zod_1.z.number().int(),
|
|
69
|
+
plan_covered: zod_1.z.boolean(),
|
|
70
|
+
ttft_ms: optionalCount,
|
|
71
|
+
duration_ms: optionalCount,
|
|
72
|
+
ignored_params: zod_1.z.array(zod_1.z.string()).optional(),
|
|
73
|
+
had_tool_calls: zod_1.z.boolean().optional(),
|
|
74
|
+
image_count: optionalCount,
|
|
75
|
+
video_seconds: optionalCount,
|
|
76
|
+
suppressed_count: optionalCount,
|
|
77
|
+
});
|
|
78
|
+
const requestLogPageSchema = zod_1.z.object({
|
|
79
|
+
data: zod_1.z.array(exports.requestLogEntrySchema),
|
|
80
|
+
next_cursor: zod_1.z.string().nullable().optional(),
|
|
81
|
+
window_days: zod_1.z.number().int().optional(),
|
|
82
|
+
});
|
|
83
|
+
exports.requestsListInputSchema = {
|
|
84
|
+
key: zod_1.z.guid().optional().describe("Only rows sent with this API key id (api_key_id)."),
|
|
85
|
+
model: zod_1.z.string().min(1).max(256).optional().describe("Only rows for this model id."),
|
|
86
|
+
surface: zod_1.z.enum(exports.REQUEST_SURFACES).optional().describe("Only rows from this endpoint family."),
|
|
87
|
+
status: zod_1.z
|
|
88
|
+
.enum(exports.REQUEST_STATUSES)
|
|
89
|
+
.optional()
|
|
90
|
+
.describe("Only rows with this outcome. `rejected` = refused before reaching a model (budget, limit, allowlist, quota)."),
|
|
91
|
+
error_code: zod_1.z
|
|
92
|
+
.string()
|
|
93
|
+
.regex(/^[a-z0-9_]{1,64}$/)
|
|
94
|
+
.optional()
|
|
95
|
+
.describe("Only rows that ended with this error code (the X-Deeprelay-Error-Code value)."),
|
|
96
|
+
client_request_id: zod_1.z
|
|
97
|
+
.string()
|
|
98
|
+
.min(1)
|
|
99
|
+
.max(128)
|
|
100
|
+
.optional()
|
|
101
|
+
.describe("Only rows whose X-Client-Request-Id equals this value."),
|
|
102
|
+
from: zod_1.z.iso.datetime({ offset: true }).optional().describe("ISO-8601 start (inclusive). Default and floor: 90 days ago."),
|
|
103
|
+
to: zod_1.z.iso.datetime({ offset: true }).optional().describe("ISO-8601 end (exclusive). Default: now."),
|
|
104
|
+
cursor: zod_1.z.string().min(1).optional().describe("Page cursor from a previous result's next_cursor."),
|
|
105
|
+
limit: zod_1.z.number().int().min(1).max(exports.REQUESTS_MAX_LIMIT).optional().describe("Rows per page (1-100, default 50)."),
|
|
106
|
+
max_pages: zod_1.z
|
|
107
|
+
.number()
|
|
108
|
+
.int()
|
|
109
|
+
.min(1)
|
|
110
|
+
.max(exports.REQUESTS_MAX_PAGES)
|
|
111
|
+
.optional()
|
|
112
|
+
.describe("Follow next_cursor for up to this many pages (1-10, default 1)."),
|
|
113
|
+
};
|
|
114
|
+
/** List the request log, following cursors up to max_pages. */
|
|
115
|
+
async function listRequestLog(args, config) {
|
|
116
|
+
const maxPages = args.max_pages ?? 1;
|
|
117
|
+
const rows = [];
|
|
118
|
+
const seenCursors = new Set(args.cursor === undefined ? [] : [args.cursor]);
|
|
119
|
+
let cursor = args.cursor;
|
|
120
|
+
let nextCursor = null;
|
|
121
|
+
let windowDays;
|
|
122
|
+
let repeated = false;
|
|
123
|
+
const api = new sdk_1.RequestsApi(config);
|
|
124
|
+
for (let pageNo = 0; pageNo < maxPages; pageNo += 1) {
|
|
125
|
+
const raw = await (0, api_json_js_1.apiJson)(api.listRequestsRaw({
|
|
126
|
+
key: args.key,
|
|
127
|
+
model: args.model,
|
|
128
|
+
surface: args.surface,
|
|
129
|
+
status: args.status,
|
|
130
|
+
errorCode: args.error_code,
|
|
131
|
+
clientRequestId: args.client_request_id,
|
|
132
|
+
from: args.from === undefined ? undefined : new Date(args.from),
|
|
133
|
+
to: args.to === undefined ? undefined : new Date(args.to),
|
|
134
|
+
cursor,
|
|
135
|
+
limit: args.limit,
|
|
136
|
+
}));
|
|
137
|
+
const page = requestLogPageSchema.parse(raw);
|
|
138
|
+
rows.push(...page.data);
|
|
139
|
+
windowDays = page.window_days ?? windowDays;
|
|
140
|
+
const next = page.next_cursor ?? null;
|
|
141
|
+
nextCursor = next === "" ? null : next;
|
|
142
|
+
if (nextCursor === null) {
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
if (seenCursors.has(nextCursor)) {
|
|
146
|
+
// The API did not advance: stop, and do not offer a cursor that loops.
|
|
147
|
+
repeated = true;
|
|
148
|
+
nextCursor = null;
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
seenCursors.add(nextCursor);
|
|
152
|
+
cursor = nextCursor;
|
|
153
|
+
}
|
|
154
|
+
return {
|
|
155
|
+
data: rows,
|
|
156
|
+
next_cursor: nextCursor,
|
|
157
|
+
window_days: windowDays ?? null,
|
|
158
|
+
...(repeated
|
|
159
|
+
? { note: "Stopped paging: the API returned a cursor it had already returned. No row is listed twice." }
|
|
160
|
+
: {}),
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
const FREE = "Free: charges nothing and needs no confirmation.";
|
|
164
|
+
exports.requestReadTools = [
|
|
165
|
+
(0, define_js_1.defineTool)({
|
|
166
|
+
name: "deeprelay_requests_list",
|
|
167
|
+
title: "List deeprelay requests (request log)",
|
|
168
|
+
description: "List recent inference requests from the request log, newest first: request_id, model, surface, status, " +
|
|
169
|
+
"error_code, token counts, cost, latency and the key's id, name and prefix (never the key itself, never " +
|
|
170
|
+
"prompt or completion content; key_prefix drops the leading `deeprelay_`, e.g. live_AbC1). Use it to answer 'why did my call fail', 'what did key X spend' or to find a request by " +
|
|
171
|
+
"its client_request_id. Filters: key, model, surface, status, error_code, client_request_id, from/to (90-day " +
|
|
172
|
+
"window). A non-admin key sees only its own rows. Pass next_cursor back as `cursor` for the next page, or set " +
|
|
173
|
+
`max_pages to follow several. ${FREE}`,
|
|
174
|
+
inputSchema: exports.requestsListInputSchema,
|
|
175
|
+
context: "listing requests",
|
|
176
|
+
async call(args, config) {
|
|
177
|
+
return listRequestLog(args, config);
|
|
178
|
+
},
|
|
179
|
+
}),
|
|
180
|
+
(0, define_js_1.defineTool)({
|
|
181
|
+
name: "deeprelay_requests_get",
|
|
182
|
+
title: "Get one deeprelay request",
|
|
183
|
+
description: "Get one request-log row by any id you hold for it: the X-Request-Id response header, a chat completion id " +
|
|
184
|
+
"(chatcmpl-…), a message id (msg_…), a response id (resp_…) or a video id. Returns status, error_code, tokens, " +
|
|
185
|
+
`cost and latency. An unknown, foreign or older-than-90-days id is a not-found error. ${FREE}`,
|
|
186
|
+
inputSchema: {
|
|
187
|
+
id: zod_1.z.string().min(1).max(64).describe("The request id, or a chatcmpl-/msg_/resp_/video id."),
|
|
188
|
+
},
|
|
189
|
+
context: "getting a request",
|
|
190
|
+
async call(args, config) {
|
|
191
|
+
return exports.requestLogEntrySchema.parse(await (0, api_json_js_1.apiJson)(new sdk_1.RequestsApi(config).getRequestRaw({ id: args.id })));
|
|
192
|
+
},
|
|
193
|
+
}),
|
|
194
|
+
];
|
|
195
|
+
//# sourceMappingURL=requests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requests.js","sourceRoot":"","sources":["../../../src/tools/readonly/requests.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,8 +11,14 @@ exports.getInferenceUsage = getInferenceUsage;
|
|
|
11
11
|
// account that spent money on inference. There is no single call for every
|
|
12
12
|
// modality, so with no filter this tool asks once per modality and merges.
|
|
13
13
|
//
|
|
14
|
-
// It never sends `group_by` (instance/GPU split) and
|
|
15
|
-
//
|
|
14
|
+
// It never sends `group_by` (instance/GPU split) and keeps only the inference
|
|
15
|
+
// fields on each row (the GPU-instance duration field is always 0 there).
|
|
16
|
+
//
|
|
17
|
+
// Cursor following is defensive (Phase 104 CR-02). A server that ignores the
|
|
18
|
+
// cursor returns page one again with the same next_cursor, which used to be
|
|
19
|
+
// summed up to USAGE_MAX_PAGES times. fetchAll stops when a next_cursor repeats
|
|
20
|
+
// or a page brings no row it has not already seen, and it de-duplicates rows on
|
|
21
|
+
// (bucket_start, modality, model), so a row is never counted twice.
|
|
16
22
|
const sdk_1 = require("@deeprelay/sdk");
|
|
17
23
|
const zod_1 = require("zod");
|
|
18
24
|
/** Rows per page requested from the API (its maximum). */
|
|
@@ -50,9 +56,18 @@ function toRow(b, fallbackModality) {
|
|
|
50
56
|
image_count: b.imageCount ?? null,
|
|
51
57
|
};
|
|
52
58
|
}
|
|
53
|
-
|
|
59
|
+
function rowKey(r) {
|
|
60
|
+
return `${r.bucket_start}\u0000${r.modality ?? ""}\u0000${r.model ?? ""}`;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* One filtered query, following cursors up to USAGE_MAX_PAGES. Stops early,
|
|
64
|
+
* with `repeated`, when the API hands back a cursor already followed or a page
|
|
65
|
+
* with no unseen row; never counts a (bucket, modality, model) row twice.
|
|
66
|
+
*/
|
|
54
67
|
async function fetchAll(api, args, filter) {
|
|
55
68
|
const rows = [];
|
|
69
|
+
const seenRows = new Set();
|
|
70
|
+
const seenCursors = new Set();
|
|
56
71
|
let cursor;
|
|
57
72
|
for (let pageNo = 0; pageNo < exports.USAGE_MAX_PAGES; pageNo += 1) {
|
|
58
73
|
const page = await api.listUsage({
|
|
@@ -64,13 +79,27 @@ async function fetchAll(api, args, filter) {
|
|
|
64
79
|
modality: filter.modality,
|
|
65
80
|
model: filter.model,
|
|
66
81
|
});
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
82
|
+
let fresh = 0;
|
|
83
|
+
for (const b of page.data) {
|
|
84
|
+
const r = toRow(b, filter.modality);
|
|
85
|
+
const k = rowKey(r);
|
|
86
|
+
if (seenRows.has(k))
|
|
87
|
+
continue;
|
|
88
|
+
seenRows.add(k);
|
|
89
|
+
rows.push(r);
|
|
90
|
+
fresh += 1;
|
|
91
|
+
}
|
|
92
|
+
const next = page.nextCursor;
|
|
93
|
+
if (next === null || next === undefined || next === "") {
|
|
94
|
+
return { rows, truncated: false, repeated: false };
|
|
95
|
+
}
|
|
96
|
+
if ((pageNo > 0 && fresh === 0) || seenCursors.has(next)) {
|
|
97
|
+
return { rows, truncated: false, repeated: true };
|
|
70
98
|
}
|
|
71
|
-
|
|
99
|
+
seenCursors.add(next);
|
|
100
|
+
cursor = next;
|
|
72
101
|
}
|
|
73
|
-
return { rows, truncated: true };
|
|
102
|
+
return { rows, truncated: true, repeated: false };
|
|
74
103
|
}
|
|
75
104
|
/** Read inference usage: one query when filtered, one per modality otherwise. */
|
|
76
105
|
async function getInferenceUsage(args, config) {
|
|
@@ -100,17 +129,25 @@ async function getInferenceUsage(args, config) {
|
|
|
100
129
|
total = addCents(total, row.cost_cents);
|
|
101
130
|
}
|
|
102
131
|
const truncatedQueries = queries.filter((_, i) => results[i].truncated);
|
|
103
|
-
const
|
|
132
|
+
const repeatedQueries = queries.filter((_, i) => results[i].repeated);
|
|
133
|
+
const truncated = truncatedQueries.length > 0 || repeatedQueries.length > 0;
|
|
134
|
+
const label = (q) => q.modality ?? q.model ?? "the query";
|
|
104
135
|
return {
|
|
105
136
|
usage_kind: "inference",
|
|
106
137
|
note: "Serverless inference usage (what this account is billed for), from GET /v1/usage filtered by modality/model. " +
|
|
107
138
|
(filtered
|
|
108
139
|
? "One filtered query."
|
|
109
140
|
: `No modality or model was given, so this merges one query per modality (${exports.USAGE_MODALITIES.join(", ")}).`) +
|
|
110
|
-
(
|
|
141
|
+
(truncatedQueries.length > 0
|
|
111
142
|
? ` TRUNCATED: stopped after ${exports.USAGE_MAX_PAGES} pages of ${exports.USAGE_PAGE_SIZE} rows for ` +
|
|
112
|
-
truncatedQueries.map(
|
|
143
|
+
truncatedQueries.map(label).join(", ") +
|
|
113
144
|
"; totals cover only the rows returned. Narrow start/end or use a wider bucket."
|
|
145
|
+
: "") +
|
|
146
|
+
(repeatedQueries.length > 0
|
|
147
|
+
? " TRUNCATED: the API returned a page or cursor it had already returned for " +
|
|
148
|
+
repeatedQueries.map(label).join(", ") +
|
|
149
|
+
", so paging stopped there; no row is counted twice, but totals cover only the rows returned. " +
|
|
150
|
+
"Narrow start/end or use a wider bucket."
|
|
114
151
|
: ""),
|
|
115
152
|
filter: { modality: args.modality ?? null, model: args.model ?? null },
|
|
116
153
|
bucket: args.bucket,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/tools/readonly/usage.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/tools/readonly/usage.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,9 @@ exports.observeVideoJob = observeVideoJob;
|
|
|
21
21
|
// can be tens of MB and would flood the agent's context (T-104-20). The stdio
|
|
22
22
|
// server runs as the user, so an agent-chosen path is the user's own
|
|
23
23
|
// filesystem; it must be absolute (T-104-19). The write uses flag "wx", so an
|
|
24
|
-
// existing file is never overwritten
|
|
25
|
-
//
|
|
24
|
+
// existing file is never overwritten. Because it creates files, the content
|
|
25
|
+
// tool advertises readOnlyHint: false and idempotentHint: false (WR-08); it
|
|
26
|
+
// stays in the read tier because it spends nothing and needs no confirmation.
|
|
26
27
|
const promises_1 = require("node:fs/promises");
|
|
27
28
|
const node_os_1 = require("node:os");
|
|
28
29
|
const node_path_1 = require("node:path");
|
|
@@ -33,6 +34,7 @@ const define_js_1 = require("./define.js");
|
|
|
33
34
|
/** Where deeprelay_videos_content saves when no output_path is given. */
|
|
34
35
|
exports.VIDEO_TMP_DIR = (0, node_path_1.join)((0, node_os_1.tmpdir)(), "deeprelay-mcp");
|
|
35
36
|
const FREE = "Free: a read-only call with no charge and no confirmation.";
|
|
37
|
+
const FREE_FILE_WRITE = "Free: no charge and no confirmation, but not read-only: it creates a file (and its directory) on this machine.";
|
|
36
38
|
function isTracked(videoId) {
|
|
37
39
|
return (0, budget_js_1.pendingVideoReservations)().some((r) => r.videoId === videoId);
|
|
38
40
|
}
|
|
@@ -116,8 +118,8 @@ exports.videoReadTools = [
|
|
|
116
118
|
description: "Download a completed video's MP4 to a file on this machine and return its path and size (the video is never " +
|
|
117
119
|
"returned inline). Pass `output_path` as an absolute file path, or omit it to save under the system temp " +
|
|
118
120
|
"directory. It never overwrites an existing file: if the path exists the call is refused and you must choose a " +
|
|
119
|
-
"new path
|
|
120
|
-
`completion. ${
|
|
121
|
+
"new path, and calling it twice with the default path is refused the second time. Also settles this " +
|
|
122
|
+
`session's reservation for the job. Artifacts are kept for 24 hours after completion. ${FREE_FILE_WRITE}`,
|
|
121
123
|
inputSchema: {
|
|
122
124
|
id: zod_1.z.string().min(1).describe("Video job id."),
|
|
123
125
|
output_path: zod_1.z
|
|
@@ -128,6 +130,7 @@ exports.videoReadTools = [
|
|
|
128
130
|
.describe("Absolute path to write the MP4 to. Default: <system temp>/deeprelay-mcp/<id>.mp4"),
|
|
129
131
|
},
|
|
130
132
|
context: "downloading a video",
|
|
133
|
+
writesLocalFiles: true,
|
|
131
134
|
async call(args, config) {
|
|
132
135
|
const api = new sdk_1.InferenceApi(config);
|
|
133
136
|
const job = observeVideoJob(await api.getVideo({ id: args.id }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video-reads.js","sourceRoot":"","sources":["../../../src/tools/readonly/video-reads.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"video-reads.js","sourceRoot":"","sources":["../../../src/tools/readonly/video-reads.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,7 +74,9 @@ function serialize(out, env, extra) {
|
|
|
74
74
|
function toEstimateParams(args) {
|
|
75
75
|
return {
|
|
76
76
|
messages: args.messages,
|
|
77
|
-
|
|
77
|
+
// Chat: max_completion_tokens, when given, is the bound actually sent.
|
|
78
|
+
maxTokens: (args.max_completion_tokens ?? args.max_tokens),
|
|
79
|
+
promptExtras: [args.tools, args.response_format].filter((v) => v !== undefined),
|
|
78
80
|
input: args.input,
|
|
79
81
|
n: args.n,
|
|
80
82
|
size: args.size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/tools/spend/define.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/tools/spend/define.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@ export { confirmThenExecute, defineSpendTool, runWithBudget, SPEND_CONFIRMATION_
|
|
|
4
4
|
export type { QuoteKind, SpendExecuted, SpendOutcome, SpendRun, SpendToolSpec } from "./define.js";
|
|
5
5
|
/** Upper bound on max_tokens for one chat call. */
|
|
6
6
|
export declare const CHAT_MAX_TOKENS_LIMIT = 8192;
|
|
7
|
+
/** Upper bound on tool definitions in one chat call. */
|
|
8
|
+
export declare const CHAT_MAX_TOOLS = 64;
|
|
7
9
|
/** Upper bound on the number of inputs in one embeddings call (keeps the response bounded). */
|
|
8
10
|
export declare const EMBEDDINGS_MAX_INPUTS = 64;
|
|
9
11
|
/** The spend tier, in SPEND_TOOLS order. */
|