Count hours for each client from your calendar
Every meeting matched to a client, with total hours for each client and each week, in a sheet.
- You start it: When you start it
What it does
The task
Read my events in Google Calendar from start date to end date. Match each event to a client by the event title, the e-mail domains of the guests, and this list: client list. Skip declined events, all-day events, and events with no outside guests unless the title names a client. Put one row for each event in a new Google Sheet: date, client, title, start, end and hours. Add a tab with the total hours for each client and each week, and list the events that you could not match.
- It works in Google Calendar and Google Sheets, in the workspace you pick, and signs in with passwords from your Cuiar vault.
- It runs once, when you start it.
What you give it
| Blank | What to give | Example |
|---|---|---|
| start date | The first day to count | 2026-10-01 |
| end date | The last day to count | 2026-10-31 |
| client list | Client names and their e-mail domains | Solano Health (solanohealth.com), Tarn Energy (tarn.energy), Corvid Freight (corvidfreight.com) |
What you get back
An example run with the example values above. Your run uses your own data.
Events read: 1 to 31 October 2026, 142 events
Matched: 118 events, 96.5 hours
| Client | Hours | Events |
|---|---|---|
| Solano Health | 31.0 | 34 |
| Tarn Energy | 24.5 | 29 |
| Corvid Freight | 22.0 | 31 |
| Marlow Bakery Group | 19.0 | 24 |
Not matched: 9 events, for example 'Catch-up' on 14 October (no guests)
Skipped: 15 internal or declined events
Sheet: Hours October 2026, 2 tabs
Run it in Cuiar
- 01
Open it
Click Use in Cuiar on this page. The side panel opens with the task in the composer.
- 02
Fill in 3 blanks
Type start date, end date and client list. Tab moves to the next blank.
- 03
Run it
Run sends it to the agent. Follow each step in the panel, and stop it at any time.
From the terminal
cuiar exec "Read my events in Google Calendar from 2026-10-01 to 2026-10-31. Match each event to a client by the event title, the e-mail domains of the guests, and this list: Solano Health (solanohealth.com), Tarn Energy (tarn.energy), Corvid Freight (corvidfreight.com). Skip declined events, all-day events, and events with no outside guests unless the title names a client. Put one row for each event in a new Google Sheet: date, client, title, start, end and hours. Add a tab with the total hours for each client and each week, and list the events that you could not match."Run it from your AI agent
Claude Code, Codex, Cursor and other MCP clients reach Cuiar at https://mcp.cuiar.com/mcp. Add the server one time, then ask for the task in plain words, or call run_task yourself.
1. Add Cuiar to Claude Code
claude mcp add --transport http cuiar https://mcp.cuiar.com/mcp2. Ask your agent
Use the Cuiar tool run_task to run my "Count hours for each client from your calendar" template with start date = 2026-10-01; end date = 2026-10-31; client list = Solano Health (solanohealth.com), Tarn Energy (tarn.energy), Corvid Freight (corvidfreight.com).Setup for other agents: AI agents.
The tool call
{
"name": "run_task",
"arguments": {
"task": "Read my events in Google Calendar from 2026-10-01 to 2026-10-31. Match each event to a client by the event title, the e-mail domains of the guests, and this list: Solano Health (solanohealth.com), Tarn Energy (tarn.energy), Corvid Freight (corvidfreight.com). Skip declined events, all-day events, and events with no outside guests unless the title names a client. Put one row for each event in a new Google Sheet: date, client, title, start, end and hours. Add a tab with the total hours for each client and each week, and list the events that you could not match."
}
}Related templates
All data templatesOps
Review your recurring meetings
Each repeating meeting with its cost in hours, its declines and its agenda, and advice to keep, shorten or cancel.
You start it: When you start it- Google Calendar
- Google Sheets
Finance
Build a mileage log from your calendar
Each business trip with its date, purpose, route and distance, and the total claim at your rate.
You start it: When you start it- Google Calendar
- Google Maps
- Google Sheets
Data
Turn a list on a website into a sheet
Each item from each page, one row for each, with no duplicates.
You start it: When you start it- Any website
- Google Sheets
Data
List local businesses with their contacts
Name, address, phone, website, rating and e-mail for each business.
You start it: When you start it- Google Maps
- Google Sheets
Data
Export your order history
For stores with no export: each order in a sheet, with totals for each year.
You start it: When you start it- Any online store
- Google Sheets
Data
Pull tables from PDFs into a spreadsheet
Each matching table from your PDFs and scans in one sheet, with numbers as numbers and the page noted.
You start it: When you start it- Google Drive
- Google Sheets