deerdawn
Server Details
AI session memory: the brief your AI reads before every session so no session starts cold.
- Status
- Unhealthy
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- HissingSpider/deerdawn-mcp
- GitHub Stars
- 0
TDQS
Scored across 18 tools
Each tool targets a distinct purpose: project CRUD, workspace knowledge, session management, task board, and searching. No two tools have overlapping functionality; even 'get_context' and 'search_context' are clearly differentiated by scope.
All tool names follow a consistent verb_noun pattern (e.g., create_project, archive_project, manage_todos, record_hot_paths) with underscores, making the set predictable and easy to navigate.
18 tools is well-scoped for a project management and workspace knowledge system. Each tool covers a necessary operation without unnecessary proliferation, striking a balance between simplicity and capability.
The tool surface covers all major workflows: project lifecycle (create, archive, rename, list, context), workspace knowledge (record, search, upsert), task management, and session handling. Minor gaps include no explicit permanent project deletion or entity deletion, but archive and upsert cover those needs.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Added
build_subagent_brief
9 tool updates
- Added
cleanup_context - Changed
get_context1 field changed- changed
Input schema / properties / sections / items / enumPrevious value: -[ - "task", - "status", - "decisions", - "goals", - "questions", - "stack", - "board", - "todos", - "all" -]New value: +[ + "task", + "status", + "decisions", + "stack", + "files", + "hot_paths", + "entrypoints", + "surfaces", + "debugging_notes", + "landmines", + "shipped", + "goals", + "questions", + "constraints", + "description", + "blocking", + "progress", + "board", + "todos", + "all" +]
- Added
get_next_best_context - Added
get_skill - Added
list_skills - Changed
manage_todos2 fields changed- changed
Output schema / properties / affected / descriptionPrevious value: -"Card titles/ids affected by add/move/complete/remove."New value: +"Requested cards that actually matched and were changed by add/move/complete/remove." - added
Output schema / properties / unmatchedAdded value: +{ + "description": "Requested cards (move/complete/remove) that matched no existing card — a no-op, distinct from a real change.", + "items": { + "type": "string" + }, + "type": "array" +}
- Added
mark_resolved - Changed
update_context1 field changed- added
Input schema / properties / commandsAdded value: +{ + "description": "Key runnable commands to store. Stored by label — overwrites existing entry with the same label.", + "items": { + "properties": { + "label": { + "description": "Short name, e.g. \"deploy\", \"test\", \"start\"", + "type": "string" + }, + "note": { + "description": "Optional clarification, e.g. \"run from monorepo root\"", + "type": "string" + }, + "run": { + "description": "The full command string to run", + "type": "string" + } + }, + "required": [ + "label", + "run" + ], + "type": "object" + }, + "type": "array" +}
- Changed
upsert_workspace_entities4 fields changed- added
Input schema / properties / entities / items / propertiesAdded value: +{ + "canonical_key": { + "description": "Optional. Override the auto-derived dedup key for this entity.", + "type": "string" + }, + "entity_type": { + "description": "Required. The kind of entity being recorded.", + "enum": [ + "project", + "repo", + "file", + "component", + "feature", + "decision", + "task", + "person", + "company", + "service", + "concept", + "knowledge", + "question", + "tool", + "environment", + "database", + "capability", + "workflow", + "preference" + ], + "type": "string" + }, + "metadata": { + "description": "Optional metadata. Unrecognized keys are preserved.", + "properties": { + "curation_state": { + "enum": [ + "inferred", + "promoted", + "curated", + "stale" + ], + "type": "string" + }, + "importance": { + "enum": [ + "low", + "normal", + "high", + "critical" + ], + "type": "string" + }, + "pinned": { + "type": "boolean" + }, + "source_kind": { + "enum": [ + "manual", + "imported", + "inferred" + ], + "type": "string" + }, + "status": { + "enum": [ + "active", + "shipped", + "experimental", + "planned", + "deprecated", + "stale", + "resolved", + "archived" + ], + "type": "string" + }, + "surface": { + "description": "Optional surface tag (e.g. mcp_tool, api, dashboard) — filterable via get_workspace_entities({ surface }).", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "Alias for `title`, accepted for backward compatibility.", + "type": "string" + }, + "project_id": { + "description": "Optional. Scopes the entity to a specific project.", + "type": "string" + }, + "scope": { + "description": "Optional. Defaults to \"project\" when project_id is set, else \"workspace\".", + "enum": [ + "workspace", + "project" + ], + "type": "string" + }, + "summary": { + "description": "Optional description of the entity. Must not be generic/low-value filler.", + "type": "string" + }, + "title": { + "description": "Required. Human-readable title, at least 3 characters. (Alias: `name`.)", + "type": "string" + } +} - added
Input schema / properties / entities / items / requiredAdded value: +[ + "title", + "entity_type" +] - added
Input schema / properties / relations / items / propertiesAdded value: +{ + "from_canonical_key": { + "description": "canonical_key of the source entity.", + "type": "string" + }, + "relation_type": { + "description": "Relationship label, e.g. depends_on, implements, related_to.", + "type": "string" + }, + "summary": { + "description": "Optional description of the relationship.", + "type": "string" + }, + "to_canonical_key": { + "description": "canonical_key of the target entity.", + "type": "string" + } +} - added
Input schema / properties / relations / items / requiredAdded value: +[ + "from_canonical_key", + "to_canonical_key", + "relation_type" +]
1 tool update
- Added
rename_project
5 tool updates
- Added
archive_project - Changed
create_project2 fields changed- added
Input schema / properties / parent_project_idAdded value: +{ + "description": "Optional. Create this as a subproject under the given top-level project. The hierarchy is one level deep.", + "type": "string" +} - added
Output schema / properties / parent_project_idAdded value: +{ + "type": "string" +}
- Changed
list_projects1 field changed- added
Output schema / properties / projects / items / properties / subprojectsAdded value: +{ + "items": { + "additionalProperties": true, + "properties": { + "current_task": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + } + }, + "required": [ + "project_id", + "project_name" + ], + "type": "object" + }, + "type": "array" +}
- Added
set_project_parent - Added
switch_subproject
14 tool updates
- Changed
create_project1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + } + }, + "required": [ + "project_id", + "project_name" + ], + "type": "object" +}
- Changed
find_known_paths2 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of paths to return (default 10)." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "paths": { + "description": "Matching hot paths, surfaces, and debugging notes.", + "items": { + "additionalProperties": true, + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "paths" + ], + "type": "object" +}
- Changed
get_context4 fields changed- changed
Input schema / properties / sections / descriptionPrevious value: -"Which sections to include. Omit for task+status."New value: +"Which sections to include. Omit for task+status. Use board (or todos) for the task board." - changed
Input schema / properties / sections / items / enumPrevious value: -[ - "task", - "status", - "decisions", - "goals", - "questions", - "stack", - "all" -]New value: +[ + "task", + "status", + "decisions", + "goals", + "questions", + "stack", + "board", + "todos", + "all" +] - added
Input schema / properties / verbosity / descriptionAdded value: +"How much detail to return per section." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "project_id": { + "type": "string" + }, + "text": { + "description": "The formatted project context.", + "type": "string" + } + }, + "required": [ + "text" + ], + "type": "object" +}
- Changed
get_project_map2 fields changed- added
Input schema / properties / verbosity / descriptionAdded value: +"How much of the project map to return." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "project_id": { + "type": "string" + }, + "text": { + "description": "The formatted project map.", + "type": "string" + } + }, + "required": [ + "text" + ], + "type": "object" +}
- Changed
get_workspace_entities3 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of entities to return (default 10)." - added
Input schema / properties / scope / descriptionAdded value: +"Limit to workspace-wide or project-scoped entities." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "entities": { + "items": { + "additionalProperties": true, + "properties": { + "canonical_key": { + "type": "string" + }, + "entity_type": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "entities" + ], + "type": "object" +}
- Changed
get_workspace_overview2 fields changed- added
Input schema / properties / verbosity / descriptionAdded value: +"How much detail to include in the overview." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "text": { + "description": "The formatted brief, ready to read.", + "type": "string" + } + }, + "required": [ + "text" + ], + "type": "object" +}
- Changed
list_projects1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "projects": { + "items": { + "additionalProperties": true, + "properties": { + "current_task": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + } + }, + "required": [ + "project_id", + "project_name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "projects" + ], + "type": "object" +}
- Added
manage_todos - Changed
record_debug_finding1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + }, + "recorded": { + "type": "boolean" + } + }, + "required": [ + "recorded" + ], + "type": "object" +}
- Changed
record_hot_paths5 fields changed- added
Input schema / properties / items / descriptionAdded value: +"Hot paths to append — one entry per file or folder worth remembering." - added
Input schema / properties / items / items / properties / label / descriptionAdded value: +"Short human-readable name for the path, e.g. \"signup route\"." - added
Input schema / properties / items / items / properties / path / descriptionAdded value: +"Repo-relative file or folder path." - added
Input schema / properties / items / items / properties / purpose / descriptionAdded value: +"Optional note on what lives there or why it matters." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + }, + "recorded": { + "description": "Number of hot paths recorded.", + "type": "number" + } + }, + "required": [ + "recorded" + ], + "type": "object" +}
- Changed
search_context2 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of results to return (1-10, default 5)." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "results": { + "items": { + "additionalProperties": true, + "properties": { + "field": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + }, + "score": { + "type": "number" + }, + "snippet": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "results" + ], + "type": "object" +}
- Changed
start_session1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "text": { + "description": "The formatted brief, ready to read.", + "type": "string" + } + }, + "required": [ + "text" + ], + "type": "object" +}
- Changed
update_context2 fields changed- added
Input schema / properties / tool / descriptionAdded value: +"Which tool surface the update originated from." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "last_updated": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "project_name": { + "type": "string" + } + }, + "required": [ + "project_id" + ], + "type": "object" +}
- Changed
upsert_workspace_entities1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "entities_upserted": { + "type": "number" + }, + "relations_recorded": { + "type": "number" + } + }, + "required": [ + "entities_upserted" + ], + "type": "object" +}
13 tool updates
- First observed
create_project - First observed
find_known_paths - First observed
get_context - First observed
get_project_map - First observed
get_workspace_entities - First observed
get_workspace_overview - First observed
list_projects - First observed
record_debug_finding - First observed
record_hot_paths - First observed
search_context - First observed
start_session - First observed
update_context - First observed
upsert_workspace_entities
Related MCP Connectors
- OrbismoOAuthcom.orbismo
A persistent world-building memory your AI can read and write in any chat.
Your portable context layer — load it into any AI.
Stop re-explaining yourself to AI. Save knowledge once, use it in every conversation.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceNever start from zero. Persistent session intelligence for AI coding assistants.45 npm1MIT
- AlicenseAqualityBmaintenanceA session-scoped memory layer for LLMs that enables AI assistants to explicitly store and retrieve notes, decisions, and context within a single conversation, ensuring focus without cross-session data contamination.65 npm5MIT
- AlicenseNot gradedqualityDmaintenanceA persistent memory layer for AI tools that decouples personal data from AI's unstable memory, enabling you to mention information once and have it remembered forever across all conversations.3MIT
- AlicenseNot gradedqualityCmaintenanceEnables persistent, intelligent memory across sessions using a weighted, interconnected graph that evolves through conversation.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.