Skip to main content
Glama
jason1365
by jason1365

create_chore

Create chores in Donetick using simple natural language inputs like days of week and time. Automatically transforms parameters to the correct API format.

Instructions

Create a new chore in Donetick with easy natural language inputs. Use simple parameters like usernames, days_of_week, and time_of_day - they're automatically transformed to the correct API format.

EXAMPLES:

  1. Simple recurring chore: {name: 'Take out trash', days_of_week: ['Mon', 'Thu'], time_of_day: '19:00', usernames: ['Alice']}

  2. Weekly chore with reminders: {name: 'Team meeting', days_of_week: ['Tue'], time_of_day: '14:00', remind_minutes_before: 15, usernames: ['Alice', 'Bob']}

  3. With subtasks and labels: {name: 'Weekly review', days_of_week: ['Fri'], time_of_day: '17:00', subtask_names: ['Check email', 'Update notes'], label_names: ['work', 'weekly']}

  4. Daily chore with points: {name: 'Exercise', frequency_type: 'daily', time_of_day: '07:00', points: 10, usernames: ['Bob']}

  5. One-time chore: {name: 'Fix leaky faucet', due_date: '2025-11-10', priority: 5, usernames: ['Alice']}

Returns the created chore with its assigned ID and all metadata.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesChore name (required, 1-200 characters)
descriptionNoChore description (optional, max 5000 characters)
due_dateNoDue date in YYYY-MM-DD or RFC3339 format (optional)
created_byNoUser ID of the creator (optional)
frequency_typeNoHow often the chore repeats (default: once). FREQUENCY TYPES: • once / no_repeat: One-time chore, no recurrence • daily: Repeats every day at specified time • weekly: Repeats every week (use with frequency for bi-weekly: frequency=2) • days_of_the_week: Specific days (Mon, Wed, Fri) - BEST for multiple days/week → Use with days_of_week parameter: ['Mon', 'Wed', 'Fri'] • monthly: Repeats every month • yearly: Repeats every year • day_of_the_month: Specific day of month (e.g., 15th of each month) • interval_based / interval: Custom interval (e.g., every N days) • adaptive: Smart scheduling based on completion patterns • trigger: Triggered by events or conditions TIP: For chores on specific days (Mon/Wed/Fri), use frequency_type='days_of_the_week' with days_of_week=['Mon', 'Wed', 'Fri'] instead of frequency_type='weekly'
frequencyNoFrequency multiplier (e.g., 1=weekly, 2=biweekly, default: 1)
frequency_metadataNoAdditional frequency config (e.g., {"days": [1,3,5], "time": "09:00"})
is_rollingNoRolling schedule (next due based on completion) vs fixed (default: false)
assigned_toNoPrimary assigned user ID (optional)
assigneesNoMultiple assignees as array of {"userId": int} objects
assign_strategyNoAssignment strategy: least_completed, least_assigned, round_robin, random, keep_last_assigned, random_except_last_assigned, no_assignee (default: least_completed)
notificationNoEnable notifications for this chore (default: false)
naggingNoEnable nagging/reminder notifications (default: false)
predueNoEnable pre-due date notifications (default: false)
priorityNoPriority level: 0=unset, 1=lowest, 2=low, 3=medium, 4=highest (optional)
labelsNoLabel tags for categorization (e.g., ["cleaning", "outdoor"])
is_activeNoActive status - inactive chores are hidden (default: true)
is_privateNoPrivate chore visible only to creator (default: false)
pointsNoPoints awarded for completion (optional)
sub_tasksNoSub-tasks/checklist items (optional)
usernamesNoEASY: Assign by usernames instead of IDs (e.g., ['Alice', 'Bob']). First user becomes primary assignee.
label_namesNoEASY: Label by names instead of IDs (e.g., ['cleaning', 'urgent'])
days_of_weekNoEASY: Days as short names (e.g., ['Mon', 'Wed', 'Fri'] or ['monday', 'wednesday']). Auto-sets frequency_type to days_of_the_week. REQUIRED when frequency_type='days_of_the_week'. Valid values: Mon/Monday, Tue/Tuesday, Wed/Wednesday, Thu/Thursday, Fri/Friday, Sat/Saturday, Sun/Sunday
time_of_dayNoEASY: Time in HH:MM format (e.g., '16:00' for 4pm)
timezoneNoTimezone name (default: America/New_York). Used with days_of_week and time_of_day.
remind_minutes_beforeNoEASY: Remind X minutes before due time (e.g., 15 for 15 minutes before)
remind_at_due_timeNoEASY: Also remind exactly at due time (default: false)
enable_naggingNoEASY: Enable nagging notifications - repeated reminders if not completed (default: false)
enable_predueNoEASY: Enable pre-due notifications - reminders before due date arrives (default: false)
subtask_namesNoEASY: Subtask names as simple strings (e.g., ['Do homework', 'Check work'])
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses automatic transformation of parameters and mentions return type, though it could discuss error handling or authorization requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and key concepts, followed by clear examples. Every sentence adds value, and the structure is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 30 parameters and no output schema, the description covers core behavior and return format well. However, it could be more complete by mentioning validation or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds significant value by grouping 'EASY' parameters, explaining automatic transformations, and providing tips for frequency_type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a new chore' and provides examples. It distinguishes from sibling tools like update_chore and delete_chore by focusing on creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains usage through examples and parameter explanations, but does not explicitly state when not to use this tool or recommend alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jason1365/donetick-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server