
WireCat Google Calendar
dev.wirecatPublished by wirecat.devv0.20.0Updated Nov 5, 2026
Your Google Calendar for agents: sync, search and change events. Sign in with the gcal CLI first.
The publisher's own server: Wire Cash: bank wire fees and transfer costs
Overview
Local Google Calendar server for agents: syncs your calendars to a local store, then searches, shows and changes events under permissions you set.
- What you can do
- List, show and search synced events, attendees and their Drive files, offline after a sync
- Find free slots across people and calendars, and spot overlapping meetings across accounts
- Create, change, move and delete events, including repeating ones, and answer invitations
- Link people to their Telegram, WhatsApp or MAX identities and search across other WireCat data
- Call any Google Calendar API v3 method by name, with JSON output and error codes for scripts
- When to use it
- Useful when an agent should answer calendar questions, find meeting times, or book and edit events in your Google Calendar, especially from Claude Desktop, Cursor or another MCP client that cannot run the CLI itself.
- Requirements
- Runs locally via npx with Node.js 22.16+ (22.x) or 24+, or Bun. Needs your own Google OAuth desktop client JSON file and a browser sign-in through the gcal CLI first; each Google account is a named profile. Write access requires signing in with a write grant.
Installation
In SourceWeft
- Open WireCat Google Calendar in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Google Calendar for your AI agents]
gcal — Google Calendar CLI for AI agents
Your Google Calendar in the terminal, searchable on your computer, and ready for Claude Code, Codex, Gemini CLI or any agent — within limits you set.
[npm] [CI] [Node] [Bun] [npm downloads] [License: Apache 2.0]
gcal copies the calendars you own into the local WireCat store. Then you list, show and search
events, the people in them and their Drive files, with no network. With write access it also creates, changes, moves
and deletes events and answers invitations. A delete asks first. Mailing other people is off until you allow it.
An example conversation (invented people and events, illustrative output):
Quick start
You need a Google sign-in client of your own for now. Make one
in Google Cloud Console, as a Desktop app, and save its JSON file as ~/client_secret.json with chmod 600.
personal is a profile: a name you choose for one Google account. It is the first word of every command that uses an
account. A first sync lists a year back and three months ahead. A big one goes on over several runs: run sync again
when it says partial.
You need Node.js 22.16 or a later 22.x, or Node.js 24 or later, on macOS, Linux or Windows. Bun also works. Try it
without installing: npx @wirecat/gcal-cli --help. If gcal is not found, run gcal doctor. It needs no network and
shows what is set up. gcal guide gives step-by-step scenarios.
More: installation (wirecat.dev).
What you can do
See what is coming. "Use gcal. What is on my calendar this week?"
Find an event. "When did we plan the roadmap review?" Search runs on the local copy. It matches words, and meaning too once you download a model.
Find a time for everyone. Ask Google when people are busy, and get the stretches free for all of them. Nothing is stored.
More:
- Show one event with its attendees, Drive files and history:
gcal personal events show event:42. - Link a person to the same person in Telegram, WhatsApp or MAX:
gcal personal people link email:[email protected] telegram:12345. - Create, change and delete events, repeating ones included, and answer invitations. Sign in again with
session start --grant writefirst. - Call any Google Calendar API v3 method by name with
gcal api.
More: use it (wirecat.dev).
For AI agents
Your agent. Your calendar. Your rules.
- An agent with a terminal — Claude Code, Codex, Gemini CLI, OpenClaw or Hermes Agent. It runs
gcalitself. The skill is the agent's instruction sheet: it explains the commands and the limits.gcal skill installwrites it. - An app with no terminal — Claude Desktop, Cursor and other MCP clients. Connect the profile's MCP server,
gcal personal mcp serve.gcal personal mcp configprints the entry to paste. - ChatGPT or Claude in a browser or on your phone — through your own HTTPS tunnel:
gcal personal mcp serve --http. Step by step (wirecat.dev).
The server offers writing tools, so mcp add stops until you pass --allow-writes. The profile's permissions decide
what an agent may change; gcal personal config set permissions.api readonly keeps it to reads. Text from an invitation
is marked untrusted: it is data for the agent, never instructions. Commands that set up the sign-in or the agent link,
api call and emptying a calendar are never offered to an agent.
With --json, every command prints one JSON value, and an error comes as JSON with a code to branch on.
More: agents (wirecat.dev), settings and permissions (wirecat.dev).
Why this tool
- Your calendar is on your computer. It sits in the same store as the messages, documents and meetings of the other WireCat tools. An agent can answer "what did we agree with Ana" across all of them.
- Reads need no network after a sync. A meeting's passcode or PIN is never stored or printed.
- Every write is guarded. It never overwrites a change made in Google since the last sync. A delete asks first. It never mails attendees unless you allow it.
- Built for agents. A skill, an MCP server, one JSON form and exit codes a script can branch on.
Main features
- Incremental sync. After the first sync,
syncasks Google only for what changed.gcal personal store statusshows how far each calendar is. - Repeating events. Each occurrence is stored one by one, cancelled ones included.
- What changed.
events list changed_at>=2026-10-25lists the events that are new, moved or cancelled since a date. - All accounts in one list.
events list --source alllists the events of every Google account you signed in to, and says which accounts it read. - Meetings that overlap.
events list overlapping:true --source allfinds the meetings that clash, also across accounts. - Search by meaning.
gcal models download e5-smallfetches a small model once.sync --embedthen indexes new events with it. - Search in Google.
search events --backend serverasks Google's own search. It also finds events outside the synced span.--backend bothasks the store and Google together. - One search over everything.
search all roadmapfinds your meetings beside the chats that other WireCat tools stored and your notes, and says which accounts it read. - Every Google Calendar method.
gcal apireaches each one, under its own permission key.
Sign-in and profiles
Each profile is one Google account. No command ever picks a profile for you; gcal session list lists them.
GCAL_PROFILE=personal names the profile for a whole shell session. The sign-in is kept in the system keyring. Where
the keyring fails, gcal uses a private file and says so once. It never asks.
More: sign in (wirecat.dev).
Settings and permissions
Settings live in one config.json; gcal personal config show lists them. Permissions say what each command may do:
allow, ask, readonly or deny.
Sharing a calendar asks first. Over MCP nobody can answer a question, so ask lets a command run. An agent can then
share a calendar without asking you. To stop it, run gcal personal config set permissions.api.calendar.acl deny.
--dry-run shows the permission a command needs and does nothing. GCAL_READ_ONLY=1 refuses every write.
More: settings (wirecat.dev).
Limits
- Only the calendars you own sync at first.
gcal personal calendars listshows the rest, andgcal personal calendars sync 3adds calendar 3. gcalhas no Google app of its own yet. Sign-in needs your own client.- A Google app in Testing mode ends sign-ins after seven days. Sign in again, or publish the app.
calendars busyshows a person's busy times only when their calendar is shared with you or your organization.- Google's change notifications (
watch) are not offered: they need a public web address.
What is planned is on the roadmap (wirecat.dev).
Security
- Your event data goes only to Google. The sign-in is kept in the system keyring, or in a file only you can read.
- No command, error, log or run record shows a token or the client secret.
- A meeting's passcode or PIN is never stored. A join link is kept without its query string.
- A write never mails attendees, and a delete never runs unasked, unless you allow it.
gcalrefuses an OAuth client file that other users of the computer can read.- Permissions guard against an agent that a message talked into a change. They do not stop an agent that wants to get around them: for that, use a sandbox or a separate user.
More: security (wirecat.dev). Report a vulnerability as SECURITY.md says.
When it does not work
More: when something goes wrong (wirecat.dev).
Documentation
Each page is also on wirecat.dev/en/docs/gcal. Below are the sources in this repository.
For developers: design, tests and the rules for agents in AGENTS.md.
Development
The shared part — output streams, error codes, the keyring, the store, search and MCP — lives in
@wirecat/cli-base and its sibling library cli-core.
Part of WireCat
gcal is part of WireCat, an open-source, local-first context layer for AI agents. tg-cli and max-cli bring Telegram and MAX into the same local store. Start with one tool. Add more context when you need it. Your context. Any agent.
Questions and setup help: join the WireCat Discord. Bugs go to this repository's issues.
Contributing and license
Pull requests, bug reports and ideas go to issues.
Apache License 2.0 — LICENSE.
Source: README.md at commit aa5953f
Tools
0Version history
2- v0.20.0LatestNov 5, 2026
- v0.19.0Nov 3, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Wire integrations
Wire Cash: bank wire fees and transfer costs
cash.wireOfficial publisher
Wire Cash gives an assistant published US bank wire fees, same-day cutoff times and World Bank remittance costs for sending money abroad.

TollWire Evidence
Published by GitHub account TollWire
Local MCP server that records agent changes, scans, approvals and deployments in a tamper-evident hash-chain log and verifies it.

WireCat b24
dev.wirecat
A local CLI-backed MCP server that lets an assistant read and update a Bitrix24 portal's CRM — deals, leads, contacts, companies, pipelines and products.

SupportWire
Published by GitHub account supportwire
Hosted SupportWire MCP server that lets an assistant triage support conversations, reply to customers, and manage customers, tasks and team settings.
Touchline Wire — FPL & Premier League Intelligence
Published by GitHub account Steven-Robinson
Zero-auth MCP server giving assistants live 2026/27 Fantasy Premier League and Premier League data: captaincy, expected minutes, lineups, injuries and stats.