guidance+="CRITICAL REQUIREMENT: The 'attribute_search' tool requires 'attributeType' parameter that must be EXACTLY 'label' or 'relation' (lowercase, no other values).\n";
description:'Search for notes with specific attributes (labels or relations). Use this when you need to find notes based on their metadata rather than content.',
description:'Search for notes with specific attributes (labels or relations). Use this when you need to find notes based on their metadata rather than content. IMPORTANT: attributeType must be exactly "label" or "relation" (lowercase).',
parameters:{
type:'object',
properties:{
attributeType:{
type:'string',
description:'Type of attribute to search for: "label" or "relation"',
description:'MUST be exactly "label" or "relation" (lowercase, no other values are valid)',
enum:['label','relation']
},
attributeName:{
type:'string',
description:'Name of the attribute to search for'
description:'Name of the attribute to search for (e.g., "important", "todo", "related-to")'
},
attributeValue:{
type:'string',
@ -63,7 +63,7 @@ export class AttributeSearchTool implements ToolHandler {
description:'Search for notes in the database using semantic search. Returns notes most semantically related to the query.',
description:'Search for notes in the database using semantic search. Returns notes most semantically related to the query. Use specific, descriptive queries for best results.',
parameters:{
type:'object',
properties:{
query:{
type:'string',
description:'The search query to find semantically related notes'
description:'The search query to find semantically related notes. Be specific and descriptive for best results.'
},
parentNoteId:{
type:'string',
description:'Optional system ID of the parent note to restrict search to a specific branch (not the title). This is a unique identifier like "abc123def456".'
description:'Optional system ID of the parent note to restrict search to a specific branch (not the title). This is a unique identifier like "abc123def456". Do not use note titles here.'
},
maxResults:{
type:'number',
@ -142,11 +142,11 @@ export class SearchNotesTool implements ToolHandler {
message:'No notes found matching your query. Try using more general terms or try the keyword_search_notes tool with a different query. Note: Use the noteId (not the title) when performing operations on specific notes with other tools.'
};
}else{
return{
count: enhancedResults.length,
results: enhancedResults,
message:"Note: Use the noteId (not the title) when performing operations on specific notes with other tools."