Always-on autonomous daemon for your codebase. Watches while you sleep. Exposes memory and observation tools to any MCP-compatible coding agent.
Server exposes 7 tools with basic schemas and descriptions, but critical gaps undermine production readiness. All tools have descriptions (10-50 chars, mostly adequate), and input schemas are present with type definitions. However, parameter descriptions are sparse or missing entirely (e.g., 'query' in check_emails has no description). Output schemas are completely undocumented, LLMs cannot infer what these tools return. Error handling is absent: no guidance on retryability, user-fixable vs fatal errors, or recovery paths. Security concerns: check_emails and get_todays_calendar delegate to external MCPs via HTTP with token injection, but no validation, timeout handling, or error classification. Naming is verb-first and clear (get_*, log_*, set_*), but composition issues exist: set_task writes to a local file rather than integrating with a task queue, and check_emails/get_todays_calendar are thin wrappers around external services with no fallback. No pagination, no batch operations, no idempotency guarantees.
Check Gmail for unread/project emails
Get the project memory index — what the daemon knows about this project
Read a specific memory topic file
Get recent daemon observations from today's log
Get today's calendar events
Log an observation to today's daily log
Give the daemon a task to pursue autonomously
Output schemas completely undocumented. LLMs cannot infer return types, field names, or structure. get_memory_index, get_memory_topic, get_recent_logs, check_emails, get_todays_calendar all return unspecified formats.
Parameter descriptions missing or incomplete. 'query' in check_emails has no description. 'limit' in get_recent_logs lacks range constraints (min/max). LLMs cannot infer valid input ranges or formats.
No error handling or recovery guidance. External service calls (check_emails, get_todays_calendar) to gmailmcp.googleapis.com and calendar MCP lack timeout handling, retry logic, or actionable error messages. Token injection via GOOGLE_MCP_TOKEN env var is unvalidated.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
set_task writes to local filesystem (.kairos/tasks/current.md) instead of integrating with a persistent task queue. Non-idempotent: repeated calls overwrite the same file. No confirmation step for destructive operations.
Security: GOOGLE_MCP_TOKEN exposed as environment variable and passed in HTTP Authorization header without validation. No rate limiting, no audit logging of who called what tool. Credentials in external service calls risk leakage if responses are logged.