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 | Productivity Agent
A personal productivity workspace built with Python, Streamlit, Groq, SQLite, and MCP. It combines task management, daily planning, persistent memories, a multi-agent supervisor, and optional email reminders in one project.
Features
Streamlit productivity dashboard
Create, list, filter, and complete tasks
Task priorities, due dates, projects, and statuses
Persistent SQLite storage in
productivity.dbDaily plans and productivity reports
Save and search personal memories
Groq-powered productivity assistant
Multi-agent supervisor for task, memory, and planning requests
MCP server with HTTP tools for external clients
Optional automatic email reminders
Related MCP server: autoMate
Requirements
Python 3.10 or newer
A Groq API key for the AI features
Gmail SMTP credentials or another SMTP provider for email reminders
Setup
1. Create a virtual environment
PowerShell:
python -m venv .venv
.\.venv\Scripts\Activate.ps1If PowerShell blocks script execution for the current session:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
.\.venv\Scripts\Activate.ps12. Install dependencies
python -m pip install -r requirements.txt3. Configure environment variables
Copy .env.example to .env and fill in the values:
Copy-Item .env.example .envRequired for the Groq-backed agent:
GROQ_API_KEY=your_groq_api_key
GROQ_MODEL=openai/gpt-oss-120bOptional MCP configuration:
MCP_HOST=127.0.0.1
MCP_PORT=8000
MCP_API_KEY=local_or_remote_api_keyFor email reminders:
EMAIL_SENDER=your_email@gmail.com
EMAIL_RECIPIENT=recipient@example.com
EMAIL_PASSWORD=your_smtp_or_app_password
SMTP_SERVER=smtp.gmail.com
SMTP_PORT=587Do not commit .env or API credentials. They are excluded by .gitignore.
Run the Streamlit app
streamlit run streamlit_app.pyThe app provides these sections:
Overview - task metrics, active work, daily snapshot, and completion progress
Tasks - create and filter tasks, then mark tasks complete
Plan - view the current daily plan and productivity report
Memory - save and search persistent context
Assistant - send natural-language requests to the productivity supervisor
Run the MCP server
Start the Streamable HTTP MCP server with:
python -m orchestrator.mcp_serverBy default, it runs on http://127.0.0.1:8000/mcp.
The server exposes tools for:
productivity_assistantcreate_tasklist_tasksupdate_taskcomplete_taskdelete_tasksave_memorysearch_memorydaily_planproductivity_report
When binding the MCP server to a non-local host, set MCP_API_KEY. Remote requests must use a bearer token:
Authorization: Bearer <MCP_API_KEY>Run reminders
The reminder worker checks upcoming tasks and sends configured email notifications:
python reminder_worker.pyThe reminder schedule is configured in the worker and supports reminders at 24 hours, 1 hour, and 15 minutes before a task is due. Email reminders require valid SMTP settings in .env.
Run tests
Use the project virtual environment so pytest is available:
.\.venv\Scripts\python -m pytest -qTo run a specific test file:
.\.venv\Scripts\python -m pytest -q test_multi_agent.pyTo check Python syntax without starting the app:
.\.venv\Scripts\python -m compileall streamlit_app.py orchestratorProject structure
Productivity_Agent/
|-- streamlit_app.py # Streamlit user interface
|-- requirements.txt # Python dependencies
|-- .env.example # Environment variable template
|-- productivity.db # Local SQLite database, generated locally
|-- reminder_service.py # Reminder service implementation
|-- reminder_worker.py # Continuous reminder worker
|-- orchestrator/
| |-- agent.py # Core task, memory, plan, and report logic
| |-- database.py # SQLite persistence layer
| |-- orchestrator.py # Multi-agent supervisor
| |-- mcp_server.py # MCP HTTP server and tools
| |-- memory_agent.py # Memory agent adapter
| |-- planning_agent.py # Planning agent adapter
| |-- task_agent.py # Task agent adapter
|-- test_*.py # Project testsData and security notes
Tasks and memories are stored locally in SQLite.
.envcontains secrets and must remain private.For Gmail, use an app password where required instead of your primary account password.
The MCP API key is required when the server is exposed beyond localhost.
Back up
productivity.dbif the local task and memory history is important.
Troubleshooting
pytest is not recognized
Run pytest through the virtual environment:
.\.venv\Scripts\python -m pytest -qThe app starts but the assistant is unavailable
Check that .env exists and contains a valid GROQ_API_KEY, then restart Streamlit.
Streamlit reports missing ScriptRunContext
This warning appears when importing a Streamlit module directly with python -c. Start the application with streamlit run streamlit_app.py for normal operation.
Compilation works but tests fail during collection
A collection error means pytest could not finish importing the tests. Read the first reported exception and fix that dependency or constructor mismatch before evaluating the remaining tests.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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,945MIT
- 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

Granoflow MCP Serverofficial
AlicenseBqualityBmaintenanceExposes Granoflow's local REST API and CLI as tools for AI agents, IDEs, and automation, enabling task and project management via natural language.19270MIT
Related MCP Connectors
Manage projects, tasks, time tracking, and team collaboration through natural language.
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
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