Vist
A shared Second Brain for you and your LLMs.
What it can do
- Complete Task: Mark a task as completed. After completing a task, call update_project_state to keep the project context current.
- Create Note: Create a new note in the user's knowledge base. Requires a title and markdown content. Optionally assign to a folder and add labels.
- Create Task: Create a new task. Supports priority (low/medium/high), due dates, labels, and optional linking to a source note.
What data it sees
Do you need an account
No: the server works without sign-in
A shared Second Brain for you and your LLMs. Notes, tasks, project context, and a growing knowledge base, perfectly synced.
Vist is a multi-tenant, privacy-first Second Brain built specifically for the age of AI. Unlike traditional note-taking apps that silo your data, Vist exposes your entire workspace (notes, tasks, agent memories, and project state) directly to your LLMs via the Model Context Protocol (MCP).
When you connect Vist to your favorite AI agent, it gains a persistent memory of your work. It can proactively read your project notes, manage your todo lists, update its own agent-specific context, and search your knowledge base — all in real time.
Key Capabilities:
- Unified Workspace: Seamlessly interlink Markdown-rich notes and task lists.
- Agent Memories: AI models read and write typed memories — decision_log, learned_facts, active_context, and project_state — so they never lose context between sessions. Query memory semantically to surface exactly what's relevant.
- LLM Wiki: Agents can create and update structured wiki pages directly in your knowledge base. Over time, your workspace becomes a living reference - built by you and your AI, together.
- Full-Text & Semantic Search: Agents query your entire knowledge base instantly to find relevant facts, past decisions, or prior work.
- Interactive UI Cards: Rich MCP App integrations - like rendering an interactive Task List UI directly inside the chat window.
Vist bridges the gap between human thought and AI execution, ensuring everything is linked, transparent, and effortlessly flows together.
Server tool list (17)
Raw names from tools/list. Only developers need these.
| complete_task | Mark a task as completed. After completing a task, call update_project_state to keep the project context current. |
| create_note | Create a new note in the user's knowledge base. Requires a title and markdown content. Optionally assign to a folder and add labels. |
| create_task | Create a new task. Supports priority (low/medium/high), due dates, labels, and optional linking to a source note. |
| get_note | Get a single note by ID, including its full content, labels, and folder. |
| get_task | Get a single task by ID, including its status, priority, due date, and labels. |
| list_folders | Get all folders for the user. Optionally include note counts per folder. |
| list_notes | Get notes, optionally filtered by folder. Returns titles, IDs, and metadata (not full content). |
| list_tasks | Returns raw JSON task data for programmatic use. For displaying tasks to the user, use show_task_list instead which renders an interactive UI. |
| load_context | Loads the full agent persona, current project state, and session context. IMPORTANT: You MUST call this tool before any other tool at the start of every session. It establishes your identity, active projects, tasks, and user preferences. |
| query_memory | Search across agent memories using semantic vector search. Returns ranked results with relevance scores. Useful for finding specific decisions, facts, or project context. Use this to check for existing memories before creating new ones. Understands conceptual similarity — e.g., searching 'deployment issues' finds memories about 'Kamal proxy configuration'. |
| record_memory | Record or update a memory for persistent agent context. Use for decisions (decision_log), stable facts (learned_facts), user preferences (preferences), or short-lived context (active_context). For project status tracking, prefer update_project_state instead. Pass memory_id to update an existing memory rather than creating duplicates. Requires load_context to have been called first. |
| search_knowledge_base | Search across the user's notes and tasks using full-text search. Returns results ranked by relevance with snippets. Use this to find information in the user's knowledge base before creating new content. Supports semantic search — conceptually related results are returned even when exact keywords don't match. |
| show_task_list | Displays the interactive Task List UI to the user. Supports filtering by query, label, status (incomplete/completed/all), and due date (today/overdue/upcoming). Always prefer this over list_tasks for user-facing task views. |
| sync_agent_memory | Fast retrieval of memory delta for AI agents. Returns memories prioritized by relevance within token budget. Use for incremental sync after load_context has been called; not a replacement for load_context at session start. |
| update_note | Update an existing note. Only provided fields are changed. |
| update_project_state | Update structured project state memory. Merges provided sections with existing content — omitted sections are preserved, not deleted. To clear a section, pass an empty array or empty string. Requires load_context to have been called first in this session. |
| update_task | Update a task's description, due date, priority, or labels. Use complete_task to mark tasks as done. |