FocusRoom MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FocusRoom MCP ServerWhat's on my task list for today?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FocusRoom
Make room for the work that matters.
FocusRoom is an AI-powered Productivity Operating System that turns natural-language requests into actions across tasks, persistent memory, daily planning, and a multi-agent orchestration layer.
Instead of forcing users to manage several productivity features separately, FocusRoom gives them one assistant that can understand intent, call the right specialist agents, use MCP tools, and return a focused result.
✨ What makes FocusRoom different?
FocusRoom is built around one idea:
The assistant should do the coordination, not the user.
A request such as:
"Check my pending tasks, consider my work preferences, and create my daily plan."
can flow through the system as:
User Request
│
▼
┌───────────────┐
│ Supervisor │
│ Intent / Route│
└───────┬───────┘
│
┌────┴──────────────┐
▼ ▼
Task Agent Memory Agent
│ │
▼ ▼
list_tasks search_memory
│ │
└─────────┬─────────┘
▼
Planning Agent
│
▼
daily_plan
│
▼
Focused ResultThe project combines multi-agent orchestration + MCP + persistent memory + task management + AI planning in one productivity workflow.
Related MCP server: autoMate
🚀 Core capabilities
🧠 Natural-language assistant
Users can interact with FocusRoom conversationally rather than learning individual commands.
Examples:
Show my pending tasksCreate a task called Prepare Q3 presentation with high priority.Plan my day and prioritize my MCP learning.Check my pending tasks and create my daily plan.The ProductivitySupervisor interprets the request and routes work to
the appropriate agent.
🤖 Multi-agent architecture
FocusRoom separates responsibilities across specialized agents:
Agent Responsibility
Supervisor Understands intent and coordinates execution
Task Agent Creates, lists, updates, completes, and deletes tasks
Memory Agent Stores and retrieves persistent user context
Planning Agent Converts task + memory context into a daily plan
This keeps individual components focused while allowing them to collaborate.
🧩 MCP integration
FocusRoom exposes productivity capabilities through an MCP server.
Current MCP tools include:
productivity_assistant
create_task
list_tasks
update_task
complete_task
delete_task
save_memory
search_memory
daily_plan
productivity_reportThe MCP layer provides a standardized tool interface between the assistant and productivity operations.
The project also includes MCP transport telemetry for measuring:
Request count
Request bytes
Response bytes
HTTP status
Transport activity
Execution IDs
📅 AI daily planning
The planning workflow combines:
Tasks
+
Relevant memories
+
User request
↓
Planning Agent
↓
Morning / Afternoon / Evening
+
Priority reasoningThe planner is designed to avoid inventing tasks and instead schedule work from the available task context.
⚡ Token-efficient AI pipeline
A major engineering focus of FocusRoom is reducing unnecessary LLM usage.
The planning pipeline uses several optimizations:
1. Deterministic routing
Common requests can bypass the supervisor LLM.
For example:
"plan my day"
"daily plan"
"create my daily plan"can be recognized directly and routed to:
TASK_AGENT → MEMORY_AGENT → PLANNING_AGENTThe LLM remains available as a fallback for requests that cannot be confidently classified.
2. Task filtering
Only relevant active tasks are passed into the planning prompt.
3. Compact task representation
Instead of sending verbose task JSON, the planner receives compact representations such as:
!! Ship landing page (08-25)
! Write tests (08-25)
- Update docs4. Memory limiting
Only a small number of relevant/recent memories are included rather than sending the entire memory store.
5. Compact context serialization
Planning context uses compact JSON instead of human-formatted indented JSON.
6. Completion limits
The planning model has a maximum completion-token budget so that a simple daily plan cannot produce unnecessarily long output.
Example optimization target
A representative planning prompt was reduced to approximately:
~124 prompt tokens
+ up to 400 completion tokens
≈ 524-token planning budgetThe exact token usage depends on the model, input data, and generated response.
📊 Built-in execution telemetry
FocusRoom records execution information so the system can be measured instead of treated as a black box.
Example telemetry:
AI USAGE
Operation Prompt Completion Total
------------------------------------------------------
supervisor_decision ... ... ...
planning_request ... ... ...
TOTAL ... ... ...
AVG / exec ... ... ...Execution traces expose the path taken by a request:
supervisor
↓
TASK_AGENT
↓
MCP:list_tasks
↓
MEMORY_AGENT
↓
MCP:search_memory
↓
PLANNING_AGENT
↓
MCP:daily_plan
↓
LLM:planning_request
↓
agent_resultThis makes it possible to investigate:
unnecessary LLM calls
excessive prompt size
expensive tool calls
response payload growth
agent routing problems
MCP transport overhead
🏗️ Architecture
┌──────────────────┐
│ Streamlit UI │
└────────┬─────────┘
│
▼
┌─────────────────────────┐
│ Productivity Assistant │
└────────────┬────────────┘
│
▼
┌─────────────────────────┐
│ Productivity Supervisor │
│ │
│ deterministic router │
│ + LLM fallback │
└───────┬─────┬─────┬─────┘
│ │ │
┌─────────┘ │ └─────────┐
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌──────────────┐
│ Task Agent │ │Memory Agent│ │Planning Agent│
└─────┬──────┘ └─────┬──────┘ └──────┬───────┘
│ │ │
▼ ▼ ▼
list/create search/save daily plan
│ │ │
└───────────────┼─────────────────┘
▼
┌──────────────┐
│ MCP Server │
│ + Transport │
│ + Telemetry │
└──────┬───────┘
│
▼
┌──────────────┐
│ Database │
└──────────────┘For detailed implementation decisions, see:
lld.mdarchitecture.md
🗂️ Project structure
FocusRoom/
│
├── orchestrator/
│ ├── agent.py
│ ├── database.py
│ ├── mcp_server.py
│ ├── mcp_transport.py
│ ├── memory_agent.py
│ ├── orchestrator.py
│ ├── planning_agent.py
│ ├── task_agent.py
│ └── telemetry.py
│
├── streamlit_app.py
├── README.md
├── lld.md
└── architecture.md🔄 Example request lifecycle
User
"Check my pending tasks and create my daily plan."Supervisor
Determines that the request needs:
TASK_AGENT:list
MEMORY_AGENT:search
PLANNING_AGENT:dailyTask Agent
Retrieves active tasks.
Memory Agent
Retrieves relevant persistent context when needed.
Planning Agent
Receives a compact context containing the information required to schedule the work.
Result
MORNING
- Prepare the Q3 project demo
AFTERNOON
- Continue project documentation
EVENING
- No tasks scheduled
PRIORITY REASONING
- The highest-priority deadline-sensitive work is scheduled first.🛠️ Technology stack
Layer Technology
UI Streamlit Language Python AI LLM-based agent orchestration Agent architecture Supervisor + specialized agents Tool protocol MCP MCP transport Streamable HTTP Persistence Database-backed task/memory storage Telemetry AI execution + MCP transport metrics
🔐 MCP security
The MCP server supports API-key authentication for non-local deployments.
The server validates:
Authorization: Bearer <MCP_API_KEY>Local development can run without authentication when bound to a local host.
▶️ Running the project
Create and activate the virtual environment:
python -m venv .venv
.venv\Scripts\Activate.ps1Install dependencies:
pip install -r requirements.txtConfigure environment variables as required by the project.
Start the Streamlit application:
streamlit run streamlit_app.pyThe MCP server can be started through the project's MCP server entry point.
🧪 Development philosophy
FocusRoom is intentionally designed around measurable agent execution.
Instead of simply asking:
"Does the assistant work?"
the project asks:
Which agents ran, which tools were called, how much data moved, and how many tokens did the request consume?
That makes optimization an engineering problem rather than guesswork.
📈 Optimization roadmap
Potential next steps include:
Further reduce supervisor LLM calls
Improve deterministic intent classification
Cache repeated task/memory context
Parallelize independent task and memory retrieval
Reduce MCP response payloads
Add structured planning output
Measure latency per agent
Add prompt-version tracking
Add token-cost dashboards
Add automated regression tests for routing and token budgets
🎯 Project goal
FocusRoom is not just a task manager with an AI chatbot.
It is an experiment in building a personal productivity operating system where:
Natural language
↓
Intent
↓
Agent orchestration
↓
Tools + memory
↓
Planning
↓
Actionable resultThe long-term goal is simple:
Less time managing the system. More time doing the work.
📄 Documentation
Document Purpose
README.md Project overview and quick start
lld.md Low-level design and implementation details
architecture.md System architecture and workflow diagrams
⭐ Why FocusRoom?
Because productivity software should understand what you are trying to accomplish, not just store a list of tasks.
FocusRoom turns productivity from a collection of tools into a coordinated system.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
ADHD-friendly tasks, notes & projects for LucidNest - 18 tools, scoped tokens, Streamable HTTP.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Manage tasks, Focus Zone, notes, projects, and task history from compatible AI assistants.
ADHD system of record for agents: tasks, goals, loops, calendar, focus stats.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI clients to manage todo tasks through Tools for adding, listing, completing, and searching, alongside Prompts for daily reviews and task breakdowns. Exposes task lists and statistics as Resources with local JSON file persistence.-
- AlicenseNot gradedqualityDmaintenanceA personal AI assistant server that provides MCP tools for notes, files, reminders, memory, shell, browser, and 30+ SaaS integrations, enabling AI clients to access and manage your data across sessions.3,953MIT
- AlicenseBqualityBmaintenanceExposes the Deferno task-manager backend to AI agents, enabling them to read, create, update, and manage tasks, habits, chores, events, and daily plans.81MIT
- AlicenseBqualityCmaintenanceEnables AI clients to create and manage tasks via a local REST API by converting natural language into HTTP requests through the Model Context Protocol.1MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RevHeadGuy/FocusRoom'
If you have feedback or need assistance with the MCP directory API, please join our Discord server