RAG_0 MCP Task Planner
Allows creating GitHub issues to track engineering tasks, linked from Notion and Google Calendar.
Allows creating Google Calendar events for scheduled work time, with links to the GitHub issue and Notion page.
Allows creating Notion database pages for task management, including status, priority, due date, and links to GitHub issues and Google Calendar events.
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., "@RAG_0 MCP Task Plannercreate a task to fix the login bug by Friday"
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.
RAG_0 MCP Task Planner
RAG_0 is a local Python MCP server built with FastMCP. It turns one project task into connected work items across GitHub, Notion, and Google Calendar.
The main tool, create_project_task, validates a task, creates a GitHub issue, creates a Notion task page with the GitHub link, creates a Google Calendar event with both links, then updates the Notion page with the Calendar event URL.
Connected Tools
GitHub Issues: tracks the engineering task.
Notion Database: stores the task, status, priority, due date, and links.
Google Calendar: schedules focused work time for the task.
Related MCP server: task-manager-mcp
Setup
Create and activate a virtual environment:
python -m venv .venv
.\.venv\Scripts\Activate.ps1Install dependencies:
python -m pip install -r requirements.txtCreate your local environment file:
Copy-Item .env.example .envEdit .env with your real credentials. Keep DRY_RUN=true until you are ready to call real APIs.
Required Environment Variables
DRY_RUN:trueorfalseMCP_TRANSPORT:stdioorhttp; defaults tostdioHOST: HTTP host, defaults to0.0.0.0PORT: HTTP port, defaults to8000LOG_LEVEL: optional Python logging level; defaults toINFOGITHUB_TOKENGITHUB_OWNERGITHUB_REPONOTION_TOKENNOTION_DATABASE_IDNOTION_DATA_SOURCE_ID: optional; use when targeting a specific Notion data sourceGOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETGOOGLE_REFRESH_TOKENGOOGLE_CALENDAR_ID
Run Locally
The default transport is stdio, which is best for local MCP clients and MCP Inspector:
python server.pyTo run the HTTP transport locally:
$env:MCP_TRANSPORT="http"
$env:DRY_RUN="true"
python server.pyThe HTTP transport uses the MCP SDK streamable HTTP transport and listens on HOST and PORT. By default, that is 0.0.0.0:8000.
The server exposes these MCP tools:
create_project_taskhealth_check
Test DRY_RUN
Run all tests:
python -m pytest tests -qRun only the local dry-run workflow test:
python -m pytest tests\test_dry_run_workflow.py -qRun the assignment evals:
python -m pytest evals -qWhen DRY_RUN=true, no real GitHub, Notion, or Google Calendar API calls are made. The services return fake IDs and URLs.
Deploy on Render or Railway
This server can run in deployment using HTTP transport. Keep DRY_RUN=true for first deployment checks, then switch to DRY_RUN=false only after all production credentials are configured.
Render
Create a new Web Service from your repository.
Use Python as the runtime.
Set the build command:
pip install -r requirements.txtSet the start command:
python server.pyAdd environment variables in the Render dashboard:
MCP_TRANSPORT=http
DRY_RUN=true
HOST=0.0.0.0
PORT=8000
GITHUB_TOKEN=your-production-github-token
GITHUB_OWNER=your-github-owner
GITHUB_REPO=your-repo-name
NOTION_TOKEN=your-production-notion-token
NOTION_DATABASE_ID=your-notion-database-id
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
GOOGLE_REFRESH_TOKEN=your-google-refresh-token
GOOGLE_CALENDAR_ID=primaryDo not put real secrets in README.md, .env.example, or source code. Add production values only in the Render environment variable dashboard.
Railway
Create a new Railway project from your repository.
Set the start command:
python server.pyAdd the same environment variables in the Railway Variables dashboard:
MCP_TRANSPORT=http
DRY_RUN=true
HOST=0.0.0.0
PORT=8000Then add the GitHub, Notion, and Google Calendar production variables in the dashboard. Railway may provide its own PORT; if it does, use Railway's provided value.
For deployed HTTP transport, MCP clients should connect to the hosted service's /mcp endpoint unless your hosting or MCP client requires a different URL format.
Connect to MCP Client
Use this server as a local stdio MCP server. Run your MCP client from the project root so server.py and .env resolve correctly.
Example MCP client configuration:
{
"mcpServers": {
"task-planner": {
"command": "python",
"args": ["server.py"],
"env": {
"DRY_RUN": "true"
}
}
}
}In real usage, secrets should be loaded from .env, not written directly into the MCP client config. The env block above is only useful for simple local overrides like DRY_RUN=true.
On Windows, activate the virtual environment before running the MCP client or Inspector from the project root:
.\.venv\Scripts\Activate.ps1You can test the server with MCP Inspector:
npx @modelcontextprotocol/inspector python server.pyThen open the Inspector URL shown in the terminal, select the Tools tab, choose create_project_task, and run it with a dry-run payload such as:
{
"title": "Finish MCP Report",
"description": "Write documentation and prepare demo",
"due_date": "2026-07-10",
"duration_minutes": 60,
"priority": "High",
"assignee": null
}Example Tool Input
{
"title": "Finish MCP Report",
"description": "Write documentation and prepare demo",
"due_date": "2026-07-10",
"duration_minutes": 60,
"priority": "High",
"assignee": null
}Security Notes
Never commit
.env.Never commit OAuth files such as
token.jsonorcredentials.json.Use
.env.examplefor placeholders only.Start with
DRY_RUN=trueto verify the workflow safely.Set
DRY_RUN=falseonly after GitHub, Notion, and Google Calendar credentials are configured.
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.
Latest Blog Posts
- 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/yazeedbesher12/MCP_Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server