
Contexta
Gives your AI assistant a persistent memory layer that combines keyword, vector, and graph search in a single query. You get typed entities out of the box (people, projects, decisions, meetings, tasks) that link automatically into a knowledge graph. Works with Claude Desktop, Cursor, and ChatGPT over HTTP, authenticates via OAuth per user, and exposes tools for search, page CRUD, graph traversal, and task management. Useful when you need context that survives across sessions or want your agent to recall who decided what without manual tagging. Multilingual support for English and Russian. Hosted service with a 30 second setup through Smithery or manual config.
- tools
- 49
- transport
- HTTP
- last updated
- Apr 9, 2026
Tools
49 toolsPublic tool metadata for what this MCP can expose to an agent.
read_pageRead a DashDoc page and return its content as Markdown with metadata.2 params
Read a DashDoc page and return its content as Markdown with metadata.
page_idstringworkspace_idstringcreate_pageCreate a new page in DashDoc workspace. Content is Markdown (auto-converted to TipTap). Returns page_id and node_id.4 params
Create a new page in DashDoc workspace. Content is Markdown (auto-converted to TipTap). Returns page_id and node_id.
markdownstringparent_node_idstringtitlestringworkspace_idstringupdate_pageUpdate an existing DashDoc page. Handles optimistic locking automatically. Content is Markdown. Embedded blocks (kanban, spreadsheet, child pages) are preserved automatically.4 params
Update an existing DashDoc page. Handles optimistic locking automatically. Content is Markdown. Embedded blocks (kanban, spreadsheet, child pages) are preserved automatically.
markdownstringpage_idstringtitlestringworkspace_idstringdelete_pageSoft-delete a DashDoc page.2 params
Soft-delete a DashDoc page.
page_idstringworkspace_idstringrestore_pageRestore a soft-deleted DashDoc page. Clears deleted_at and re-registers workspace node.2 params
Restore a soft-deleted DashDoc page. Clears deleted_at and re-registers workspace node.
page_idstringworkspace_idstringlist_workspacesList all workspaces available to the current user. Returns workspace IDs needed for other tool calls.
List all workspaces available to the current user. Returns workspace IDs needed for other tool calls.
No parameter schema in public metadata yet.
get_treeGet workspace tree structure. Without node_id returns root items; with node_id drills into a subtree. OUTPUT FORMAT: Each line shows: - title (type, node:<tree-node-id>, ref:<entity-id>) Use node:<UUID> values as: - node_id parameter in get_tree to drill deeper - parent_node_i...2 params
Get workspace tree structure. Without node_id returns root items; with node_id drills into a subtree. OUTPUT FORMAT: Each line shows: - title (type, node:<tree-node-id>, ref:<entity-id>) Use node:<UUID> values as: - node_id parameter in get_tree to drill deeper - parent_node_i...
node_idstringworkspace_idstringcreate_folderCreate a folder in the DashDoc workspace tree.3 params
Create a folder in the DashDoc workspace tree.
parent_node_idstringtitlestringworkspace_idstringcreate_projectCreate a new project in the DashDoc workspace tree. A project includes a Neo4j node, a linked page, and a workspace entry.3 params
Create a new project in the DashDoc workspace tree. A project includes a Neo4j node, a linked page, and a workspace entry.
namestringparent_node_idstringworkspace_idstringmove_pageMove a workspace item (page or folder) to a new parent within the SAME workspace. Cross-workspace moves are not supported — use create_page + delete_page instead.3 params
Move a workspace item (page or folder) to a new parent within the SAME workspace. Cross-workspace moves are not supported — use create_page + delete_page instead.
new_parent_node_idstringnode_idstringworkspace_idstringupload_fileUpload a file to DashDoc workspace (max 500 MB). - Use file_path for local MCP servers (stdio mode) — most reliable for large files. - Use file_base64 + file_name for remote MCP servers (http mode). For files >25 MB, use file_base64_chunks to send in parts. - Use file_base64_c...8 params
Upload a file to DashDoc workspace (max 500 MB). - Use file_path for local MCP servers (stdio mode) — most reliable for large files. - Use file_base64 + file_name for remote MCP servers (http mode). For files >25 MB, use file_base64_chunks to send in parts. - Use file_base64_c...
chunk_indexnumberfile_base64stringfile_namestringfile_pathstringparent_node_idstringtotal_chunksnumberupload_idstringworkspace_idstringreorder_workspaceReorder workspace items within their parent.2 params
Reorder workspace items within their parent.
itemsarrayworkspace_idstringsearchKeyword search across all DashDoc content: pages, documents, meeting notes, decisions, discussions, tasks, graph nodes, canvases, boards. USE THIS TOOL when the user: - Asks about past discussions or conversations ("мы обсуждали", "мы говорили", "обсуждение с...") - Mentions a...4 params
Keyword search across all DashDoc content: pages, documents, meeting notes, decisions, discussions, tasks, graph nodes, canvases, boards. USE THIS TOOL when the user: - Asks about past discussions or conversations ("мы обсуждали", "мы говорили", "обсуждение с...") - Mentions a...
limitnumberquerystringtypestringworkspace_idstringunified_searchSemantic search combining keyword matching, vector similarity, knowledge graph traversal, and conversation search. Best for natural-language queries where exact keywords are unknown. USE THIS TOOL (preferred over basic search) when: - The user asks about discussions, meetings,...10 params
Semantic search combining keyword matching, vector similarity, knowledge graph traversal, and conversation search. Best for natural-language queries where exact keywords are unknown. USE THIS TOOL (preferred over basic search) when: - The user asks about discussions, meetings,...
graph_depthnumberinclude_conversationsbooleaninclude_graph_contextbooleanlimitnumbermessages_per_chatnumberoffsetnumberquerystringtypesarrayweightsobjectworkspace_idstringgraph_searchSearch graph nodes (entities) by name. Returns matching nodes with their types and properties.3 params
Search graph nodes (entities) by name. Returns matching nodes with their types and properties.
querystringtypesstringworkspace_idstringlist_tasksList tasks from DashDoc with optional filters.7 params
List tasks from DashDoc with optional filters.
assigneestringboard_idstringlimitnumberproject_idstringstatusstringtagsstringworkspace_idstringget_taskGet full task details by ID.2 params
Get full task details by ID.
task_idstringworkspace_idstringcreate_taskCreate a new task in DashDoc. Agent tasks should always include tags: ["agent"] and board_id for Dev Board.11 params
Create a new task in DashDoc. Agent tasks should always include tags: ["agent"] and board_id for Dev Board.
assigneestringboard_idstringdescriptionstringdue_datestringparent_idstringprioritystringproject_idstringstatusstringtagsarraytitlestringworkspace_idstringupdate_taskUpdate an existing task in DashDoc.10 params
Update an existing task in DashDoc.
assigneestringdescriptionstringdue_datestringprioritystringproject_idstringstatusstringtagsarraytask_idstringtitlestringworkspace_idstringdelete_taskDelete a task.2 params
Delete a task.
task_idstringworkspace_idstringget_task_relationsGet all relations for a task (subtasks, blocked by, blocks, project, etc.).2 params
Get all relations for a task (subtasks, blocked by, blocks, project, etc.).
task_idstringworkspace_idstringlink_tasksCreate a relationship between two tasks. Types: PART_OF (subtask→parent), BLOCKS (blocker→blocked), PART_OF_PROJECT (task→project).4 params
Create a relationship between two tasks. Types: PART_OF (subtask→parent), BLOCKS (blocker→blocked), PART_OF_PROJECT (task→project).
target_idstringtask_idstringtypestringworkspace_idstringunlink_tasksRemove a relationship from a task by relation ID (get IDs from get_task_relations).3 params
Remove a relationship from a task by relation ID (get IDs from get_task_relations).
relation_idstringtask_idstringworkspace_idstringbulk_update_tasksBulk update status for multiple tasks at once. Max 200 tasks per call.2 params
Bulk update status for multiple tasks at once. Max 200 tasks per call.
updatesstringworkspace_idstringcreate_canvas_nodeCreate a new entity and place it on a canvas. Entity types: Person, Organization, Project, Server, Service, Agent, Interface, DataStore, Document, Task, etc.7 params
Create a new entity and place it on a canvas. Entity types: Person, Organization, Project, Server, Service, Agent, Interface, DataStore, Document, Task, etc.
canvas_idstringentity_typestringnamestringpropertiesobjectworkspace_idstringxnumberynumberadd_node_to_canvasAdd an existing graph node to a canvas at specified position.5 params
Add an existing graph node to a canvas at specified position.
canvas_idstringnode_idstringworkspace_idstringxnumberynumberread_presentationRead a DashDoc presentation (Reveal.js markdown format). Returns markdown content, theme, and transition settings. Slides are separated by --- (horizontal) and -- (vertical sub-slides). Supports fragments (animations), data-background attributes, and HTML within slides.2 params
Read a DashDoc presentation (Reveal.js markdown format). Returns markdown content, theme, and transition settings. Slides are separated by --- (horizontal) and -- (vertical sub-slides). Supports fragments (animations), data-background attributes, and HTML within slides.
presentation_idstringworkspace_idstringcreate_spreadsheetCreate a spreadsheet with optional headers and data rows.5 params
Create a spreadsheet with optional headers and data rows.
headersarrayparent_node_idstringrowsarraytitlestringworkspace_idstringread_spreadsheetRead spreadsheet data as markdown table, CSV, or JSON. For large spreadsheets (>1000 rows), consider using range parameter or CSV format.5 params
Read spreadsheet data as markdown table, CSV, or JSON. For large spreadsheets (>1000 rows), consider using range parameter or CSV format.
formatstringmarkdown · csv · jsonpage_idstringrangestringsheet_idstringworkspace_idstringupdate_cellsUpdate specific cells by A1 address (e.g. B2, D15). Handles optimistic locking with retry.4 params
Update specific cells by A1 address (e.g. B2, D15). Handles optimistic locking with retry.
cellsarraypage_idstringsheet_idstringworkspace_idstringappend_rowsAppend rows to the end of a spreadsheet. Handles optimistic locking with retry.4 params
Append rows to the end of a spreadsheet. Handles optimistic locking with retry.
page_idstringrowsarraysheet_idstringworkspace_idstringmanage_sheetsList, add, delete, rename a sheet, or toggle gridlines visibility. action=list reads sheets (workspace-optional); all others mutate.5 params
List, add, delete, rename a sheet, or toggle gridlines visibility. action=list reads sheets (workspace-optional); all others mutate.
actionstringlist · add · delete · rename · show_gridlines · hide_gridlinesnamestringpage_idstringsheet_idstringworkspace_idstringfind_cellsSearch for a value in spreadsheet cells. Returns matching cell addresses.5 params
Search for a value in spreadsheet cells. Returns matching cell addresses.
matchstringexact · containspage_idstringquerystringsheet_idstringworkspace_idstringstyle_cellsApply style (bold, italic, colors, alignment, etc.) to a cell or range.5 params
Apply style (bold, italic, colors, alignment, etc.) to a cell or range.
page_idstringrangestringsheet_idstringstyleobjectworkspace_idstringmerge_cellsMerge or unmerge cells in a range.5 params
Merge or unmerge cells in a range.
actionstringmerge · unmergepage_idstringrangestringsheet_idstringworkspace_idstringresize_columns_rowsSet column widths and/or row heights.5 params
Set column widths and/or row heights.
columnsarraypage_idstringrowsarraysheet_idstringworkspace_idstringsave_knowledgeSave structured facts to the knowledge graph with automatic entity resolution and deduplication. Entity resolution algorithm (in priority order): 1. Exact match by identifiers (phone, email, telegramUsername, domain, inn) 2. Exact match by name 3. Fuzzy match by name and alias...5 params
Save structured facts to the knowledge graph with automatic entity resolution and deduplication. Entity resolution algorithm (in priority order): 1. Exact match by identifiers (phone, email, telegramUsername, domain, inn) 2. Exact match by name 3. Fuzzy match by name and alias...
create_pageobjectdry_runbooleanfactsarraypage_idstringworkspace_idstringlist_remindersList reminders with optional status filter.4 params
List reminders with optional status filter.
limitnumberoffsetnumberstatusstringactive · done · dismisseddefault: activeworkspace_idstringgraph_nodeUnified CRUD for knowledge-graph nodes (entities). Replaces create_node, get_node, update_node, delete_node, get_related. Actions: - create: requires type, name; optional properties - get: requires node_id - update: requires node_id; optional name, properties - delete: require...6 params
Unified CRUD for knowledge-graph nodes (entities). Replaces create_node, get_node, update_node, delete_node, get_related. Actions: - create: requires type, name; optional properties - get: requires node_id - update: requires node_id; optional name, properties - delete: require...
actionstringcreate · get · update · delete · relatednamestringnode_idstringpropertiesobjecttypestringworkspace_idstringgraph_edgeUnified CRUD for knowledge-graph edges (relationships). Also used to create connections between nodes on a canvas. Replaces create_edge, get_edge, update_edge, delete_edge. Actions: - create: requires source_id, target_id, type; optional properties - get: requires edge_id - up...7 params
Unified CRUD for knowledge-graph edges (relationships). Also used to create connections between nodes on a canvas. Replaces create_edge, get_edge, update_edge, delete_edge. Actions: - create: requires source_id, target_id, type; optional properties - get: requires edge_id - up...
actionstringcreate · get · update · deleteedge_idstringpropertiesobjectsource_idstringtarget_idstringtypestringworkspace_idstringgraph_schemaList all entity types, relationship types, and property schemas available in the knowledge graph. Renamed from graph_types.
List all entity types, relationship types, and property schemas available in the knowledge graph. Renamed from graph_types.
No parameter schema in public metadata yet.
boardUnified CRUD for kanban boards. Replaces list_boards, get_board, create_board, update_board, delete_board. Boards are filter views — pass filters JSON with include/exclude for projects, tags, people, statuses; matching tasks appear on the board automatically. Actions: - list:...9 params
Unified CRUD for kanban boards. Replaces list_boards, get_board, create_board, update_board, delete_board. Boards are filter views — pass filters JSON with include/exclude for projects, tags, people, statuses; matching tasks appear on the board automatically. Actions: - list:...
actionstringlist · get · create · update · deleteboard_idstringcolumnsarrayfiltersstringlimitnumbernamestringoffsetnumberproject_idstringworkspace_idstringcanvasUnified CRUD for canvases (visual boards). Replaces list_canvases, get_canvas, create_canvas, update_canvas, delete_canvas. For node placement use create_canvas_node (new entity+placement) or add_node_to_canvas (attach existing). Those remain separate tools — their side effect...7 params
Unified CRUD for canvases (visual boards). Replaces list_canvases, get_canvas, create_canvas, update_canvas, delete_canvas. For node placement use create_canvas_node (new entity+placement) or add_node_to_canvas (attach existing). Those remain separate tools — their side effect...
actionstringlist · get · create · update · deletecanvas_idstringiconstringlimitnumbernamestringoffsetnumberworkspace_idstringcanvas_nodeUpdate or delete a node on a canvas. Creators (create_canvas_node, add_node_to_canvas) are separate tools. Actions: - update: requires canvas_id, node_id; optional x, y, shape, color, node_size, properties - delete: requires node_id; optional canvas_id, delete_entity (default...11 params
Update or delete a node on a canvas. Creators (create_canvas_node, add_node_to_canvas) are separate tools. Actions: - update: requires canvas_id, node_id; optional x, y, shape, color, node_size, properties - delete: requires node_id; optional canvas_id, delete_entity (default...
actionstringupdate · deletecanvas_idstringcolorstringdelete_entitybooleannode_idstringnode_sizestringpropertiesobjectshapestringworkspace_idstringxnumberynumbercanvas_edgeUpdate or delete an edge on a canvas (styling layer). To CREATE an edge between canvas nodes, use graph_edge(action=create). Actions: - update: requires edge_id; optional type, style, label, shape - delete: requires edge_id7 params
Update or delete an edge on a canvas (styling layer). To CREATE an edge between canvas nodes, use graph_edge(action=create). Actions: - update: requires edge_id; optional type, style, label, shape - delete: requires edge_id
actionstringupdate · deleteedge_idstringlabelstringshapestringstylestringtypestringworkspace_idstringpresentationUnified create/update for Reveal.js presentations. Read via read_presentation. Actions: - create: requires title, markdown, workspace_id; optional theme, transition, parent_id - update: requires presentation_id, workspace_id; optional markdown, theme, transition, title Markdow...8 params
Unified create/update for Reveal.js presentations. Read via read_presentation. Actions: - create: requires title, markdown, workspace_id; optional theme, transition, parent_id - update: requires presentation_id, workspace_id; optional markdown, theme, transition, title Markdow...
actionstringcreate · updatemarkdownstringparent_idstringpresentation_idstringthemestringblack · white · moon · league · beige · skytitlestringtransitionstringnone · fade · slide · convex · concave · zoomworkspace_idstringreminderUnified create/update/delete for reminders. Listing remains via list_reminders. Actions: - create: requires text, workspace_id; optional due_at (ISO 8601) - update: requires reminder_id, workspace_id; optional text, due_at, status - delete: requires reminder_id, workspace_id6 params
Unified create/update/delete for reminders. Listing remains via list_reminders. Actions: - create: requires text, workspace_id; optional due_at (ISO 8601) - update: requires reminder_id, workspace_id; optional text, due_at, status - delete: requires reminder_id, workspace_id
actionstringcreate · update · deletedue_atstringreminder_idstringstatusstringactive · done · dismissedtextstringworkspace_idstringtree_nodeUpdate or delete an item in the workspace tree (page, folder, project, etc.). The tree is the workspace hierarchy projection of DashDoc nodes. For CREATE use the dedicated hot-path tools: create_page, create_folder, create_project, create_spreadsheet, create_canvas, create_pre...5 params
Update or delete an item in the workspace tree (page, folder, project, etc.). The tree is the workspace hierarchy projection of DashDoc nodes. For CREATE use the dedicated hot-path tools: create_page, create_folder, create_project, create_spreadsheet, create_canvas, create_pre...
actionstringupdate · deleteiconstringnode_idstringtitlestringworkspace_idstringmanage_rows_columnsInsert or delete rows/columns in a spreadsheet, shifting existing cells. Actions: - insert: add N rows/columns at position - delete: remove N rows/columns at position Position format depends on axis: - axis=row: `at` is a 1-based row number (string or number) - axis=column: `a...7 params
Insert or delete rows/columns in a spreadsheet, shifting existing cells. Actions: - insert: add N rows/columns at position - delete: remove N rows/columns at position Position format depends on axis: - axis=row: `at` is a 1-based row number (string or number) - axis=column: `a...
actionstringinsert · deleteatstringaxisstringrow · columncountnumberpage_idstringsheet_idstringworkspace_idstringSponsors
Readme
Contexta
Contexta MCP
Persistent memory & knowledge graph for your AI assistant.
Keyword + vector + graph search in a single lookup.
What is Contexta
Contexta is a memory MCP server that remembers like a human does — by meaning, by words, and by relationships.
Details
- Repository
- github.com/teleengco/contexta-mcp
- Website
- contexta.cc
- Categories
- AI & LLM Tools, Documents & Knowledge, Search & Web Crawling
- Transport
- HTTP
- Registry
- MCP registry, active