No project description provided
Project description
ICS MCP Server
An MCP (Model Context Protocol) server that provides tools for creating ICS calendar events. Built with FastMCP and the ics library to generate RFC5545-compliant calendar files.
Features
- create_ics_event: Generate ICS calendar events with comprehensive options
- Required: event name and start time (ISO format)
- Optional: end time or duration in minutes
- Optional: description, location, URL
- Optional: all-day event support
- Optional: alarm notifications (minutes before event)
Installation & Usage
Install from GitHub
{
"mcpServers": {
"icsmcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/narumiruna/ics-mcp",
"icsmcp"
]
}
}
}
Install from PyPI
{
"mcpServers": {
"icsmcp": {
"command": "uvx",
"args": ["icsmcp@latest"]
}
}
}
Run Locally
{
"mcpServers": {
"icsmcp": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/ics-mcp",
"icsmcp"
]
}
}
}
Development
Requirements
- Python 3.12+
- uv (for dependency management)
Setup
# Clone the repository
git clone https://github.com/narumiruna/ics-mcp.git
cd ics-mcp
# Install dependencies
uv sync
# Run tests
uv run pytest
# Run linting
uv run ruff check .
# Run type checking
uv run mypy .
Available Commands
make lint- Run code lintingmake type- Run type checkingmake test- Run test suitemake publish- Build and publish package
Example Usage
Once configured as an MCP server, you can create calendar events like:
# Create a basic meeting
create_ics_event(
name="Team Meeting",
begin="2024-07-04T10:00:00",
end="2024-07-04T11:00:00",
description="Weekly team sync",
location="Conference Room A"
)
# Create an all-day event with alarm
create_ics_event(
name="Project Deadline",
begin="2024-07-04T00:00:00",
all_day=True,
alarm_minutes_before=1440 # 24 hours before
)
# Create event with duration
create_ics_event(
name="Workshop",
begin="2024-07-04T14:00:00",
duration_minutes=90,
url="https://example.com/workshop"
)
The tool returns properly formatted ICS strings that can be imported into any calendar application.
License
See LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file icsmcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: icsmcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c18590811980a318f25e13f7338aa512346161c6ff96c1098222f126824c07d0
|
|
| MD5 |
a9383a7131f427af29179181be25757f
|
|
| BLAKE2b-256 |
edeca7582825417317ddb838ec64756f7fe003cbbc37fe438b64bc7dc41a6b13
|