discover_forgetful_tools
Discover available tools, optionally filtered by category
Instructions
Discover available tools, optionally filtered by category
Returns enough information for LLMs to call tools directly without needing how_to_use.
Args: category: Optional category filter (user, memory, project, code_artifact, document, entity, linking) ctx: FastMCP Context (automatically injected)
Returns: Dictionary with: - tools_by_category: Tools grouped by category - total_count: Total number of tools - categories_available: List of available categories - filtered_by: Category filter applied (if any)
All Available Tools
User Tools - User profile and preferences
get_current_user: Get authenticated user info
update_user_notes: Store user preferences/notes
Memory Tools - Atomic knowledge storage (<400 words per memory)
create_memory: Store a single concept with auto-linking to similar memories (supports provenance tracking)
query_memory: Semantic search across memories (use query_context for better ranking)
get_memory: Retrieve memory by ID
update_memory: Modify memory fields (PATCH semantics, supports provenance tracking)
link_memories: Manually connect related memories bidirectionally
unlink_memories: Remove link between memories
mark_memory_obsolete: Soft-delete with audit trail and optional superseded_by
unobsolete_memory: Restore a memory previously marked obsolete
get_recent_memories: Get newest memories (timeline view)
Provenance Tracking (optional fields for create_memory/update_memory):
source_repo, source_files, source_url: Track where knowledge came from
confidence: Reliability score (0.0-1.0) for AI-generated content
encoding_agent, encoding_version: Track which agent/version created the memory
Project Tools - Organize memories by context/scope
create_project: Create project container (development, personal, work, etc.)
get_project: Retrieve project details
list_projects: List all projects with optional status/repo filter
update_project: Modify project metadata
delete_project: Remove project (memories preserved)
Code Artifact Tools - Reusable code snippets and patterns
create_code_artifact: Store code with language, tags, project link
get_code_artifact: Retrieve code artifact by ID
list_code_artifacts: List artifacts with project/language/tags filter
update_code_artifact: Modify artifact fields
delete_code_artifact: Remove artifact
Document Tools - Long-form content (>300 words)
create_document: Store detailed docs, analysis, guides
get_document: Retrieve document by ID
list_documents: List documents with project/type/tags filter
update_document: Modify document fields
delete_document: Remove document
Entity Tools - Real-world entities (people, orgs, devices)
create_entity: Create entity with type, aka (aliases), notes
get_entity: Retrieve entity by ID
list_entities: List entities with project/type/tags filter
search_entities: Text search by name or aka (aliases)
update_entity: Modify entity fields
delete_entity: Remove entity (cascades links)
link_entity_to_memory: Connect entity to memory
unlink_entity_from_memory: Remove entity-memory link
link_entity_to_project: Connect entity to project (organizational grouping)
unlink_entity_from_project: Remove entity-project link
get_entity_memories: Get all memories linked to entity
get_memory_entities: Get all entities linked to memory
create_entity_relationship: Create relationship (part_of, depends_on, works_for, etc.)
get_entity_relationships: Get relationships for entity
update_entity_relationship: Modify relationship
delete_entity_relationship: Remove relationship
Workflow
Call discover_forgetful_tools() to see this catalog
Call execute_forgetful_tool(tool_name, {args}) to run any tool
If needed, call how_to_use_forgetful_tool(tool_name) for full parameter docs
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| category | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||