/**
* Journal and discovery tool definitions.
* @module
*/
import type { Tool } from "@modelcontextprotocol/sdk/types.js";
export const journalTools: Tool[] = [
{
name: "get_today",
description: "Get or create today's journal page",
inputSchema: {
type: "object",
properties: {},
},
},
{
name: "append_to_today",
description:
"Append content to today's journal page as a new block. " +
"IMPORTANT: This creates a SINGLE block. Content should be one logical unit (one paragraph, one heading, etc.). " +
"Do NOT include multiple headings or unordered lists - they won't render correctly. " +
"Call this multiple times to add multiple blocks.",
inputSchema: {
type: "object",
properties: {
content: {
type: "string",
description:
"Content to append as a single block. Should be one logical unit - not multiple headings or lists.",
},
},
required: ["content"],
},
},
{
name: "get_recent_journals",
description: "Get recent journal entries",
inputSchema: {
type: "object",
properties: {
days: {
type: "number",
description: "Number of days to retrieve (default: 7)",
},
includeContent: {
type: "boolean",
description: "Include page content in response (default: false)",
},
},
},
},
{
name: "find_related_pages",
description: "Find pages linked to and from a given page (backlinks and forward links)",
inputSchema: {
type: "object",
properties: {
pageName: {
type: "string",
description: "Name of the page to find links for",
},
},
required: ["pageName"],
},
},
{
name: "get_block_backlinks",
description: "Find all blocks that reference a given block",
inputSchema: {
type: "object",
properties: {
uuid: {
type: "string",
description: "UUID of the block to find backlinks for",
},
},
required: ["uuid"],
},
},
];