Skip to main content
Glama
QA-Shivam
by QA-Shivam
README.md
# sk-mcp-server-google-calendar

A lightweight Model Context Protocol (MCP) server for reading Google Calendar events by date. This package is intended to be published to npm and run through an MCP client with `npx`.

## What it does

This server exposes one tool:

- `getMyCalendarDataByDate` - fetches calendar events and meetings for a specific date

It returns matching events as simple text entries in the form:

- `Meeting title at 2026-06-16T11:30:00Z`

## Requirements

- Node.js 18 or newer
- A Google Calendar API key
- A Google Calendar ID

## Installation

```bash
npm install
```

If you want to test the published package directly, you can run it with:

```bash
npx -y sk-mcp-server-google-calendar
```

## Environment Variables

Create a `.env` file in the project root with:

```env
GOOGLE_PUBLIC_API_KEY=your_google_api_key
CALENDAR_ID=your_calendar_id
```

## Running the server

Start the MCP server with:

```bash
npm start
```

Or run the executable directly:

```bash
node server.js
```

If installed globally or linked as a package bin, the command is:

```bash
google-calendar-mcp
```

## MCP Tool

### `getMyCalendarDataByDate`

Retrieves Google Calendar events for a given date.

#### Input

- `date` - a valid date string, such as `2026-06-16`

#### Output

Returns JSON text with either:

- `meetings`: an array of event strings
- `error`: an error message if the request fails

## Example MCP Client Configuration

If you are connecting this server from an MCP client after publishing it to npm, use the package name as the command target.

Example:

```json
{
  "mcpServers": {
    "My Calendar": {
      "command": "npx",
      "args": [
        "-y",
        "sk-mcp-server-google-calendar"
      ],
      "env": {
        "GOOGLE_PUBLIC_API_KEY": "your_google_api_key",
        "CALENDAR_ID": "your_calendar_id"
      }
    }
  }
}
```

## Notes

- Event lookup is performed using UTC day boundaries.
- The tool returns up to 10 events for the requested date.
- The server uses standard input/output transport for MCP compatibility.

## License

ISC

TDQS

B3.2/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no possibility of confusion between tools.

Naming Consistency5/5

Single tool uses a clear camelCase convention with no inconsistencies.

Tool Count1/5

A Google Calendar server with only one tool is extremely limited; expected at least CRUD and list operations.

Completeness1/5

Only retrieval by date is provided; missing create, update, delete, listing, and other common calendar operations.

Maintenance

ActivityInactive
ResponsivenessNo issues