cal-auto-python MCP
This community MCP server integrates GitHub Projects backlogs with Google Calendar and Google Tasks. It allows AI assistants to list backlog items, plan work into free time slots, and create corresponding calendar events and to-do items. It operates via stdio and supports CLI usage for authorization and configuration.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- List GitHub Projects backlog items
- Plan a week of work into free calendar time
- Create calendar events and to-dos from a plan
Source and maintenance
- Last repository push
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
cal-auto-python 0.1.0
{
"version": "0.1.0",
"transport": "stdio",
"identifier": "cal-auto-python",
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"environmentVariables": [
{
"name": "GITHUB_TOKEN",
"isRequired": true,
"description": "GitHub personal access token used to query the GitHub Project."
},
{
"name": "GITHUB_PROJECT_ID",
"isRequired": true,
"description": "GitHub Projects V2 node ID of the board to read."
},
{
"name": "CAL_AUTO_TIMEZONE",
"isRequired": true,
"description": "IANA timezone name used to schedule events, e.g. Europe/Lisbon."
},
{
"name": "CAL_AUTO_CONFIG_DIR",
"description": "Directory holding Google OAuth credentials and token. Defaults to the platform config directory."
},
{
"name": "CAL_AUTO_WORKING_DAY_START",
"description": "Start of the working day as HH:MM. Defaults to 09:00."
},
{
"name": "CAL_AUTO_WORKING_DAY_END",
"description": "End of the working day as HH:MM. Defaults to 17:00."
},
{
"name": "CAL_AUTO_CALENDAR_ID",
"description": "Google Calendar ID to schedule events into. Defaults to primary."
},
{
"name": "CAL_AUTO_TASK_LIST_ID",
"description": "Google Tasks list ID to create tasks in. Defaults to @default."
},
{
"name": "CAL_AUTO_ATTENDEES",
"description": "Comma-separated email addresses to invite to scheduled events."
},
{
"name": "CAL_AUTO_SCHEDULABLE_STATUSES",
"description": "Comma-separated GitHub Project status names to schedule. Defaults to Backlog."
},
{
"name": "CAL_AUTO_COUNT_ALL_DAY_EVENTS",
"description": "Whether all-day events count against free/busy slots. Defaults to false."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"cal-auto-python-mcp": {
"command": "uvx",
"args": [
"cal-auto-python==0.1.0"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"GITHUB_PROJECT_ID": "<YOUR_GITHUB_PROJECT_ID>",
"CAL_AUTO_TIMEZONE": "<YOUR_CAL_AUTO_TIMEZONE>",
"CAL_AUTO_CONFIG_DIR": "<YOUR_CAL_AUTO_CONFIG_DIR>",
"CAL_AUTO_WORKING_DAY_START": "<YOUR_CAL_AUTO_WORKING_DAY_START>",
"CAL_AUTO_WORKING_DAY_END": "<YOUR_CAL_AUTO_WORKING_DAY_END>",
"CAL_AUTO_CALENDAR_ID": "<YOUR_CAL_AUTO_CALENDAR_ID>",
"CAL_AUTO_TASK_LIST_ID": "<YOUR_CAL_AUTO_TASK_LIST_ID>",
"CAL_AUTO_ATTENDEES": "<YOUR_CAL_AUTO_ATTENDEES>",
"CAL_AUTO_SCHEDULABLE_STATUSES": "<YOUR_CAL_AUTO_SCHEDULABLE_STATUSES>",
"CAL_AUTO_COUNT_ALL_DAY_EVENTS": "<YOUR_CAL_AUTO_COUNT_ALL_DAY_EVENTS>"
}
}
}
}Cline
{
"mcpServers": {
"cal-auto-python-mcp": {
"command": "uvx",
"args": [
"cal-auto-python==0.1.0"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"GITHUB_PROJECT_ID": "<YOUR_GITHUB_PROJECT_ID>",
"CAL_AUTO_TIMEZONE": "<YOUR_CAL_AUTO_TIMEZONE>",
"CAL_AUTO_CONFIG_DIR": "<YOUR_CAL_AUTO_CONFIG_DIR>",
"CAL_AUTO_WORKING_DAY_START": "<YOUR_CAL_AUTO_WORKING_DAY_START>",
"CAL_AUTO_WORKING_DAY_END": "<YOUR_CAL_AUTO_WORKING_DAY_END>",
"CAL_AUTO_CALENDAR_ID": "<YOUR_CAL_AUTO_CALENDAR_ID>",
"CAL_AUTO_TASK_LIST_ID": "<YOUR_CAL_AUTO_TASK_LIST_ID>",
"CAL_AUTO_ATTENDEES": "<YOUR_CAL_AUTO_ATTENDEES>",
"CAL_AUTO_SCHEDULABLE_STATUSES": "<YOUR_CAL_AUTO_SCHEDULABLE_STATUSES>",
"CAL_AUTO_COUNT_ALL_DAY_EVENTS": "<YOUR_CAL_AUTO_COUNT_ALL_DAY_EVENTS>"
}
}
}
}VS Code
{
"servers": {
"cal-auto-python-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"cal-auto-python==0.1.0"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"GITHUB_PROJECT_ID": "<YOUR_GITHUB_PROJECT_ID>",
"CAL_AUTO_TIMEZONE": "<YOUR_CAL_AUTO_TIMEZONE>",
"CAL_AUTO_CONFIG_DIR": "<YOUR_CAL_AUTO_CONFIG_DIR>",
"CAL_AUTO_WORKING_DAY_START": "<YOUR_CAL_AUTO_WORKING_DAY_START>",
"CAL_AUTO_WORKING_DAY_END": "<YOUR_CAL_AUTO_WORKING_DAY_END>",
"CAL_AUTO_CALENDAR_ID": "<YOUR_CAL_AUTO_CALENDAR_ID>",
"CAL_AUTO_TASK_LIST_ID": "<YOUR_CAL_AUTO_TASK_LIST_ID>",
"CAL_AUTO_ATTENDEES": "<YOUR_CAL_AUTO_ATTENDEES>",
"CAL_AUTO_SCHEDULABLE_STATUSES": "<YOUR_CAL_AUTO_SCHEDULABLE_STATUSES>",
"CAL_AUTO_COUNT_ALL_DAY_EVENTS": "<YOUR_CAL_AUTO_COUNT_ALL_DAY_EVENTS>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"cal-auto-python-mcp": {
"command": "uvx",
"args": [
"cal-auto-python==0.1.0"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"GITHUB_PROJECT_ID": "<YOUR_GITHUB_PROJECT_ID>",
"CAL_AUTO_TIMEZONE": "<YOUR_CAL_AUTO_TIMEZONE>",
"CAL_AUTO_CONFIG_DIR": "<YOUR_CAL_AUTO_CONFIG_DIR>",
"CAL_AUTO_WORKING_DAY_START": "<YOUR_CAL_AUTO_WORKING_DAY_START>",
"CAL_AUTO_WORKING_DAY_END": "<YOUR_CAL_AUTO_WORKING_DAY_END>",
"CAL_AUTO_CALENDAR_ID": "<YOUR_CAL_AUTO_CALENDAR_ID>",
"CAL_AUTO_TASK_LIST_ID": "<YOUR_CAL_AUTO_TASK_LIST_ID>",
"CAL_AUTO_ATTENDEES": "<YOUR_CAL_AUTO_ATTENDEES>",
"CAL_AUTO_SCHEDULABLE_STATUSES": "<YOUR_CAL_AUTO_SCHEDULABLE_STATUSES>",
"CAL_AUTO_COUNT_ALL_DAY_EVENTS": "<YOUR_CAL_AUTO_COUNT_ALL_DAY_EVENTS>"
}
}
}
}Let your agent find its tools
Find servers like cal-auto-python MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.