mcp-scraper 0.23.0 → 0.25.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 +3 -3
- package/dist/bin/api-server.cjs +151 -55
- package/dist/bin/api-server.cjs.map +1 -1
- package/dist/bin/api-server.js +1 -1
- package/dist/bin/mcp-scraper-cli.cjs +1 -1
- package/dist/bin/mcp-scraper-cli.cjs.map +1 -1
- package/dist/bin/mcp-scraper-cli.js +1 -1
- package/dist/bin/mcp-scraper-install.cjs +1 -1
- package/dist/bin/mcp-scraper-install.cjs.map +1 -1
- package/dist/bin/mcp-scraper-install.js +1 -1
- package/dist/bin/mcp-stdio-server.cjs +150 -54
- package/dist/bin/mcp-stdio-server.cjs.map +1 -1
- package/dist/bin/mcp-stdio-server.js +2 -2
- package/dist/{chunk-CGFJD7C6.js → chunk-NC37L5RW.js} +151 -55
- package/dist/chunk-NC37L5RW.js.map +1 -0
- package/dist/chunk-UELJZCUC.js +7 -0
- package/dist/chunk-UELJZCUC.js.map +1 -0
- package/dist/{server-XO2J5KFL.js → server-PILR3U5E.js} +3 -3
- package/docs/adr/0002-hybrid-smart-rag-vault-retrieval.md +62 -0
- package/docs/adr/README.md +1 -0
- package/docs/mcp-tool-manifest.generated.json +549 -53
- package/package.json +2 -2
- package/dist/chunk-64DNEO5R.js +0 -7
- package/dist/chunk-64DNEO5R.js.map +0 -1
- package/dist/chunk-CGFJD7C6.js.map +0 -1
- /package/dist/{server-XO2J5KFL.js.map → server-PILR3U5E.js.map} +0 -0
package/README.md
CHANGED
|
@@ -88,7 +88,7 @@ Build the branded one-click bundle:
|
|
|
88
88
|
npm run build:mcpb
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
The generated bundle is written to `build/mcpb/mcp-scraper-<version>.mcpb` and copied to `public/downloads/` for the hosted download. The current public bundle is `https://mcpscraper.dev/downloads/mcp-scraper.mcpb` (`0.
|
|
91
|
+
The generated bundle is written to `build/mcpb/mcp-scraper-<version>.mcpb` and copied to `public/downloads/` for the hosted download. The current public bundle is `https://mcpscraper.dev/downloads/mcp-scraper.mcpb` (`0.25.0`, SHA-256 `357400ee624421d96671d7eef9fe050c35af691d1b42b160b86f5b86470679f1`). Install it by opening or dragging it into Claude Desktop. Claude displays the `MCP Scraper` install card, icon, and API-key configuration field from the bundle manifest.
|
|
92
92
|
|
|
93
93
|
The MCPB install exposes every tool — web-intelligence plus all `browser_*` tools — through the one `mcp-scraper` server.
|
|
94
94
|
|
|
@@ -192,7 +192,7 @@ GitHub uses the same provider-neutral read/action bridges: 27 live reads cover r
|
|
|
192
192
|
|
|
193
193
|
Google Drive Phase 1 exposes ten bounded reads plus the separately gated `create-drive-folder` and `copy-drive-file` actions through those same bridges and through per-run Mastra toolsets. It is interactive tool support, not the later deterministic bulk-export/`connection_sync` phase; large binary delivery and broader Drive mutations remain unreleased.
|
|
194
194
|
|
|
195
|
-
Google Search Console exposes
|
|
195
|
+
Google Search Console exposes eight bounded reads and eight gated property and sitemap mutations, including API-only batches for URL inspection, Search Analytics comparison, property management, and sitemap management. Batch calls return per-item receipts, run quota-consciously, and do not require database persistence; destructive batches default to dry-run previews and require explicit confirmation. Its optional deterministic `connection_sync` path backfills Search Analytics in bounded pages, persists raw records and checkpoints, mirrors normalized records into the selected Memory vault, and upserts performance rows into one indexed tenant-owned table per connection. The table supports exact/range/substring/in-list filtering by site, date, query, page, country, device, clicks, impressions, CTR, and position. Scheduled agent runs can instead receive only the exact Search Console tools granted to that schedule.
|
|
196
196
|
|
|
197
197
|
### Browser-agent tools
|
|
198
198
|
|
|
@@ -227,7 +227,7 @@ The `mcp-scraper` server (and the MCPB bundle, which runs it) exposes both secti
|
|
|
227
227
|
|
|
228
228
|
All MCP tools expose output schemas and return `structuredContent` with the IDs, URLs, CSV paths, transcripts, browser session handles, replay paths, artifacts, recipe fields, or blueprint fields needed by the next step. Browser Agent tools keep a JSON text block for older clients, but structured data is the primary contract. All tools carry MCP annotations; file-writing tools such as replay downloads and annotations state their filesystem side effects.
|
|
229
229
|
|
|
230
|
-
The canonical tool inventory is generated at `docs/mcp-tool-manifest.generated.json`. Both the `mcp-scraper` stdio server and the hosted endpoint at `https://mcpscraper.dev/mcp` expose the same
|
|
230
|
+
The canonical tool inventory is generated at `docs/mcp-tool-manifest.generated.json`. Both the `mcp-scraper` stdio server and the hosted endpoint at `https://mcpscraper.dev/mcp` expose the same 162 tools: 75 scraper, browser, workflow, billing, and connected-service tools plus 87 durable-memory tools. Release verification compares the exact local and remote tool-name sets, not only the count.
|
|
231
231
|
|
|
232
232
|
## Resources
|
|
233
233
|
|
package/dist/bin/api-server.cjs
CHANGED
|
@@ -29200,7 +29200,7 @@ var PACKAGE_VERSION;
|
|
|
29200
29200
|
var init_version = __esm({
|
|
29201
29201
|
"src/version.ts"() {
|
|
29202
29202
|
"use strict";
|
|
29203
|
-
PACKAGE_VERSION = "0.
|
|
29203
|
+
PACKAGE_VERSION = "0.25.0";
|
|
29204
29204
|
}
|
|
29205
29205
|
});
|
|
29206
29206
|
|
|
@@ -29315,7 +29315,7 @@ Multi-step orchestrations \u2014 prefer these over hand-chaining primitives when
|
|
|
29315
29315
|
|
|
29316
29316
|
## Memory
|
|
29317
29317
|
mcp-scraper also exposes persistent per-user memory tools (notes, facts, vaults,
|
|
29318
|
-
scheduled actions, tables, channels) backed by memory.mcpscraper.dev. Every account starts with
|
|
29318
|
+
scheduled actions, tables, channels) backed by memory.mcpscraper.dev. Every account starts with 14
|
|
29319
29319
|
vaults \u2014 call **list-vaults** to see what exists before creating anything new. Pick the vault whose job
|
|
29320
29320
|
matches the content: **Ideas** (unvalidated concepts), **Knowledge** (distilled lessons/how-tos),
|
|
29321
29321
|
**Library** (raw source material \u2014 articles, transcripts), **People** (one durable note per person/org),
|
|
@@ -29323,7 +29323,8 @@ matches the content: **Ideas** (unvalidated concepts), **Knowledge** (distilled
|
|
|
29323
29323
|
(action items with a status), **Projects** (durable named initiatives), **Issues** (something broken),
|
|
29324
29324
|
**Improvement Log** (receipts of changes made and whether they worked), **Experiments** (hypothesis +
|
|
29325
29325
|
measured result), **Sprint** (current cycle's scope), **Inspiration** (other people's work worth
|
|
29326
|
-
studying)
|
|
29326
|
+
studying), **Skills** (reusable skill packages; each requires \`scripts/\` and at least one of
|
|
29327
|
+
\`references/\` or \`templates/\`, and may use both).
|
|
29327
29328
|
For a normal new narrative note, call **prepare-memory-write** first. It queries the live vault contract,
|
|
29328
29329
|
tag vocabulary, and natural neighbor vaults, and returns interlink candidates that must be read before
|
|
29329
29330
|
acceptance. Compose every returned template section, then call **memory-capture**, which validates the
|
|
@@ -29353,6 +29354,12 @@ Tags are live vocabulary, not improvised labels: **list-memory-tags** shows what
|
|
|
29353
29354
|
reusable, and has no exact, alias, or near-equivalent. Use **memory-backlinks**,
|
|
29354
29355
|
**memory-graph-universe**, and **memory-graph-path** to trace the linked universe across vaults.
|
|
29355
29356
|
|
|
29357
|
+
**Always inspect the complete tag inventory and related notes first.** Use hybrid Smart RAG by default:
|
|
29358
|
+
form 3 focused queries (2\u20134 when useful), fuse exact tag/metadata/vault/date and semantic matches into 50
|
|
29359
|
+
candidates, expand the top 8 seeds by one link/backlink hop with at most 5 neighbors each, then Jina-rerank
|
|
29360
|
+
the combined pool to the best 30. Graph neighbors are candidates, never automatic links; add only links
|
|
29361
|
+
supported by the note contents.
|
|
29362
|
+
|
|
29356
29363
|
Scrape deposits are raw evidence and therefore go to **Library** through **library-ingest**, with the full
|
|
29357
29364
|
Library template and source metadata. If the source contains durable applicable guidance, create a separate
|
|
29358
29365
|
Knowledge companion through prepare-memory-write + memory-capture and link it to the Library source with
|
|
@@ -33794,7 +33801,7 @@ var init_browser_agent_mcp_server = __esm({
|
|
|
33794
33801
|
});
|
|
33795
33802
|
|
|
33796
33803
|
// src/mcp/memory-tool-schemas.ts
|
|
33797
|
-
var import_zod36, AcceptShareSchema, ApproveSenderSchema, DeclineShareSchema, GetChatLinkSchema, InboxSettingsSchema, InviteAccountSchema, issueKeyTool_scopeShape, IssueKeySchema, ListApprovedSendersSchema, ListKeysSchema, NoteInboxSchema, RemoveApprovedSenderSchema, RevokeChatLinkSchema, RevokeKeySchema, RevokeShareSchema, SetAgentIdentitySchema, SetScopeSchema, ShareNoteSchema, ShareVaultSchema, SwapVaultSchema, SwitchAccountSchema, UnlinkShareSchema, memoryCaptureTool_notePropsSchema, MemoryCaptureSchema, MemoryQuestionsSchema, PrepareMemoryWriteSchema, validateMemoryWriteTool_notePropsSchema, ValidateMemoryWriteSchema, CreateChannelSchema, GetMessageNoteSchema, ListChannelMembersSchema, ListChannelMessagesSchema, MyMentionsSchema, PollChannelSchema, PostMessageSchema, ReactMessageSchema, RemoveChannelMemberSchema, ReplyMessageSchema, factHistoryTool_entryShape, FactHistorySchema, recordFactTool_factShape, RecordFactSchema, NoteBacklinksSchema, GraphPathSchema, GraphUniverseSchema, LibraryIngestSchema, DeleteNoteSchema, ExportSchema, getTool_notePropsSchema, GetSchema, ListSchema, putTool_notePropsSchema, PutSchema, SearchSchema, SuggestSchema, UploadSchema, TemporalRecallSchema, CreateScheduledActionSchema, DeleteScheduledActionSchema, GetScheduleLinkSchema, GetScheduleStatusSchema, ListScheduledActionsSchema, PauseScheduledActionSchema, ProposeScheduledActionSchema, ResumeScheduledActionSchema, RevokeScheduleLinkSchema, SetScheduleEntitlementSchema, CostUsageSchema, StorageUsageSchema, CreateTableSchema, deleteTableRowsTool_FilterSchema, DeleteTableRowsSchema, DescribeTableSchema, DropTableSchema, InsertTableRowsSchema, ListTablesSchema, queryTableTool_FilterSchema, QueryTableSchema, ListTagsSchema, ResolveTagsSchema, UpsertTagSchema, AddVaultSchema, CreateSecureVaultSchema, DeleteVaultSchema, GetVaultContractSchema, ListSharedWithMeSchema, ListVaultsSchema, ProvisionDefaultsSchema, RouteMemorySchema, VideoAnalyzeStartSchema, VideoAnalyzeStatusSchema, CreateWebhookSchema, ListWebhooksSchema, RevokeWebhookSchema, MEMORY_TOOL_SCHEMAS;
|
|
33804
|
+
var import_zod36, AcceptShareSchema, ApproveSenderSchema, DeclineShareSchema, GetChatLinkSchema, InboxSettingsSchema, InviteAccountSchema, issueKeyTool_scopeShape, IssueKeySchema, ListApprovedSendersSchema, ListKeysSchema, NoteInboxSchema, RemoveApprovedSenderSchema, RevokeChatLinkSchema, RevokeKeySchema, RevokeShareSchema, SetAgentIdentitySchema, SetScopeSchema, ShareNoteSchema, ShareVaultSchema, SwapVaultSchema, SwitchAccountSchema, UnlinkShareSchema, memoryCaptureTool_notePropsSchema, MemoryCaptureSchema, MemoryQuestionsSchema, PrepareMemoryWriteSchema, validateMemoryWriteTool_notePropsSchema, ValidateMemoryWriteSchema, CreateChannelSchema, GetMessageNoteSchema, ListChannelMembersSchema, ListChannelMessagesSchema, MyMentionsSchema, PollChannelSchema, PostMessageSchema, ReactMessageSchema, RemoveChannelMemberSchema, ReplyMessageSchema, factHistoryTool_entryShape, FactHistorySchema, recordFactTool_factShape, RecordFactSchema, NoteBacklinksSchema, GraphPathSchema, GraphUniverseSchema, LibraryIngestSchema, bulkDeleteNotesTool_FilterSchema, BulkDeleteNotesSchema, DeleteNoteSchema, ExportSchema, getTool_notePropsSchema, GetSchema, ListSchema, putTool_notePropsSchema, PutSchema, searchTool_primitiveValue, SearchSchema, SuggestSchema, UploadSchema, TemporalRecallSchema, CreateScheduledActionSchema, DeleteScheduledActionSchema, GetScheduleLinkSchema, GetScheduleStatusSchema, ListScheduledActionsSchema, PauseScheduledActionSchema, ProposeScheduledActionSchema, ResumeScheduledActionSchema, RevokeScheduleLinkSchema, SetScheduleDefaultsSchema, SetScheduleEntitlementSchema, CostUsageSchema, StorageUsageSchema, CreateTableSchema, deleteTableRowsTool_FilterSchema, DeleteTableRowsSchema, DescribeTableSchema, DropTableSchema, InsertTableRowsSchema, ListTablesSchema, queryTableTool_FilterSchema, QueryTableSchema, ListTagsSchema, ResolveTagsSchema, UpsertTagSchema, AddVaultSchema, CreateSecureVaultSchema, DeleteVaultSchema, GetVaultContractSchema, ListSharedWithMeSchema, ListVaultsSchema, ProvisionDefaultsSchema, RouteMemorySchema, VideoAnalyzeStartSchema, VideoAnalyzeStatusSchema, CreateWebhookSchema, ListWebhooksSchema, RevokeWebhookSchema, MEMORY_TOOL_SCHEMAS;
|
|
33798
33805
|
var init_memory_tool_schemas = __esm({
|
|
33799
33806
|
"src/mcp/memory-tool-schemas.ts"() {
|
|
33800
33807
|
"use strict";
|
|
@@ -34318,12 +34325,15 @@ var init_memory_tool_schemas = __esm({
|
|
|
34318
34325
|
type: import_zod36.z.string().describe("Note type from the target vault contract (also used to route the note)."),
|
|
34319
34326
|
domain: import_zod36.z.string().describe("Domain folder for Library/Knowledge (AI, SEO, Copywriting & Ads, Business, Spirituality)."),
|
|
34320
34327
|
folder: import_zod36.z.string().describe("Explicit sub-folder within the vault; overrides routing-derived folder."),
|
|
34328
|
+
script_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: one or more Obsidian/internal paths under scripts/."),
|
|
34329
|
+
reference_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under references/."),
|
|
34330
|
+
template_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under templates/."),
|
|
34321
34331
|
parentMessageId: import_zod36.z.string().describe("Channel messages only: the path of the top-level message this is a reply to. Absent on top-level messages.")
|
|
34322
34332
|
}).partial().passthrough();
|
|
34323
34333
|
MemoryCaptureSchema = {
|
|
34324
34334
|
id: "memory-capture",
|
|
34325
34335
|
upstreamName: "memoryCaptureTool",
|
|
34326
|
-
description: "Strict normal-create path for durable memory.
|
|
34336
|
+
description: "Strict normal-create path for durable memory. Before capture, list the complete tag vocabulary, call prepare-memory-write, run hybrid memory-search for related notes, and read the strongest link candidates. This tool refuses incomplete notes, writes through memory-put, registers canonical tags, and verifies persisted content and props. Reserve memory-put for low-level migrations or deliberate edits.",
|
|
34327
34337
|
input: {
|
|
34328
34338
|
vault: import_zod36.z.string(),
|
|
34329
34339
|
folder: import_zod36.z.string().optional(),
|
|
@@ -34381,7 +34391,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
34381
34391
|
PrepareMemoryWriteSchema = {
|
|
34382
34392
|
id: "prepare-memory-write",
|
|
34383
34393
|
upstreamName: "prepareMemoryWriteTool",
|
|
34384
|
-
description: "Mandatory planning pass for a normal new memory.
|
|
34394
|
+
description: "Mandatory planning pass for a normal new memory. First inspect the complete tag vocabulary with list-memory-tags; then this pass routes the note, returns the live template and natural vault relationships, resolves proposed tags, and shortlists interlinks. Use hybrid memory-search (3 focused queries, 50 fused candidates, bounded graph expansion, rerank to 30 by default) and read strong related notes before capture. This is an explicit AI workflow directive, not a claim of persisted call-order enforcement.",
|
|
34385
34395
|
input: {
|
|
34386
34396
|
title: import_zod36.z.string().min(1),
|
|
34387
34397
|
content: import_zod36.z.string().min(1),
|
|
@@ -34417,6 +34427,9 @@ var init_memory_tool_schemas = __esm({
|
|
|
34417
34427
|
type: import_zod36.z.string().describe("Note type from the target vault contract (also used to route the note)."),
|
|
34418
34428
|
domain: import_zod36.z.string().describe("Domain folder for Library/Knowledge (AI, SEO, Copywriting & Ads, Business, Spirituality)."),
|
|
34419
34429
|
folder: import_zod36.z.string().describe("Explicit sub-folder within the vault; overrides routing-derived folder."),
|
|
34430
|
+
script_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: one or more Obsidian/internal paths under scripts/."),
|
|
34431
|
+
reference_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under references/."),
|
|
34432
|
+
template_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under templates/."),
|
|
34420
34433
|
parentMessageId: import_zod36.z.string().describe("Channel messages only: the path of the top-level message this is a reply to. Absent on top-level messages.")
|
|
34421
34434
|
}).partial().passthrough();
|
|
34422
34435
|
ValidateMemoryWriteSchema = {
|
|
@@ -34872,6 +34885,39 @@ var init_memory_tool_schemas = __esm({
|
|
|
34872
34885
|
openWorldHint: true
|
|
34873
34886
|
}
|
|
34874
34887
|
};
|
|
34888
|
+
bulkDeleteNotesTool_FilterSchema = import_zod36.z.object({
|
|
34889
|
+
column: import_zod36.z.enum(["path", "title", "kind", "source", "captured_at", "created_at", "updated_at", "revision"]).describe("Note column to filter on."),
|
|
34890
|
+
op: import_zod36.z.enum(["eq", "neq", "gt", "gte", "lt", "lte", "like", "prefix", "in"]).describe('"prefix" anchors to the start of the value only (e.g. path prefix "Mastra/opt-"); "like" matches anywhere in the value; "in" requires an array value.'),
|
|
34891
|
+
value: import_zod36.z.unknown().describe('Value to compare against. For "in", pass an array.')
|
|
34892
|
+
});
|
|
34893
|
+
BulkDeleteNotesSchema = {
|
|
34894
|
+
id: "bulk-delete-notes",
|
|
34895
|
+
upstreamName: "bulkDeleteNotesTool",
|
|
34896
|
+
description: "Delete every note in one vault matching all given filters (ANDed) plus an optional tag match (ANY of the given tags) \u2014 at least one filter or tag is required; there is no unfiltered delete-all here (use delete-vault for that). Defaults to dryRun: true, previewing the match count and a sample of up to 20 matching notes without deleting anything. Pass dryRun: false to actually delete. DESTRUCTIVE and not recoverable when dryRun is false. Requires write scope. Refuses secure vaults (not indexed, filtering is meaningless there).",
|
|
34897
|
+
input: {
|
|
34898
|
+
vault: import_zod36.z.string().optional().describe("Vault to delete from. Optional; defaults to the session active vault, then the first vault the caller is entitled to."),
|
|
34899
|
+
filters: import_zod36.z.array(bulkDeleteNotesTool_FilterSchema).default([]).describe("Filters to AND together. At least one of filters/tags is required."),
|
|
34900
|
+
tags: import_zod36.z.array(import_zod36.z.string()).optional().describe("Match notes carrying ANY of these tags (ORed among themselves, ANDed with filters). At least one of filters/tags is required."),
|
|
34901
|
+
dryRun: import_zod36.z.boolean().default(true).describe("When true (default), previews matches without deleting anything. Pass false to actually delete.")
|
|
34902
|
+
},
|
|
34903
|
+
output: {
|
|
34904
|
+
ok: import_zod36.z.boolean().describe("True on success; false on auth/scope/validation error."),
|
|
34905
|
+
vault: import_zod36.z.string().optional().describe("The vault operated on (after defaulting). Present when ok is true."),
|
|
34906
|
+
dryRun: import_zod36.z.boolean().optional().describe("Echoes whether this call was a preview or a real delete."),
|
|
34907
|
+
matchCount: import_zod36.z.number().optional().describe("Number of notes matching the filters. Present on a dry run."),
|
|
34908
|
+
sample: import_zod36.z.array(import_zod36.z.object({ path: import_zod36.z.string(), title: import_zod36.z.string(), updatedAt: import_zod36.z.string() })).optional().describe("Up to 20 matching notes, most-recently-updated first. Present on a dry run."),
|
|
34909
|
+
deleted: import_zod36.z.number().optional().describe("Number of notes actually deleted. Present when dryRun is false."),
|
|
34910
|
+
deletedPaths: import_zod36.z.array(import_zod36.z.string()).optional().describe("Paths of the deleted notes. Present when dryRun is false."),
|
|
34911
|
+
error: import_zod36.z.string().optional().describe("Human-readable failure reason when ok is false.")
|
|
34912
|
+
},
|
|
34913
|
+
annotations: {
|
|
34914
|
+
title: "Bulk Delete Notes",
|
|
34915
|
+
readOnlyHint: false,
|
|
34916
|
+
destructiveHint: true,
|
|
34917
|
+
idempotentHint: false,
|
|
34918
|
+
openWorldHint: false
|
|
34919
|
+
}
|
|
34920
|
+
};
|
|
34875
34921
|
DeleteNoteSchema = {
|
|
34876
34922
|
id: "delete-note",
|
|
34877
34923
|
upstreamName: "deleteNoteTool",
|
|
@@ -34953,6 +34999,9 @@ var init_memory_tool_schemas = __esm({
|
|
|
34953
34999
|
type: import_zod36.z.string().describe("Note type from the target vault contract (also used to route the note)."),
|
|
34954
35000
|
domain: import_zod36.z.string().describe("Domain folder for Library/Knowledge (AI, SEO, Copywriting & Ads, Business, Spirituality)."),
|
|
34955
35001
|
folder: import_zod36.z.string().describe("Explicit sub-folder within the vault; overrides routing-derived folder."),
|
|
35002
|
+
script_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: one or more Obsidian/internal paths under scripts/."),
|
|
35003
|
+
reference_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under references/."),
|
|
35004
|
+
template_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under templates/."),
|
|
34956
35005
|
parentMessageId: import_zod36.z.string().describe("Channel messages only: the path of the top-level message this is a reply to. Absent on top-level messages.")
|
|
34957
35006
|
}).partial().passthrough();
|
|
34958
35007
|
GetSchema = {
|
|
@@ -35041,6 +35090,9 @@ var init_memory_tool_schemas = __esm({
|
|
|
35041
35090
|
type: import_zod36.z.string().describe("Note type from the target vault contract (also used to route the note)."),
|
|
35042
35091
|
domain: import_zod36.z.string().describe("Domain folder for Library/Knowledge (AI, SEO, Copywriting & Ads, Business, Spirituality)."),
|
|
35043
35092
|
folder: import_zod36.z.string().describe("Explicit sub-folder within the vault; overrides routing-derived folder."),
|
|
35093
|
+
script_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: one or more Obsidian/internal paths under scripts/."),
|
|
35094
|
+
reference_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under references/."),
|
|
35095
|
+
template_links: import_zod36.z.array(import_zod36.z.string()).describe("Skills only: optional Obsidian/internal paths under templates/."),
|
|
35044
35096
|
parentMessageId: import_zod36.z.string().describe("Channel messages only: the path of the top-level message this is a reply to. Absent on top-level messages.")
|
|
35045
35097
|
}).partial().passthrough();
|
|
35046
35098
|
PutSchema = {
|
|
@@ -35085,44 +35137,64 @@ var init_memory_tool_schemas = __esm({
|
|
|
35085
35137
|
openWorldHint: true
|
|
35086
35138
|
}
|
|
35087
35139
|
};
|
|
35140
|
+
searchTool_primitiveValue = import_zod36.z.union([import_zod36.z.string(), import_zod36.z.number(), import_zod36.z.boolean()]);
|
|
35088
35141
|
SearchSchema = {
|
|
35089
35142
|
id: "memory-search",
|
|
35090
35143
|
upstreamName: "searchTool",
|
|
35091
|
-
description: "
|
|
35144
|
+
description: "Default Smart RAG search across accessible memory. Form 2-4 focused query variants, combine semantic matches with exact vault/tag/date/kind/type/metadata filters, expand one bounded hop of outgoing links and backlinks around strong seeds, then rerank. Defaults: retrieve/fuse 50 candidates, 8 graph seeds, 5 neighbors per seed, rerank to 30. Graph neighbors are candidates, never automatic winners or links. Before tagging or writing, also call list-memory-tags to inspect the complete vocabulary and reuse existing tags; read strong related notes before selecting links.",
|
|
35092
35145
|
input: {
|
|
35093
|
-
vault: import_zod36.z.string().optional().describe(
|
|
35094
|
-
|
|
35095
|
-
),
|
|
35096
|
-
|
|
35097
|
-
|
|
35098
|
-
),
|
|
35099
|
-
|
|
35100
|
-
|
|
35101
|
-
|
|
35146
|
+
vault: import_zod36.z.string().optional().describe("Exact logical vault handle to search. Omit to search every entitled vault."),
|
|
35147
|
+
query: import_zod36.z.string().min(1).describe("A focused semantic reformulation of the request."),
|
|
35148
|
+
userMessage: import_zod36.z.string().optional().describe("Original human wording. Used as a distinct query variant when useful and logged for quality review."),
|
|
35149
|
+
queries: import_zod36.z.array(import_zod36.z.string().min(1)).min(2).max(4).optional().describe("Caller-provided focused query variants. The planner deduplicates these with query, original wording, and tag/entity terms."),
|
|
35150
|
+
entities: import_zod36.z.array(import_zod36.z.string().min(1)).max(20).optional().describe("Named entities or exact terms used to form a focused query variant."),
|
|
35151
|
+
tags: import_zod36.z.array(import_zod36.z.string().min(1)).max(20).optional().describe("Exact canonical tags used for tag-channel retrieval and filtering."),
|
|
35152
|
+
tagMode: import_zod36.z.enum(["any", "all"]).optional().describe("Whether a note must match any or all supplied tags. Default any."),
|
|
35153
|
+
kind: import_zod36.z.enum(["note", "library", "capture", "decision", "message"]).optional().describe("Exact persisted note-kind filter."),
|
|
35154
|
+
type: import_zod36.z.string().min(1).optional().describe("Exact props.type filter."),
|
|
35155
|
+
dateFrom: import_zod36.z.string().datetime().optional().describe("Inclusive lower bound for note updatedAt."),
|
|
35156
|
+
dateTo: import_zod36.z.string().datetime().optional().describe("Inclusive upper bound for note updatedAt."),
|
|
35157
|
+
metadata: import_zod36.z.record(searchTool_primitiveValue).optional().describe("Exact equality filters for primitive note props."),
|
|
35158
|
+
queryVariantCount: import_zod36.z.number().int().min(2).max(4).optional().describe("Number of variants. Default 3."),
|
|
35159
|
+
candidatePool: import_zod36.z.number().int().min(10).max(100).optional().describe("Total fused candidates before final reranking. Default 50."),
|
|
35160
|
+
graphSeedCount: import_zod36.z.number().int().min(0).max(20).optional().describe("Strong preliminary notes whose graph neighborhoods are considered. Default 8."),
|
|
35161
|
+
graphDepth: import_zod36.z.literal(1).optional().describe("Graph expansion depth. Bounded to exactly one hop."),
|
|
35162
|
+
graphNeighborsPerSeed: import_zod36.z.number().int().min(1).max(10).optional().describe("Maximum outgoing-link plus backlink neighbors per seed. Default 5."),
|
|
35163
|
+
rerankTopN: import_zod36.z.number().int().min(1).max(50).optional().describe("Final results retained after Jina reranking. Default 30."),
|
|
35164
|
+
topK: import_zod36.z.number().int().min(1).max(50).optional().describe("Deprecated compatibility alias for rerankTopN. Prefer rerankTopN; default remains 30."),
|
|
35165
|
+
includeShared: import_zod36.z.boolean().optional().describe("Also search individually accepted shares. Default true. Exact note metadata filters exclude shares without accessible metadata.")
|
|
35102
35166
|
},
|
|
35103
35167
|
output: {
|
|
35104
|
-
ok: import_zod36.z.boolean()
|
|
35105
|
-
vault: import_zod36.z.string().optional()
|
|
35106
|
-
vaultsSearched: import_zod36.z.array(import_zod36.z.string()).optional()
|
|
35107
|
-
|
|
35108
|
-
import_zod36.z.
|
|
35109
|
-
|
|
35110
|
-
|
|
35111
|
-
|
|
35112
|
-
|
|
35113
|
-
|
|
35114
|
-
|
|
35115
|
-
|
|
35116
|
-
).optional()
|
|
35117
|
-
|
|
35168
|
+
ok: import_zod36.z.boolean(),
|
|
35169
|
+
vault: import_zod36.z.string().optional(),
|
|
35170
|
+
vaultsSearched: import_zod36.z.array(import_zod36.z.string()).optional(),
|
|
35171
|
+
planner: import_zod36.z.object({
|
|
35172
|
+
queryVariants: import_zod36.z.array(import_zod36.z.string()),
|
|
35173
|
+
candidatePool: import_zod36.z.number(),
|
|
35174
|
+
graphSeedCount: import_zod36.z.number(),
|
|
35175
|
+
graphDepth: import_zod36.z.number(),
|
|
35176
|
+
graphNeighborsPerSeed: import_zod36.z.number(),
|
|
35177
|
+
rerankTopN: import_zod36.z.number(),
|
|
35178
|
+
seeds: import_zod36.z.array(import_zod36.z.string()),
|
|
35179
|
+
graphCandidatesAdded: import_zod36.z.number()
|
|
35180
|
+
}).optional(),
|
|
35181
|
+
rerank: import_zod36.z.object({ applied: import_zod36.z.boolean(), provider: import_zod36.z.string(), fallbackReason: import_zod36.z.string().optional() }).optional(),
|
|
35182
|
+
results: import_zod36.z.array(import_zod36.z.object({
|
|
35183
|
+
text: import_zod36.z.string(),
|
|
35184
|
+
source: import_zod36.z.string(),
|
|
35185
|
+
score: import_zod36.z.number(),
|
|
35186
|
+
originalScore: import_zod36.z.number(),
|
|
35187
|
+
rerankScore: import_zod36.z.number().optional(),
|
|
35188
|
+
vault: import_zod36.z.string().optional(),
|
|
35189
|
+
sharedBy: import_zod36.z.string().optional(),
|
|
35190
|
+
shareId: import_zod36.z.string().optional(),
|
|
35191
|
+
matchChannels: import_zod36.z.array(import_zod36.z.enum(["semantic", "tag", "metadata", "graph"])),
|
|
35192
|
+
matchedQueries: import_zod36.z.array(import_zod36.z.string()),
|
|
35193
|
+
graphFrom: import_zod36.z.array(import_zod36.z.string())
|
|
35194
|
+
})).optional(),
|
|
35195
|
+
error: import_zod36.z.string().optional()
|
|
35118
35196
|
},
|
|
35119
|
-
annotations: {
|
|
35120
|
-
title: "Semantic Memory Search",
|
|
35121
|
-
readOnlyHint: true,
|
|
35122
|
-
destructiveHint: false,
|
|
35123
|
-
idempotentHint: true,
|
|
35124
|
-
openWorldHint: true
|
|
35125
|
-
}
|
|
35197
|
+
annotations: { title: "Hybrid Smart RAG Memory Search", readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true }
|
|
35126
35198
|
};
|
|
35127
35199
|
SuggestSchema = {
|
|
35128
35200
|
id: "memory-suggest",
|
|
@@ -35226,14 +35298,14 @@ var init_memory_tool_schemas = __esm({
|
|
|
35226
35298
|
CreateScheduledActionSchema = {
|
|
35227
35299
|
id: "create-scheduled-action",
|
|
35228
35300
|
upstreamName: "createScheduledActionTool",
|
|
35229
|
-
description: "Create a Credit-metered scheduled action for an active MCP Scraper Starter plan or higher, in agent mode (default) or connection_sync mode. Each execution has a 75-Credit base charge; agent model usage is added at 1.5 times OpenRouter's actual reported cost. Agent mode follows the description and writes a result into the target vault. connection_sync deterministically runs approved read-only tools on bound service connections and ingests their data. Google Search Console syncs also upsert a typed tenant-owned performance table for exact filtering with table-query; discover its tableName by calling list_service_connections after the first successful run. Cadence 'once' runs a single time then completes permanently. Requires write access to the target vault.",
|
|
35301
|
+
description: "Create a Credit-metered scheduled action for an active MCP Scraper Starter plan or higher, in agent mode (default) or connection_sync mode. Each execution has a 75-Credit base charge; agent model usage is added at 1.5 times OpenRouter's actual reported cost. Agent mode follows the description and writes a result into the target vault. connection_sync deterministically runs the approved read-only tools on bound service connections and ingests their data; it requires at least one connection to be bound before execution. Google Search Console syncs also upsert a typed tenant-owned performance table for exact filtering with table-query; discover its tableName by calling list_service_connections after the first successful run. Cadence 'once' runs a single time then completes permanently. Requires write access to the target vault.",
|
|
35230
35302
|
input: {
|
|
35231
35303
|
description: import_zod36.z.string().min(1).describe("Free-text description of what this action should do each time it runs."),
|
|
35232
35304
|
vault: import_zod36.z.string().min(1).describe("The vault this action writes its results into. You must already have write access to it."),
|
|
35233
35305
|
cadence: import_zod36.z.enum(["once", "daily", "weekly", "monthly"]).describe('How often this action runs. "once" fires a single time and then completes.'),
|
|
35234
35306
|
executionMode: import_zod36.z.enum(["agent", "connection_sync"]).default("agent").describe(`How to execute each run. "agent" (default) lets an agent follow the description. "connection_sync" deterministically ingests data from the schedule's bound connections using only their approved read-only tools; bind at least one connection before it runs. Search Console connection_sync also maintains a typed table exposed as the connection tableName.`),
|
|
35235
35307
|
timeOfDay: import_zod36.z.string().regex(/^([01]\d|2[0-3]):([0-5]\d)$/).optional().describe("24-hour HH:MM clock time to run at, in the given timezone. Optional \u2014 omit to run at any time during the period (matches prior default behavior)."),
|
|
35236
|
-
timezone: import_zod36.z.string().optional().describe(
|
|
35308
|
+
timezone: import_zod36.z.string().optional().describe(`IANA timezone name, e.g. "America/Denver". Only meaningful together with timeOfDay or deployDate. Omit to use the account's default timezone (set via set-schedule-defaults), falling back to UTC.`),
|
|
35237
35309
|
deployDate: import_zod36.z.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional().describe('Calendar date (YYYY-MM-DD, in the given timezone) this action should first become eligible to run \u2014 its deployment/start date. For recurring cadences, the first occurrence lands on or after this date; every later occurrence still follows the normal cadence. For cadence "once", this (combined with timeOfDay if given) is exactly what day it fires. Omit to start immediately.')
|
|
35238
35310
|
},
|
|
35239
35311
|
output: {
|
|
@@ -35295,7 +35367,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
35295
35367
|
GetScheduleStatusSchema = {
|
|
35296
35368
|
id: "get-schedule-status",
|
|
35297
35369
|
upstreamName: "getScheduleStatusTool",
|
|
35298
|
-
description: "Get the Credit-metered Scheduled Actions access and
|
|
35370
|
+
description: "Get the Credit-metered Scheduled Actions access, billing policy, and default timezone. Scheduling requires an active MCP Scraper Starter plan or higher but has no separate subscription: each execution has a 75-Credit base charge, and agent model usage is billed at 1.5 times OpenRouter's actual reported cost.",
|
|
35299
35371
|
input: {},
|
|
35300
35372
|
output: {
|
|
35301
35373
|
ok: import_zod36.z.boolean(),
|
|
@@ -35371,7 +35443,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
35371
35443
|
ProposeScheduledActionSchema = {
|
|
35372
35444
|
id: "propose-scheduled-action",
|
|
35373
35445
|
upstreamName: "proposeScheduledActionTool",
|
|
35374
|
-
description: "Turn freeform text describing what you want automated into a structured proposal (description, vault, cadence) for review and confirmation via create-scheduled-action \u2014 this is the propose step only; nothing is created here.",
|
|
35446
|
+
description: "Turn freeform text describing what you want automated into a structured proposal (description, vault, cadence, time of day, timezone) for review and confirmation via create-scheduled-action \u2014 this is the propose step only; nothing is created here.",
|
|
35375
35447
|
input: {
|
|
35376
35448
|
request: import_zod36.z.string().min(1).describe("Freeform text describing what you want scheduled.")
|
|
35377
35449
|
},
|
|
@@ -35380,6 +35452,8 @@ var init_memory_tool_schemas = __esm({
|
|
|
35380
35452
|
description: import_zod36.z.string().optional().describe("Proposed description \u2014 edit freely before confirming."),
|
|
35381
35453
|
vault: import_zod36.z.string().optional().describe("Proposed target vault."),
|
|
35382
35454
|
cadence: import_zod36.z.string().optional().describe("Proposed cadence: once, daily, weekly, or monthly."),
|
|
35455
|
+
timeOfDay: import_zod36.z.string().optional().describe("Proposed 24-hour HH:MM run time, when the request named one."),
|
|
35456
|
+
timezone: import_zod36.z.string().optional().describe("Proposed IANA timezone \u2014 from the request, or the account default when the request named a time without a zone."),
|
|
35383
35457
|
rationale: import_zod36.z.string().optional().describe("Why these choices were made \u2014 read this before confirming."),
|
|
35384
35458
|
error: import_zod36.z.string().optional()
|
|
35385
35459
|
},
|
|
@@ -35394,7 +35468,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
35394
35468
|
ResumeScheduledActionSchema = {
|
|
35395
35469
|
id: "resume-scheduled-action",
|
|
35396
35470
|
upstreamName: "resumeScheduledActionTool",
|
|
35397
|
-
description: "Resume a paused scheduled action. Its next run is computed fresh from now, not backfilled for time spent paused.",
|
|
35471
|
+
description: "Resume a paused scheduled action for an active MCP Scraper Starter plan or higher. Its next run is computed fresh from now, not backfilled for time spent paused.",
|
|
35398
35472
|
input: {
|
|
35399
35473
|
id: import_zod36.z.string().min(1).describe("The scheduled action id.")
|
|
35400
35474
|
},
|
|
@@ -35430,14 +35504,34 @@ var init_memory_tool_schemas = __esm({
|
|
|
35430
35504
|
openWorldHint: false
|
|
35431
35505
|
}
|
|
35432
35506
|
};
|
|
35507
|
+
SetScheduleDefaultsSchema = {
|
|
35508
|
+
id: "set-schedule-defaults",
|
|
35509
|
+
upstreamName: "setScheduleDefaultsTool",
|
|
35510
|
+
description: "Set your default timezone for scheduled actions. Any schedule you later create with a time of day but no explicit timezone uses this default instead of UTC. Pass null to clear it back to UTC.",
|
|
35511
|
+
input: {
|
|
35512
|
+
defaultTimezone: import_zod36.z.string().nullable().describe('IANA timezone name, e.g. "America/Denver". null clears the default (new schedules fall back to UTC).')
|
|
35513
|
+
},
|
|
35514
|
+
output: {
|
|
35515
|
+
ok: import_zod36.z.boolean(),
|
|
35516
|
+
defaultTimezone: import_zod36.z.string().nullable().optional().describe("The default timezone now in effect; null means UTC."),
|
|
35517
|
+
error: import_zod36.z.string().optional()
|
|
35518
|
+
},
|
|
35519
|
+
annotations: {
|
|
35520
|
+
title: "Set Schedule Defaults",
|
|
35521
|
+
readOnlyHint: false,
|
|
35522
|
+
destructiveHint: false,
|
|
35523
|
+
idempotentHint: true,
|
|
35524
|
+
openWorldHint: false
|
|
35525
|
+
}
|
|
35526
|
+
};
|
|
35433
35527
|
SetScheduleEntitlementSchema = {
|
|
35434
35528
|
id: "set-schedule-entitlement",
|
|
35435
35529
|
upstreamName: "setScheduleEntitlementTool",
|
|
35436
|
-
description: "Admin-only scheduled-action credential provisioning and historical-row recovery.
|
|
35530
|
+
description: "Admin-only scheduled-action credential provisioning and historical-row recovery. Use mcpScraperApiKey to rotate the encrypted delegated key without changing legacy enabled/quota fields. The former entitlement and quota values are retained only for migration compatibility and are not runtime access controls; paid-plan access is validated against MCP Scraper directly.",
|
|
35437
35531
|
input: {
|
|
35438
35532
|
granteeIdentity: import_zod36.z.string().min(1).describe("Identity whose scheduling entitlement is being set (e.g. an email)."),
|
|
35439
35533
|
enabled: import_zod36.z.boolean().optional().describe("Historical entitlement value for migration/recovery only. Omit to preserve the stored value."),
|
|
35440
|
-
quotaPerPeriod: import_zod36.z.number().optional().describe("Historical monthly
|
|
35534
|
+
quotaPerPeriod: import_zod36.z.number().optional().describe("Historical monthly quota for migration/recovery only. Omit to preserve the stored value."),
|
|
35441
35535
|
mcpScraperApiKey: import_zod36.z.string().optional().describe("The identity's mcp-scraper API key, stored encrypted, used to reach mcp-scraper tools during scheduled-action execution.")
|
|
35442
35536
|
},
|
|
35443
35537
|
output: {
|
|
@@ -35682,9 +35776,9 @@ var init_memory_tool_schemas = __esm({
|
|
|
35682
35776
|
ListTagsSchema = {
|
|
35683
35777
|
id: "list-memory-tags",
|
|
35684
35778
|
upstreamName: "listTagsTool",
|
|
35685
|
-
description: "List the live canonical tag vocabulary, aliases, usage counts, and per-vault distribution.
|
|
35779
|
+
description: "List the complete live canonical tag vocabulary, aliases, usage counts, and per-vault distribution. Always call this before proposing, resolving, or writing tags so the AI can reuse existing concepts and add only central, reusable concepts that are genuinely missing.",
|
|
35686
35780
|
input: {
|
|
35687
|
-
includeDeprecated: import_zod36.z.boolean().optional()
|
|
35781
|
+
includeDeprecated: import_zod36.z.boolean().optional().describe("Include deprecated tags as well as active tags. Defaults true so the AI sees the complete vocabulary; pass false only for an active-only display.")
|
|
35688
35782
|
},
|
|
35689
35783
|
output: {
|
|
35690
35784
|
ok: import_zod36.z.boolean(),
|
|
@@ -35696,7 +35790,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
35696
35790
|
ResolveTagsSchema = {
|
|
35697
35791
|
id: "resolve-memory-tags",
|
|
35698
35792
|
upstreamName: "resolveTagsTool",
|
|
35699
|
-
description: "Resolve proposed concepts against the live tag vocabulary. Returns reuse, create, or omit
|
|
35793
|
+
description: "Resolve proposed concepts against the live tag vocabulary. Always inspect the complete vocabulary with list-memory-tags first. Returns reuse, create, or omit; a new tag is appropriate only when no equivalent exists and the concept is central and reusable.",
|
|
35700
35794
|
input: {
|
|
35701
35795
|
candidates: import_zod36.z.array(import_zod36.z.object({ tag: import_zod36.z.string().min(1), central: import_zod36.z.boolean().optional(), reusable: import_zod36.z.boolean().optional(), description: import_zod36.z.string().optional() })).min(1).max(20)
|
|
35702
35796
|
},
|
|
@@ -35710,7 +35804,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
35710
35804
|
UpsertTagSchema = {
|
|
35711
35805
|
id: "upsert-memory-tag",
|
|
35712
35806
|
upstreamName: "upsertTagTool",
|
|
35713
|
-
description: "Define or curate one canonical tag, its meaning, aliases, and lifecycle.
|
|
35807
|
+
description: "Define or curate one canonical tag, its meaning, aliases, and lifecycle. Inspect the complete vocabulary with list-memory-tags first; use only after resolve-memory-tags returns create, or to merge/deprecate vocabulary intentionally. Requires write scope.",
|
|
35714
35808
|
input: {
|
|
35715
35809
|
tag: import_zod36.z.string().min(1),
|
|
35716
35810
|
description: import_zod36.z.string().optional(),
|
|
@@ -35866,17 +35960,17 @@ var init_memory_tool_schemas = __esm({
|
|
|
35866
35960
|
ProvisionDefaultsSchema = {
|
|
35867
35961
|
id: "provision-defaults",
|
|
35868
35962
|
upstreamName: "provisionDefaultsTool",
|
|
35869
|
-
description: "Provision the standard
|
|
35963
|
+
description: "Provision the standard 14-vault memory structure (Ideas, Inspiration, Knowledge, Library, People, Communications, Calendar, Tasks, Projects, Issues, Improvement Log, Experiments, Sprint, Skills) for an identity. Idempotent \u2014 existing vaults are untouched. Optionally issues a fresh API key entitled to all 14. Requires admin scope.",
|
|
35870
35964
|
input: {
|
|
35871
|
-
granteeIdentity: import_zod36.z.string().min(1).describe("Identity that should OWN the
|
|
35872
|
-
issueKey: import_zod36.z.boolean().optional().describe("When true, also issue a new API key for the identity entitled to all
|
|
35965
|
+
granteeIdentity: import_zod36.z.string().min(1).describe("Identity that should OWN the 14 default vaults (e.g. an email or user id)."),
|
|
35966
|
+
issueKey: import_zod36.z.boolean().optional().describe("When true, also issue a new API key for the identity entitled to all 14 vaults and return its secret once. Default false."),
|
|
35873
35967
|
plan: import_zod36.z.enum(["free", "pro", "team", "enterprise"]).optional().describe("Subscription plan carried by the issued key. Optional; defaults to free. Only used when issueKey is true.")
|
|
35874
35968
|
},
|
|
35875
35969
|
output: {
|
|
35876
35970
|
ok: import_zod36.z.boolean().describe("True when provisioning succeeded; false on auth/scope error."),
|
|
35877
35971
|
identity: import_zod36.z.string().optional().describe("Identity the vaults were provisioned for."),
|
|
35878
|
-
created: import_zod36.z.array(import_zod36.z.string()).optional().describe("Vault names newly created on this call (empty when all
|
|
35879
|
-
vaults: import_zod36.z.array(import_zod36.z.string()).optional().describe("All
|
|
35972
|
+
created: import_zod36.z.array(import_zod36.z.string()).optional().describe("Vault names newly created on this call (empty when all 14 already existed)."),
|
|
35973
|
+
vaults: import_zod36.z.array(import_zod36.z.string()).optional().describe("All 14 default vault names the identity now owns."),
|
|
35880
35974
|
keyId: import_zod36.z.string().optional().describe("Stable id of the issued key. Present only when issueKey was true."),
|
|
35881
35975
|
secret: import_zod36.z.string().optional().describe("The issued key secret \u2014 RETURNED ONCE. Present only when issueKey was true."),
|
|
35882
35976
|
plan: import_zod36.z.string().optional().describe("Plan assigned to the issued key. Present only when issueKey was true."),
|
|
@@ -35913,9 +36007,9 @@ var init_memory_tool_schemas = __esm({
|
|
|
35913
36007
|
VideoAnalyzeStartSchema = {
|
|
35914
36008
|
id: "video-analyze-start",
|
|
35915
36009
|
upstreamName: "videoAnalyzeStartTool",
|
|
35916
|
-
description: "Start a deep async breakdown of a video: samples frames, transcribes audio, and runs parallel analyses (summary, pacing, WPM, topic outline, key points, hook analysis, visual style, replication recipe) into one saved report. Returns a runId immediately \u2014 poll video-analyze-status.
|
|
36010
|
+
description: "Start a deep async breakdown of a video: samples frames, transcribes audio, and runs parallel analyses (summary, pacing, WPM, topic outline, key points, hook analysis, visual style, replication recipe) into one saved report. Returns a runId immediately \u2014 poll video-analyze-status. Accepts a YouTube, Facebook, Instagram, TikTok, or Vimeo URL directly (downloaded for you), or a direct video file URL (.mp4/.webm/.mov). Videos up to 1 hour.",
|
|
35917
36011
|
input: {
|
|
35918
|
-
sourceUrl: import_zod36.z.string().url().describe("
|
|
36012
|
+
sourceUrl: import_zod36.z.string().url().describe("A YouTube, Facebook, Instagram, TikTok, or Vimeo URL (downloaded automatically), or a direct video file URL (.mp4/.webm/.mov/.gif)."),
|
|
35919
36013
|
intervalS: import_zod36.z.number().min(1).max(30).optional().describe("Preferred seconds between sampled frames (1-30). Default 2. For long videos the interval is automatically widened so the whole video is covered within the frame budget. Lower = denser sampling where the video is short enough to allow it."),
|
|
35920
36014
|
maxFrames: import_zod36.z.number().int().min(1).max(480).optional().describe("Hard cap on frames analyzed (\u2264480). Default 120. Frames are spread across the whole duration; lowest sampling interval is 1 second, so short videos cannot use more frames than their length in seconds."),
|
|
35921
36015
|
detail: import_zod36.z.enum(["fast", "standard", "deep"]).optional().describe("Analysis depth. Default standard."),
|
|
@@ -36052,6 +36146,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
36052
36146
|
GraphPathSchema,
|
|
36053
36147
|
GraphUniverseSchema,
|
|
36054
36148
|
LibraryIngestSchema,
|
|
36149
|
+
BulkDeleteNotesSchema,
|
|
36055
36150
|
DeleteNoteSchema,
|
|
36056
36151
|
ExportSchema,
|
|
36057
36152
|
GetSchema,
|
|
@@ -36070,6 +36165,7 @@ var init_memory_tool_schemas = __esm({
|
|
|
36070
36165
|
ProposeScheduledActionSchema,
|
|
36071
36166
|
ResumeScheduledActionSchema,
|
|
36072
36167
|
RevokeScheduleLinkSchema,
|
|
36168
|
+
SetScheduleDefaultsSchema,
|
|
36073
36169
|
SetScheduleEntitlementSchema,
|
|
36074
36170
|
CostUsageSchema,
|
|
36075
36171
|
StorageUsageSchema,
|