FocusRoom MCP Server
FocusRoom | 생산성 에이전트
Python, Streamlit, Groq, SQLite, MCP로 구축된 개인 생산성 워크스페이스입니다. 작업 관리, 일일 계획, 영구 메모리, 멀티 에이전트 슈퍼바이저, 선택적 이메일 알림을 하나의 프로젝트에 결합합니다.
기능
Streamlit 생산성 대시보드
작업 생성, 목록 조회, 필터링, 완료 처리
작업 우선순위, 마감일, 프로젝트, 상태
productivity.db의 영구 SQLite 저장소일일 계획 및 생산성 보고서
개인 메모리 저장 및 검색
Groq 기반 생산성 어시스턴트
작업, 메모리, 계획 요청을 처리하는 멀티 에이전트 슈퍼바이저
외부 클라이언트를 위한 HTTP 도구가 포함된 MCP 서버
선택적 자동 이메일 알림
Related MCP server: autoMate
요구 사항
Python 3.10 이상
AI 기능을 위한 Groq API 키
이메일 알림을 위한 Gmail SMTP 자격 증명 또는 다른 SMTP 제공자
설정
1. 가상 환경 만들기
PowerShell:
python -m venv .venv
.\.venv\Scripts\Activate.ps1PowerShell이 현재 세션에서 스크립트 실행을 차단하는 경우:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
.\.venv\Scripts\Activate.ps12. 종속성 설치
python -m pip install -r requirements.txt3. 환경 변수 구성
.env.example을 .env로 복사하고 값을 입력하세요:
Copy-Item .env.example .envGroq 기반 에이전트에 필요한 항목:
GROQ_API_KEY=your_groq_api_key
GROQ_MODEL=openai/gpt-oss-120b선택적 MCP 구성:
MCP_HOST=127.0.0.1
MCP_PORT=8000
MCP_API_KEY=local_or_remote_api_key이메일 알림의 경우:
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=587.env나 API 자격 증명을 커밋하지 마세요. .gitignore에 의해 제외됩니다.
Streamlit 앱 실행
streamlit run streamlit_app.py앱은 다음 섹션을 제공합니다:
Overview - 작업 지표, 진행 중인 작업, 일일 요약, 완료 진행률
Tasks - 작업을 생성하고 필터링한 다음 완료로 표시
Plan - 현재 일일 계획 및 생산성 보고서 보기
Memory - 영구 컨텍스트 저장 및 검색
Assistant - 생산성 슈퍼바이저에게 자연어 요청 보내기
MCP 서버 실행
다음 명령으로 Streamable HTTP MCP 서버를 시작하세요:
python -m orchestrator.mcp_server기본적으로 http://127.0.0.1:8000/mcp에서 실행됩니다.
서버는 다음 도구를 제공합니다:
productivity_assistantcreate_tasklist_tasksupdate_taskcomplete_taskdelete_tasksave_memorysearch_memorydaily_planproductivity_report
MCP 서버를 로컬 호스트가 아닌 호스트에 바인딩할 때는 MCP_API_KEY를 설정하세요. 원격 요청은 bearer 토큰을 사용해야 합니다:
Authorization: Bearer <MCP_API_KEY>알림 실행
알림 워커는 다가오는 작업을 확인하고 설정된 이메일 알림을 보냅니다:
python reminder_worker.py알림 일정은 워커에서 구성되며 작업 마감 24시간 전, 1시간 전, 15분 전 알림을 지원합니다. 이메일 알림을 보내려면 .env에 유효한 SMTP 설정이 필요합니다.
테스트 실행
pytest를 사용할 수 있도록 프로젝트 가상 환경을 사용하세요:
.\.venv\Scripts\python -m pytest -q특정 테스트 파일을 실행하려면:
.\.venv\Scripts\python -m pytest -q test_multi_agent.py앱을 시작하지 않고 Python 구문을 확인하려면:
.\.venv\Scripts\python -m compileall streamlit_app.py orchestrator프로젝트 구조
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 tests데이터 및 보안 참고 사항
작업과 메모리는 SQLite에 로컬로 저장됩니다.
.env에는 비밀 정보가 포함되어 있으므로 반드시 비공개로 유지해야 합니다.Gmail의 경우 기본 계정 비밀번호 대신 필요한 곳에 앱 비밀번호를 사용하세요.
서버가 localhost 외부에 노출될 때는 MCP API 키가 필요합니다.
로컬 작업 및 메모리 기록이 중요하다면
productivity.db를 백업하세요.
문제 해결
pytest가 인식되지 않는 경우
가상 환경을 통해 pytest를 실행하세요:
.\.venv\Scripts\python -m pytest -q앱이 시작되지만 어시스턴트를 사용할 수 없는 경우
.env 파일이 존재하고 유효한 GROQ_API_KEY를 포함하는지 확인한 다음 Streamlit을 다시 시작하세요.
Streamlit에 missing ScriptRunContext 오류가 표시되는 경우
이 경고는 python -c로 Streamlit 모듈을 직접 가져올 때 표시됩니다. 정상적인 실행을 위해서는 streamlit run streamlit_app.py로 애플리케이션을 시작하세요.
컴파일은 되지만 테스트 수집 중 실패하는 경우
수집 오류는 pytest가 테스트 가져오기를 완료하지 못했음을 의미합니다. 먼저 보고된 첫 번째 예외를 읽고 해당 종속성 또는 생성자 불일치를 해결한 다음 나머지 테스트를 평가하세요.
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