QuailOS
Farm management for poultry, quail & egg farms: flocks, eggs, hatches, orders, tasks, calendar.
Should I use this
Quality & Safety
Findings (1)
- LOWin update_order_notes
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"quailos": {
"url": "https://www.quailos.com/api/mcp/message"
}
}
}Remote endpoints
https://www.quailos.com/api/mcp/messagestreamable-httpWhat it can do
Tool inventory
Tools (51)
π’plan_flock(mode, householdSize, targetEggs, eggUnit, species, ...)
Calculate chicken/quail flock sizing, incubation guidelines, weekly feed, spaces, and costs for any of the 310 avian breeds.
Input Schema
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"description": "Mode to size by: \"household\" (by people size) or \"target\" (by targeted eggs per week). Defaults to \"target\" if positive targetEggs is given, otherwise \"household\"."
},
"householdSize": {
"type": "number",
"description": "Household size (range 1-50, used when mode=\"household\"). Defaults to 4."
},
"targetEggs": {
"type": "number",
"description": "Target eggs per week (used when mode=\"target\")."
},
"eggUnit": {
"type": "string",
"description": "Unit of target eggs: \"chicken\" or \"quail\". Defaults to \"chicken\"."
},
"species": {
"type": "string",
"description": "Desired species: \"chicken\", \"quail\", or \"mix\". Defaults to \"mix\"."
},
"quailShare": {
"type": "number",
"description": "Quail percentage of the flock: 0 to 1 (e.g. 0.50 for 50%). Defaults to 0.50."
},
"purpose": {
"type": "string",
"description": "Flock purpose: \"eggs\", \"meat\", or \"both\". Defaults to \"eggs\"."
},
"experience": {
"type": "string",
"description": "Owner poultry experience level: \"beginner\", \"some\", or \"experienced\". Defaults to \"beginner\"."
},
"spaceAvailableSqFt": {
"type": "number",
"description": "Optional available square feet to validate if flock plan fits"
},
"climate": {
"type": "string",
"description": "Optional climate winters: \"mild\", \"cold\", or \"hot\""
},
"meatBirdsPerMonth": {
"type": "number",
"description": "Optional meat birds to raise/process per month"
}
},
"required": []
}π‘update_order_notes(farmId, orderId, notes, confirm, mode, ...)
Appends a timestamped 'via AI' note by default
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"orderId": {
"type": "string",
"description": "The order document ID to update"
},
"notes": {
"type": "string",
"description": "The internal notes text content"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit writes, false to preview"
},
"mode": {
"type": "string",
"enum": [
"append",
"replace"
],
"description": "Mode to edit notes: \"append\" (timestamped suffix) or \"replace\" (overwrite). Defaults to \"append\"."
},
"confirmReplace": {
"type": "boolean",
"description": "Must be set to true if mode is \"replace\" to confirm overriding existing notes."
},
"idempotencyKey": {
"type": "string",
"description": "Optional unique key to prevent duplicate edits"
}
},
"required": [
"farmId",
"orderId",
"notes"
]
}π’list_vehicles(farmId)
Retrieve registered farm vehicles for mileage logging. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
}
},
"required": [
"farmId"
]
}π’get_support_tickets(farmId, status, startDate, endDate, limit, ...)
List support tickets created by this farm. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"status": {
"type": "string",
"description": "Optional status filter (e.g. New, In Progress, Closed)"
},
"startDate": {
"type": "string",
"description": "Optional start date filter (YYYY-MM-DD)"
},
"endDate": {
"type": "string",
"description": "Optional end date filter (YYYY-MM-DD)"
},
"limit": {
"type": "number",
"description": "Optional pagination limit (default 25)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
},
"required": [
"farmId"
]
}π‘create_support_ticket(farmId, subject, description, category, priority, ...)
Create a new support ticket. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"subject": {
"type": "string",
"description": "The subject of the support ticket (max 200 chars)"
},
"description": {
"type": "string",
"description": "Detailed explanation of the issue (max 5000 chars)"
},
"category": {
"type": "string",
"enum": [
"bug",
"billing",
"shipping/labels",
"account",
"integration",
"other"
],
"description": "Ticket category"
},
"priority": {
"type": "string",
"enum": [
"low",
"normal",
"high"
],
"description": "Low, Normal, or High priority"
},
"relatedRecordId": {
"type": "string",
"description": "Optional related order or record ID"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"subject",
"description",
"category",
"priority"
]
}π‘reply_to_ticket(farmId, ticketId, message, confirm, idempotencyKey)
Add a reply message to an open support ticket. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"ticketId": {
"type": "string",
"description": "The unique support ticket ID"
},
"message": {
"type": "string",
"description": "Reply message text (max 5000 chars)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"ticketId",
"message"
]
}π’get_feature_requests(farmId, status, startDate, endDate, limit, ...)
List feature requests submitted by this farm. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"status": {
"type": "string",
"description": "Optional status filter (e.g. New, Done / Released)"
},
"startDate": {
"type": "string",
"description": "Optional start date filter (YYYY-MM-DD)"
},
"endDate": {
"type": "string",
"description": "Optional end date filter (YYYY-MM-DD)"
},
"limit": {
"type": "number",
"description": "Optional pagination limit (default 25)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
},
"required": [
"farmId"
]
}π‘create_feature_request(farmId, title, description, area, confirm, ...)
Submit a new feature request or upvote an existing matching request. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"title": {
"type": "string",
"description": "The brief title of the requested feature (max 200 chars)"
},
"description": {
"type": "string",
"description": "Detailed explanation of the feature (max 5000 chars)"
},
"area": {
"type": "string",
"enum": [
"orders",
"CRM",
"email marketing",
"finance",
"farm management",
"genetics",
"hatch",
"apiary",
"MCP/API",
"other"
],
"description": "System area of request"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"title",
"description",
"area"
]
}π’get_ticket_thread(farmId, ticketId)
Retrieve full reply history and messages thread of a support ticket. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"ticketId": {
"type": "string",
"description": "The unique support ticket ID"
}
},
"required": [
"farmId",
"ticketId"
]
}π’get_hatches(farmId, status, startDate, endDate, variety, ...)
Retrieve incubation and hatch batches. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"status": {
"type": "string",
"enum": [
"Active",
"Completed",
"Cancelled"
],
"description": "Optional status filter"
},
"startDate": {
"type": "string",
"description": "Optional start setDate filter (YYYY-MM-DD)"
},
"endDate": {
"type": "string",
"description": "Optional end setDate filter (YYYY-MM-DD)"
},
"variety": {
"type": "string",
"description": "Optional variety breed name filter"
},
"incubator": {
"type": "string",
"description": "Optional incubator identifier filter"
},
"limit": {
"type": "number",
"description": "Optional pagination limit (default 50)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
},
"required": [
"farmId"
]
}π‘log_hatch_set(farmId, variety, eggsSet, setDate, incubator, ...)
Start a new incubation batch, auto-calculating lockdown/hatch dates. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"variety": {
"type": "string",
"description": "The poultry/gamebird breed name (e.g. Pharaoh, Chicken)"
},
"eggsSet": {
"type": "number",
"description": "Number of eggs set (positive finite integer)"
},
"setDate": {
"type": "string",
"description": "Optional set date (YYYY-MM-DD, defaults to today, cannot be in future)"
},
"incubator": {
"type": "string",
"description": "Optional incubator name/identifier"
},
"source": {
"type": "string",
"description": "Optional source flock or vendor"
},
"notes": {
"type": "string",
"description": "Optional notes"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"variety",
"eggsSet"
]
}βͺlog_candling(farmId, hatchId, fertileCount, candleDate, clears, ...)
Log egg candling fertility results for an active batch. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hatchId": {
"type": "string",
"description": "The unique hatch batch ID"
},
"fertileCount": {
"type": "number",
"description": "Number of fertile/developing eggs (positive integer <= eggsSet)"
},
"candleDate": {
"type": "string",
"description": "Optional candling date (YYYY-MM-DD)"
},
"clears": {
"type": "number",
"description": "Optional count of clear/infertile eggs"
},
"quitters": {
"type": "number",
"description": "Optional count of early quitters/dead germs"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"hatchId",
"fertileCount"
]
}βͺlog_hatch_result(farmId, hatchId, hatchedCount, hatchDate, createBirdBatch, ...)
Complete a batch by logging final hatch count, calculating stats, and optionally creating a bird batch. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hatchId": {
"type": "string",
"description": "The unique hatch batch ID"
},
"hatchedCount": {
"type": "number",
"description": "Number of successfully hatched chicks (positive integer <= eggsSet)"
},
"hatchDate": {
"type": "string",
"description": "Optional hatch date (YYYY-MM-DD)"
},
"createBirdBatch": {
"type": "boolean",
"description": "Automatically log as an active bird batch census (defaults to false)"
},
"location": {
"type": "string",
"description": "Optional location for bird batch (Brooder, etc. defaults to Brooder)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"hatchId",
"hatchedCount"
]
}βͺlog_hive_inspection(farmId, hiveId, date, queenSeen, eggsSeen, ...)
Log a detailed beekeeping hive inspection. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hiveId": {
"type": "string",
"description": "The unique hive ID"
},
"date": {
"type": "string",
"description": "Optional inspection date (YYYY-MM-DD)"
},
"queenSeen": {
"type": "string",
"enum": [
"yes",
"no"
],
"description": "Was the queen seen?"
},
"eggsSeen": {
"type": "boolean",
"description": "Are eggs/fresh brood present?"
},
"larvaeSeen": {
"type": "boolean",
"description": "Are larvae present?"
},
"cappedSeen": {
"type": "boolean",
"description": "Is capped brood present?"
},
"feedStatus": {
"type": "string",
"enum": [
"Sufficient",
"Feeding Required",
"Starving"
],
"description": "Food stores status"
},
"actionsTaken": {
"type": "string",
"description": "Optional details of actions taken"
},
"varroaCount": {
"type": "number",
"description": "Optional mite count"
},
"honeyHarvestedOz": {
"type": "number",
"description": "Optional honey harvested in ounces"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"hiveId"
]
}βͺlog_varroa_treatment(farmId, hiveId, product, dose, date, ...)
Record a mite treatment chemical or acid application. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hiveId": {
"type": "string",
"description": "The unique hive ID"
},
"product": {
"type": "string",
"description": "Treatment product name (e.g. Formic Pro, Oxalic Acid)"
},
"dose": {
"type": "string",
"description": "Treatment dose or instructions"
},
"date": {
"type": "string",
"description": "Optional treatment start date (YYYY-MM-DD)"
},
"withdrawalDate": {
"type": "string",
"description": "Optional honey withdrawal end date (YYYY-MM-DD)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"hiveId",
"product",
"dose"
]
}π‘log_honey_harvest(farmId, hiveId, yardId, weight, supersPulled, ...)
Log honey extracted and optionally add directly to stock inventory. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hiveId": {
"type": "string",
"description": "The unique hive ID (optional if yardId is provided)"
},
"yardId": {
"type": "string",
"description": "The apiary yard ID (optional if hiveId is provided)"
},
"weight": {
"type": "number",
"description": "Harvested honey weight in lbs (positive number)"
},
"supersPulled": {
"type": "number",
"description": "Optional count of honey supers pulled (integer)"
},
"framesPulled": {
"type": "number",
"description": "Optional count of frames pulled (integer)"
},
"date": {
"type": "string",
"description": "Optional harvest date (YYYY-MM-DD)"
},
"addToInventory": {
"type": "boolean",
"description": "Automatically add honey weight to inventory stock (defaults to false)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"weight"
]
}π‘update_queen_status(farmId, hiveId, status, date, queenMarking, ...)
Update the live queenright and breeder metadata settings of a hive. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"hiveId": {
"type": "string",
"description": "The unique hive ID"
},
"status": {
"type": "string",
"enum": [
"queenright",
"queenless",
"requeened",
"swarm cells"
],
"description": "The queen status"
},
"date": {
"type": "string",
"description": "Optional status change date (YYYY-MM-DD)"
},
"queenMarking": {
"type": "string",
"description": "Optional queen marking/label"
},
"queenSource": {
"type": "string",
"description": "Optional queen breed/source"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"hiveId",
"status"
]
}π‘create_hive(farmId, yardId, name, dateEstablished, source, ...)
Register a new beehive in an apiary yard. ALWAYS ask for confirmation before writing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"yardId": {
"type": "string",
"description": "The unique apiary yard ID"
},
"name": {
"type": "string",
"description": "The name or identifier of the hive (e.g. Hive 5B)"
},
"dateEstablished": {
"type": "string",
"description": "Optional date established (YYYY-MM-DD)"
},
"source": {
"type": "string",
"enum": [
"package",
"nuc",
"swarm",
"split"
],
"description": "Source origin of the colony"
},
"colorCode": {
"type": "string",
"description": "Optional color marker hex code"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"yardId",
"name",
"source"
]
}π’ping
Verify server connectivity, handshake responsiveness, and platform status.
Input Schema
{
"type": "object",
"properties": {}
}π’get_npip_stock_codes(category, query, limit, cursor)
Resolve biological poultry and game-bird varieties to regulatory federal NPIP stock numbers.
Input Schema
{
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "Optional filter: game-birds, waterfowl, or commercial."
},
"query": {
"type": "string",
"description": "Optional keyword search for variety name or code."
},
"limit": {
"type": "number",
"description": "Optional pagination limit (default 50, max 200)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
}
}π’get_public_farms(state, query)
Search the QuailOS public farm directory. Retrieve farm names, locations, specialties, and bios.
Input Schema
{
"type": "object",
"properties": {
"state": {
"type": "string",
"description": "Optional 2-letter state code filter (e.g. KY, TX)."
},
"query": {
"type": "string",
"description": "Optional keyword search for farm name, bio, or specialties."
}
}
}π’get_public_wiki_pages(query, limit, cursor)
Search published public QuailOS poultry, game-bird, and hatchery guide articles and walkthroughs.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Optional search keyword for article title or content."
},
"limit": {
"type": "number",
"description": "Optional limit (default 15)"
},
"cursor": {
"type": "string",
"description": "Optional cursor"
}
}
}π’list_quail_varieties
List all registered Coturnix quail varieties with their display names, unique IDs, description, and exact genotype mappings.
Input Schema
{
"type": "object",
"properties": {}
}π’predict_quail_cross(sire, dam)
Calculate offspring plumage color probability distributions and percentages when crossing a specific sire and dam variety.
Input Schema
{
"type": "object",
"properties": {
"sire": {
"type": "string",
"description": "The sire variety name or unique ID (case-insensitive, e.g. Pharaoh, Italian, silver)"
},
"dam": {
"type": "string",
"description": "The dam variety name or unique ID (case-insensitive)"
}
},
"required": [
"sire",
"dam"
]
}π’find_quail_pairings(target_variety, limit)
Perform a reverse genetic lookup to find all possible parent pairings (sire and dam) that can produce a targeted plumage color variety.
Input Schema
{
"type": "object",
"properties": {
"target_variety": {
"type": "string",
"description": "The target offspring variety name or unique ID (case-insensitive, e.g. Pearl Fee)"
},
"limit": {
"type": "number",
"description": "Optional max pairings limit to return (default 10)"
}
},
"required": [
"target_variety"
]
}π’get_tasks(farmId, status)
Retrieve active/pending farm management tasks. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"status": {
"type": "string",
"description": "Optional task status filter: Pending, In Progress"
}
},
"required": [
"farmId"
]
}π’get_calendar_events(farmId, startDate, endDate)
Retrieve calendar events for the farm including hatches, local events, rentals, and task due dates. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"startDate": {
"type": "string",
"description": "Optional start date filter (ISO string or YYYY-MM-DD)"
},
"endDate": {
"type": "string",
"description": "Optional end date filter (ISO string or YYYY-MM-DD)"
}
},
"required": [
"farmId"
]
}π’get_orders(farmId, status, limit, cursor, startDate, ...)
Retrieve active/pending sales orders for the farm. Supports startDate and endDate filters (YYYY-MM-DD or ISO datetime format). Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"status": {
"type": "string",
"description": "Optional filter: pending, partially_fulfilled, fulfilled, unfulfilled, shipped, etc."
},
"limit": {
"type": "number",
"description": "Optional max number of orders to return (default 50, max 100)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
},
"startDate": {
"type": "string",
"description": "Optional start date range filter (YYYY-MM-DD or ISO datetime)"
},
"endDate": {
"type": "string",
"description": "Optional end date range filter (YYYY-MM-DD or ISO datetime)"
}
},
"required": [
"farmId"
]
}π’get_order_feedback(farmId, type, startDate, endDate, minRating, ...)
List customer feedback left on online orders (the Online Orders > Feedback tab): hatch-rate reports with eggs set/hatched, star rating and comments, plus shipping damage reports. Read-only. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"type": {
"type": "string",
"enum": [
"hatch",
"damage"
],
"description": "Optional report type filter"
},
"startDate": {
"type": "string",
"description": "Optional start date (YYYY-MM-DD in farm time or ISO datetime)"
},
"endDate": {
"type": "string",
"description": "Optional end date (YYYY-MM-DD in farm time or ISO datetime)"
},
"minRating": {
"type": "number",
"description": "Optional minimum star rating 1-5 (hatch reports only)"
},
"maxRating": {
"type": "number",
"description": "Optional maximum star rating 1-5 (hatch reports only)"
},
"orderId": {
"type": "string",
"description": "Optional order ID to match feedback for a single order"
},
"isPublic": {
"type": "boolean",
"description": "Optional filter: true = shown in Farm Directory, false = private"
},
"limit": {
"type": "number",
"description": "Optional max results (default 25, max 100)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor (nextCursor from a previous call)"
}
},
"required": [
"farmId"
]
}π’get_customer_details(farmId, emailOrName, limit, cursor)
Retrieve detailed profile of a specific customer in your CRM by email or name. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"emailOrName": {
"type": "string",
"description": "The customer email or full name to search (min 2 chars)"
},
"limit": {
"type": "number",
"description": "Optional max number of customers to return (default 25)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
},
"required": [
"farmId",
"emailOrName"
]
}π’get_meat_inventory(farmId)
Retrieve meat processing logs and cold storage/freezer inventory. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
}
},
"required": [
"farmId"
]
}π’get_beekeeping_apiary(farmId)
Retrieve active yards, hives, queen statuses, and varroa inspections. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
}
},
"required": [
"farmId"
]
}π’get_financial_pnl(farmId, month)
Retrieve summarized expenses, income, cash flow, and profit-and-loss details. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"month": {
"type": "string",
"description": "Optional month filter (e.g. 2026-09)"
}
},
"required": [
"farmId"
]
}π’get_feed_inventory(farmId)
Retrieve active feed inventory, feed purchases, and feed mill logs. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
}
},
"required": [
"farmId"
]
}π’get_vendors_and_pos(farmId)
Retrieve purchase orders and vendor profiles. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
}
},
"required": [
"farmId"
]
}π’get_egg_collections(farmId, startDate, endDate, limit, cursor)
Retrieve daily egg production logs and collection counts. Requires farmId and apiKey authorization.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"startDate": {
"type": "string",
"description": "Optional start date filter (YYYY-MM-DD or ISO. For \"this week\", pass Monday-Sunday dates, interpreted in farm timezone)."
},
"endDate": {
"type": "string",
"description": "Optional end date filter (YYYY-MM-DD or ISO, interpreted in farm timezone)."
},
"limit": {
"type": "number",
"description": "Optional pagination limit (default 50, max 500)"
},
"cursor": {
"type": "string",
"description": "Optional pagination cursor"
}
},
"required": [
"farmId"
]
}π’get_mileage_logs(farmId, limit, cursor)
Retrieve registered vehicle mileage logs for tax and expense auditing.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"limit": {
"type": "number",
"description": "Optional pagination limit"
},
"cursor": {
"type": "string",
"description": "Optional cursor"
}
},
"required": [
"farmId"
]
}π’get_bird_batches(farmId, limit, cursor)
Retrieve active and archived poultry census batches from the flock inventory.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"limit": {
"type": "number",
"description": "Optional pagination limit"
},
"cursor": {
"type": "string",
"description": "Optional cursor"
}
},
"required": [
"farmId"
]
}π’get_time_logs(farmId, limit, cursor)
Retrieve registered worker time clocks and logged task labor hours.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"limit": {
"type": "number",
"description": "Optional pagination limit"
},
"cursor": {
"type": "string",
"description": "Optional cursor"
}
},
"required": [
"farmId"
]
}π’get_transactions(farmId, limit, cursor)
Retrieve manual general ledger expense, income, and equity transactions.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"limit": {
"type": "number",
"description": "Optional pagination limit"
},
"cursor": {
"type": "string",
"description": "Optional cursor"
}
},
"required": [
"farmId"
]
}π‘create_task(farmId, title, description, priority, dueDate, ...)
Create a new farm management task. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"title": {
"type": "string",
"description": "The title of the task (e.g. Clean brooder box B)"
},
"description": {
"type": "string",
"description": "Optional description"
},
"priority": {
"type": "string",
"enum": [
"Low",
"Medium",
"High"
],
"description": "Low, Medium, or High priority"
},
"dueDate": {
"type": "string",
"description": "Optional due date (YYYY-MM-DD)"
},
"assignedToName": {
"type": "string",
"description": "Optional name of the assigned worker"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"title"
]
}π΄complete_task(farmId, taskId, notes, hoursLogged, confirm, ...)
Mark a task as Completed and update recurrence. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"taskId": {
"type": "string",
"description": "The unique task ID to complete"
},
"notes": {
"type": "string",
"description": "Optional completion notes"
},
"hoursLogged": {
"type": "number",
"description": "Optional labor hours to log"
},
"confirm": {
"type": "boolean",
"description": "Must be set to true to commit this destructive completion write"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"taskId",
"confirm"
]
}βͺlog_eggs(farmId, quantity, type, notes, date, ...)
Log a new daily egg collection count. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"quantity": {
"type": "number",
"description": "The number of eggs collected (positive finite number <= 100000)"
},
"type": {
"type": "string",
"description": "Optional variety (e.g. Pharaoh, Celadon, Standard)"
},
"notes": {
"type": "string",
"description": "Optional notes"
},
"date": {
"type": "string",
"description": "Optional log date (YYYY-MM-DD)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"quantity"
]
}π‘create_customer(farmId, name, email, phone, address, ...)
Add a new customer to the CRM with deduping. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"name": {
"type": "string",
"description": "The full name of the customer"
},
"email": {
"type": "string",
"description": "Optional email (checked for deduping)"
},
"phone": {
"type": "string",
"description": "Optional phone number (checked for deduping)"
},
"address": {
"type": "string",
"description": "Optional street address"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional search tags"
},
"marketingOptIn": {
"type": "boolean",
"description": "Marketing and Plunk opt-in (defaults to false)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"name"
]
}π‘create_calendar_event(farmId, title, start, end, description, ...)
Create a new calendar event on the farmβs timeline. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"title": {
"type": "string",
"description": "The event title"
},
"start": {
"type": "string",
"description": "Start date/time (ISO string or YYYY-MM-DD)"
},
"end": {
"type": "string",
"description": "End date/time (ISO string or YYYY-MM-DD, must be >= start, max 365 days length)"
},
"description": {
"type": "string",
"description": "Optional description"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"title",
"start"
]
}βͺlog_mileage(farmId, distance, purpose, destination, category, ...)
Log a vehicle travel trip with automatic trip-date IRS rate calculations. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"distance": {
"type": "number",
"description": "The travel distance in miles (positive finite number <= 5000)"
},
"purpose": {
"type": "string",
"description": "The business purpose of the trip"
},
"destination": {
"type": "string",
"description": "The trip destination location"
},
"category": {
"type": "string",
"enum": [
"BUSINESS",
"PERSONAL",
"MEDICAL",
"CHARITY"
],
"description": "Tax category (defaults to BUSINESS)"
},
"vehicleId": {
"type": "string",
"description": "Optional ID of the vehicle used"
},
"vehicleName": {
"type": "string",
"description": "Optional name of the vehicle"
},
"notes": {
"type": "string",
"description": "Optional notes"
},
"date": {
"type": "string",
"description": "Optional trip date (YYYY-MM-DD)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"distance",
"purpose",
"destination"
]
}βͺlog_feed_purchase(farmId, feedType, bags, lbsPerBag, pricePerBag, ...)
Log a feed purchase and automatically increment feed assets inventory. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"feedType": {
"type": "string",
"description": "The feed formulation or label (e.g. 28% Gamebird Starter)"
},
"bags": {
"type": "number",
"description": "Number of bags purchased (positive finite integer <= 10000)"
},
"lbsPerBag": {
"type": "number",
"description": "Weight per bag in pounds (defaults to 50, <= 5000)"
},
"pricePerBag": {
"type": "number",
"description": "Price per bag (positive finite number <= 10000)"
},
"source": {
"type": "string",
"description": "Optional merchant or mill source"
},
"date": {
"type": "string",
"description": "Optional purchase date (YYYY-MM-DD)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"feedType",
"bags",
"pricePerBag"
]
}βͺlog_manual_transaction(farmId, type, amount, category, description, ...)
Log a manual income, expense, or equity transaction. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"type": {
"type": "string",
"enum": [
"Income",
"Expense",
"Equity"
],
"description": "Income, Expense, or Equity"
},
"amount": {
"type": "number",
"description": "The absolute transaction amount (positive finite number <= 10000000)"
},
"category": {
"type": "string",
"description": "Ledger category (e.g. Feed, Sales, Postage)"
},
"description": {
"type": "string",
"description": "Optional descriptive note"
},
"date": {
"type": "string",
"description": "Optional transaction date (YYYY-MM-DD)"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"type",
"amount",
"category"
]
}βͺlog_bird_batch(farmId, variety, quantity, hatchDate, location, ...)
Log a new bird inventory census batch. Supports confirm and idempotency validation.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"variety": {
"type": "string",
"description": "The quail or poultry variety"
},
"quantity": {
"type": "number",
"description": "The number of birds in the batch (positive finite integer <= 50000)"
},
"hatchDate": {
"type": "string",
"description": "The hatch date (YYYY-MM-DD, cannot be in the future)"
},
"location": {
"type": "string",
"description": "Current location (Brooder, Grow-out, Layer, Breeder, Other)"
},
"notes": {
"type": "string",
"description": "Optional notes"
},
"confirm": {
"type": "boolean",
"description": "Set to true to commit, false for dry-run preview"
},
"idempotencyKey": {
"type": "string",
"description": "Unique request idempotency key"
}
},
"required": [
"farmId",
"variety",
"quantity",
"hatchDate",
"location"
]
}π΄delete_task(farmId, taskId, confirm)
Permanently delete a task in this farm. ALWAYS ask the user to confirm first.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"taskId": {
"type": "string",
"description": "The unique task ID to delete"
},
"confirm": {
"type": "boolean",
"description": "Must be set to true to permanently delete this task"
}
},
"required": [
"farmId",
"taskId",
"confirm"
]
}π΄delete_calendar_event(farmId, eventId, confirm)
Permanently delete a calendar event in this farm. ALWAYS ask the user to confirm first.
Input Schema
{
"type": "object",
"properties": {
"farmId": {
"type": "string",
"description": "The unique farm ID"
},
"eventId": {
"type": "string",
"description": "The unique event ID to delete"
},
"confirm": {
"type": "boolean",
"description": "Must be set to true to permanently delete this calendar event"
}
},
"required": [
"farmId",
"eventId",
"confirm"
]
}Community
Evidence