Skip to content

Farmbrite MCP by usefulapi

io.usefulapi/farmbriteusefulapi.iostreamable-httpv1.0.0Scanned

Read Farmbrite livestock, crops, tasks, inventory and orders; log records and tasks.

44 tools: 6 can delete or cancel things, 10 change things and 28 only read.

Tools: 6 delete, 0 irreversible, 10 write, 28 read.
  • Reads private data · 6
  • Reads text others write · 44
  • Can send data out · 2
  • No findings

Anlyon alternative

16 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

44 tools

Deletes or cancels 6Claude Code: deny
  • farmbrite_create_feedingWRITE: record a feeding for an animal or livestock group.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_feeding" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: record a feeding for an animal or livestock group. Either name the feed type, or give inventory_id + inventory_location_id to draw it from inventory (which lowers that inventory's quantity). Adds a record each time. POST /{animals|livestock_groups}/{id}/feedings.

    Annotations the server declares

    • title: Record feeding
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_remove_inventoryWRITE: take stock out of an inventory item in a storage location (use, loss, sale).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_remove_inventory" says "remove": a word for removing or ending something.
    • The description says "cannot be undone".
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: take stock out of an inventory item in a storage location (use, loss, sale). Lowers the quantity remaining; not idempotent: repeating removes again. It cannot be undone with this server except by adding stock back. PUT /inventory_types/{id}/inventory/remove.

    Annotations the server declares

    • title: Remove inventory
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_update_animalWRITE: change an animal's fields (only the fields you pass are sent), including its status (Sold, Deceased, Culled...).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_update_animal" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: change an animal's fields (only the fields you pass are sent), including its status (Sold, Deceased, Culled...). Statuses Butchered, Culled and Deceased need death_date. Overwrites previous values. PUT /animals/{animal_id}.

    Annotations the server declares

    • title: Update animal
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • farmbrite_update_contactWRITE: change fields of an existing contact (only the fields you pass are sent).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_update_contact" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: change fields of an existing contact (only the fields you pass are sent). Overwrites the previous values. PUT /contacts/{contact_id}.

    Annotations the server declares

    • title: Update contact
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • farmbrite_update_orderWRITE: change an order's status and/or payment status (for example mark it Paid or Delivered).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_update_order" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: change an order's status and/or payment status (for example mark it Paid or Delivered). Farmbrite may send customer notifications on some status changes, depending on the account settings. PUT /orders/{order_id}.

    Annotations the server declares

    • title: Update order status
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • farmbrite_update_taskWRITE: change a task (only the fields you pass are sent); set complete=true to mark it done.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_update_task" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: change a task (only the fields you pass are sent); set complete=true to mark it done. Overwrites previous values. PUT /tasks/{task_id}.

    Annotations the server declares

    • title: Update task
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
Changes things 10Claude Code: ask
  • farmbrite_add_animal_measurementWRITE: record a measurement for one animal (weight, height, temperature, condition score, fecal egg count).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_add_animal_measurement" says "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: record a measurement for one animal (weight, height, temperature, condition score, fecal egg count). Adds a record each time. POST /animals/{animal_id}/measurements.

    Annotations the server declares

    • title: Add animal measurement
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_add_inventoryWRITE: add stock to an inventory item in a storage location (warehouse, optionally a bin).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_add_inventory" says "add": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: add stock to an inventory item in a storage location (warehouse, optionally a bin). Raises the quantity remaining; not idempotent: repeating adds again. Find ids with farmbrite_list_inventory_types, farmbrite_get_inventory_locations and farmbrite_list_warehouses. PUT /inventory_types/{id}/inventory/add.

    Annotations the server declares

    • title: Add inventory
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_animalWRITE: add an animal (or a group when is_group=true with group_qty) to the herd.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_animal" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: add an animal (or a group when is_group=true with group_qty) to the herd. type (e.g. Cattle, Sheep) and status are required. Creating twice makes two animals. POST /animals.

    Annotations the server declares

    • title: Create animal
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_contactWRITE: create a contact (customer, supplier, vendor).Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "farmbrite_create_contact" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe input takes a destination (input.phone): what the tool writes goes there.
    Description, as the server wrote it
    WRITE: create a contact (customer, supplier, vendor). Nothing is emailed or sent to the contact. Creating twice makes two contacts. POST /contacts.

    Annotations the server declares

    • title: Create contact
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_harvestWRITE: record a harvest (quantity and unit) for an animal or crop planting.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_harvest" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: record a harvest (quantity and unit) for an animal or crop planting. Adds a record each time. POST /{animals|crops}/{id}/harvests.

    Annotations the server declares

    • title: Record harvest
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_noteWRITE: add a note to an animal, livestock group, field, plant type, crop planting or inventory item.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_note" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: add a note to an animal, livestock group, field, plant type, crop planting or inventory item. Notes cannot be removed with this server. POST /{parent}/{id}/notes.

    Annotations the server declares

    • title: Add note
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_orderWRITE: create a sales order with line items (status defaults to Draft and payment_status to Due unless you set them; memo is internal, note is customer-facing).Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "farmbrite_create_order" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe input takes a destination (input.phone): what the tool writes goes there.
    Description, as the server wrote it
    WRITE: create a sales order with line items (status defaults to Draft and payment_status to Due unless you set them; memo is internal, note is customer-facing). Farmbrite may email the customer or generate an invoice depending on the account's settings and the status chosen; the API reference does not say, so use Draft unless the user asks otherwise and only pass email when told to. Orders are entered as back-office orders (is_admin). Creating twice makes two orders. POST /orders.

    Annotations the server declares

    • title: Create order
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_taskWRITE: create a task, optionally linked to an animal, equipment, plant, location or planting.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_task" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: create a task, optionally linked to an animal, equipment, plant, location or planting. May notify the assigned Farmbrite user according to your account settings. Creating twice makes two tasks. POST /tasks.

    Annotations the server declares

    • title: Create task
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_transactionWRITE: record an income or expense transaction in the farm's books.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_transaction" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: record an income or expense transaction in the farm's books. Creating twice records it twice. POST /transactions.

    Annotations the server declares

    • title: Create transaction
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • farmbrite_create_treatmentWRITE: record a treatment (vaccine, dewormer, spray, fertilizer...) for an animal, livestock group, field or crop planting.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_create_treatment" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    WRITE: record a treatment (vaccine, dewormer, spray, fertilizer...) for an animal, livestock group, field or crop planting. Adds a record each time. POST /{animals|livestock_groups|plots|crops}/{id}/treatments.

    Annotations the server declares

    • title: Record treatment
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
Only reads 28Show 28 read-only tools
  • farmbrite_get_animalOne animal by id, with its current location and custom fields.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_animal" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One animal by id, with its current location and custom fields. GET /animals/{animal_id}.

    Annotations the server declares

    • title: Get animal
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_contactOne contact by id, with address.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_contact" says "get": a word for reading.

    What it can reach

    • private-dataThe name "farmbrite_get_contact" says "get" and "contact": it reads contacts.
    • private-dataThe description's first sentence says "contact": it reads contacts.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One contact by id, with address. GET /contacts/{contact_id}.

    Annotations the server declares

    • title: Get contact
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_cropOne crop planting by id.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_crop" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One crop planting by id. GET /crops/{crop_id}.

    Annotations the server declares

    • title: Get crop planting
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_inventory_locationsWhere one inventory item is stored: warehouse and bin ids and names, capacity and quantity remaining in each.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_inventory_locations" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Where one inventory item is stored: warehouse and bin ids and names, capacity and quantity remaining in each. Use the ids with farmbrite_add_inventory / farmbrite_remove_inventory. GET /inventory_types/{inventory_type_id}/inventory.

    Annotations the server declares

    • title: Get inventory by location
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_inventory_typeOne inventory item type by id with quantity remaining and projected empty date.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_inventory_type" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One inventory item type by id with quantity remaining and projected empty date. GET /inventory_types/{inventory_type_id}.

    Annotations the server declares

    • title: Get inventory item
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_livestock_groupOne livestock group by id with its member count, filters and member animals.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_livestock_group" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One livestock group by id with its member count, filters and member animals. GET /livestock_groups/{group_id}.

    Annotations the server declares

    • title: Get livestock group
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_orderOne order by id with its line items, customer contact, delivery address and totals.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_order" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "contact": it reads contacts.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One order by id with its line items, customer contact, delivery address and totals. GET /orders/{order_id}.

    Annotations the server declares

    • title: Get order
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_plotOne field/grow location by id.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_plot" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One field/grow location by id. GET /plots/{plot_id}.

    Annotations the server declares

    • title: Get field (plot)
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_taskOne task by id with its checklist.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_task" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One task by id with its checklist. GET /tasks/{task_id}.

    Annotations the server declares

    • title: Get task
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_get_transactionOne transaction by id.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_get_transaction" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    One transaction by id. GET /transactions/{transaction_id}.

    Annotations the server declares

    • title: Get transaction
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_activitiesList calendar/schedule activities (title, start and end time, all-day flag, linked animal or field).Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_activities" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "list" and "calendar": it reads calendars.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List calendar/schedule activities (title, start and end time, all-day flag, linked animal or field). GET /activities.

    Annotations the server declares

    • title: List schedule activities
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_animal_measurementsWeight, height, temperature, condition score and fecal-count records of one animal, newest data included.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_animal_measurements" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Weight, height, temperature, condition score and fecal-count records of one animal, newest data included. GET /animals/{animal_id}/measurements.

    Annotations the server declares

    • title: List animal measurements
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_animalsList livestock records (name, type, tag number, gender, breed, status, weight, group, purchase/sale data).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_animals" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List livestock records (name, type, tag number, gender, breed, status, weight, group, purchase/sale data). Farmbrite returns only active-status animals unless you filter by status (Sold, Deceased, Culled, Butchered, Archived...). GET /animals.

    Annotations the server declares

    • title: List animals
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_contactsList contacts (customers, suppliers, vendors): name, company, email, phone, type, label.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_contacts" says "list": a word for reading.

    What it can reach

    • private-dataThe name "farmbrite_list_contacts" says "list" and "contact": it reads contacts.
    • private-dataThe description's first sentence says "list" and "contact": it reads contacts.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "list" and "email": it reads inbound email, which other people can write.
    Description, as the server wrote it
    List contacts (customers, suppliers, vendors): name, company, email, phone, type, label. GET /contacts.

    Annotations the server declares

    • title: List contacts
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_cropsList crop plantings (plant, field/plot, bed, quantity, planting and expected harvest dates, growth stage).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_crops" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List crop plantings (plant, field/plot, bed, quantity, planting and expected harvest dates, growth stage). GET /crops.

    Annotations the server declares

    • title: List crop plantings
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_feedingsFeeding records (amount, cost, date, feed type, inventory used) of one animal or livestock group.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_feedings" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Feeding records (amount, cost, date, feed type, inventory used) of one animal or livestock group. GET /{animals|livestock_groups}/{id}/feedings.

    Annotations the server declares

    • title: List feedings
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_grazing_summaryGrazing status per field/pasture: animals present, days rested, rest days required, last grazed.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_grazing_summary" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Grazing status per field/pasture: animals present, days rested, rest days required, last grazed. GET /grazings.

    Annotations the server declares

    • title: List grazing summary
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_harvestsHarvest records (quantity, unit, grade, price, date, inventory added) of one animal or crop planting.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_harvests" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Harvest records (quantity, unit, grade, price, date, inventory added) of one animal or crop planting. GET /{animals|crops}/{id}/harvests.

    Annotations the server declares

    • title: List harvests
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_inventory_typesList inventory item types (feed, supplies, harvested products) with the quantity remaining, unit, value and low-stock alert level.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_inventory_types" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List inventory item types (feed, supplies, harvested products) with the quantity remaining, unit, value and low-stock alert level. GET /inventory_types.

    Annotations the server declares

    • title: List inventory items
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_livestock_groupsList livestock groups (id, name, type).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_livestock_groups" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List livestock groups (id, name, type). GET /livestock_groups.

    Annotations the server declares

    • title: List livestock groups
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_notesNotes (description, category, date, keywords) attached to an animal, field, plant type, crop planting or inventory type.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_notes" says "list": a word for reading.

    What it can reach

    • private-dataThe name "farmbrite_list_notes" says "list" and "note": it reads notes.
    • private-dataThe description's first sentence says "note": it reads notes.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Notes (description, category, date, keywords) attached to an animal, field, plant type, crop planting or inventory type. GET /{animals|plots|plants|crops|inventory_types}/{id}/notes.

    Annotations the server declares

    • title: List notes
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_ordersList sales orders (status, payment status, total, dates, contact, delivery type, invoice number).Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_orders" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "list" and "contact": it reads contacts.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List sales orders (status, payment status, total, dates, contact, delivery type, invoice number). GET /orders.

    Annotations the server declares

    • title: List orders
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_plantsList plant types/varieties (days to maturity, spacing, market price, harvest unit).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_plants" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List plant types/varieties (days to maturity, spacing, market price, harvest unit). GET /plants.

    Annotations the server declares

    • title: List plant types
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_plotsList fields/grow locations (title, type, size, status, grazing rest days).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_plots" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List fields/grow locations (title, type, size, status, grazing rest days). GET /plots.

    Annotations the server declares

    • title: List fields (plots)
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_tasksList tasks (title, description, status, priority, assignee, due/end time, checklist, linked animal/field/crop).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_tasks" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List tasks (title, description, status, priority, assignee, due/end time, checklist, linked animal/field/crop). GET /tasks.

    Annotations the server declares

    • title: List tasks
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_transactionsList income and expense transactions (type, amount, date, vendor, category, linked animal/field/plant, description).Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_transactions" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List income and expense transactions (type, amount, date, vendor, category, linked animal/field/plant, description). GET /transactions.

    Annotations the server declares

    • title: List transactions
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_treatmentsTreatment records (type, product, amount, cost, date, withdrawal date, technician) of one animal, field or crop planting.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_treatments" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Treatment records (type, product, amount, cost, date, withdrawal date, technician) of one animal, field or crop planting. GET /{animals|plots|crops}/{id}/treatments.

    Annotations the server declares

    • title: List treatments
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • farmbrite_list_warehousesList storage locations (warehouses) for inventory: name, description, internal id.Reads text others writeNo findings

    Why it is in this group

    • The name "farmbrite_list_warehouses" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    List storage locations (warehouses) for inventory: name, description, internal id. Use the ids when adding or removing inventory. GET /warehouses.

    Annotations the server declares

    • title: List storage locations
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

528 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 2 outbound tools breaks every one.

Reads private data6
Reads files, mail, messages, databases, secrets, calendars or repositories.
Can send data out2
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
deny to break every path
{
  "permissions": {
    "deny": [
      "mcp__farmbrite__farmbrite_create_contact",
      "mcp__farmbrite__farmbrite_create_order"
    ]
  }
}

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

No check matched anything in these tool definitions. That is not a safety guarantee.

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http farmbrite https://farmbrite.usefulapi.io/mcp
claude mcp add --transport http farmbrite https://farmbrite.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__farmbrite__farmbrite_list_animals",
      "mcp__farmbrite__farmbrite_get_animal",
      "mcp__farmbrite__farmbrite_list_livestock_groups",
      "mcp__farmbrite__farmbrite_get_livestock_group",
      "mcp__farmbrite__farmbrite_list_animal_measurements",
      "mcp__farmbrite__farmbrite_list_feedings",
      "mcp__farmbrite__farmbrite_list_grazing_summary",
      "mcp__farmbrite__farmbrite_list_plants",
      "mcp__farmbrite__farmbrite_list_crops",
      "mcp__farmbrite__farmbrite_get_crop",
      "mcp__farmbrite__farmbrite_list_plots",
      "mcp__farmbrite__farmbrite_get_plot",
      "mcp__farmbrite__farmbrite_list_harvests",
      "mcp__farmbrite__farmbrite_list_treatments",
      "mcp__farmbrite__farmbrite_list_notes",
      "mcp__farmbrite__farmbrite_list_contacts",
      "mcp__farmbrite__farmbrite_get_contact",
      "mcp__farmbrite__farmbrite_list_tasks",
      "mcp__farmbrite__farmbrite_get_task",
      "mcp__farmbrite__farmbrite_list_activities",
      "mcp__farmbrite__farmbrite_list_inventory_types",
      "mcp__farmbrite__farmbrite_get_inventory_type",
      "mcp__farmbrite__farmbrite_get_inventory_locations",
      "mcp__farmbrite__farmbrite_list_warehouses",
      "mcp__farmbrite__farmbrite_list_orders",
      "mcp__farmbrite__farmbrite_get_order",
      "mcp__farmbrite__farmbrite_list_transactions",
      "mcp__farmbrite__farmbrite_get_transaction"
    ],
    "ask": [
      "mcp__farmbrite__farmbrite_create_contact",
      "mcp__farmbrite__farmbrite_create_task",
      "mcp__farmbrite__farmbrite_create_transaction",
      "mcp__farmbrite__farmbrite_create_note",
      "mcp__farmbrite__farmbrite_add_inventory",
      "mcp__farmbrite__farmbrite_create_order",
      "mcp__farmbrite__farmbrite_create_animal",
      "mcp__farmbrite__farmbrite_add_animal_measurement",
      "mcp__farmbrite__farmbrite_create_harvest",
      "mcp__farmbrite__farmbrite_create_treatment"
    ],
    "deny": [
      "mcp__farmbrite__farmbrite_update_contact",
      "mcp__farmbrite__farmbrite_update_task",
      "mcp__farmbrite__farmbrite_remove_inventory",
      "mcp__farmbrite__farmbrite_update_order",
      "mcp__farmbrite__farmbrite_update_animal",
      "mcp__farmbrite__farmbrite_create_feeding"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as farmbrite. Review it before you use it.

Capability tags behind 44 rules
  • mcp__farmbrite__farmbrite_list_animals untrusted-input
  • mcp__farmbrite__farmbrite_get_animal untrusted-input
  • mcp__farmbrite__farmbrite_list_livestock_groups untrusted-input
  • mcp__farmbrite__farmbrite_get_livestock_group untrusted-input
  • mcp__farmbrite__farmbrite_list_animal_measurements untrusted-input
  • mcp__farmbrite__farmbrite_list_feedings untrusted-input
  • mcp__farmbrite__farmbrite_list_grazing_summary untrusted-input
  • mcp__farmbrite__farmbrite_list_plants untrusted-input
  • mcp__farmbrite__farmbrite_list_crops untrusted-input
  • mcp__farmbrite__farmbrite_get_crop untrusted-input
  • mcp__farmbrite__farmbrite_list_plots untrusted-input
  • mcp__farmbrite__farmbrite_get_plot untrusted-input
  • mcp__farmbrite__farmbrite_list_harvests untrusted-input
  • mcp__farmbrite__farmbrite_list_treatments untrusted-input
  • mcp__farmbrite__farmbrite_list_notes private-data, untrusted-input
  • mcp__farmbrite__farmbrite_list_contacts private-data, untrusted-input
  • mcp__farmbrite__farmbrite_get_contact private-data, untrusted-input
  • mcp__farmbrite__farmbrite_list_tasks untrusted-input
  • mcp__farmbrite__farmbrite_get_task untrusted-input
  • mcp__farmbrite__farmbrite_list_activities private-data, untrusted-input
  • mcp__farmbrite__farmbrite_list_inventory_types untrusted-input
  • mcp__farmbrite__farmbrite_get_inventory_type untrusted-input
  • mcp__farmbrite__farmbrite_get_inventory_locations untrusted-input
  • mcp__farmbrite__farmbrite_list_warehouses untrusted-input
  • mcp__farmbrite__farmbrite_list_orders private-data, untrusted-input
  • mcp__farmbrite__farmbrite_get_order private-data, untrusted-input
  • mcp__farmbrite__farmbrite_list_transactions untrusted-input
  • mcp__farmbrite__farmbrite_get_transaction untrusted-input
  • mcp__farmbrite__farmbrite_create_contact untrusted-input, outbound
  • mcp__farmbrite__farmbrite_update_contact untrusted-input
  • mcp__farmbrite__farmbrite_create_task untrusted-input
  • mcp__farmbrite__farmbrite_update_task untrusted-input
  • mcp__farmbrite__farmbrite_create_transaction untrusted-input
  • mcp__farmbrite__farmbrite_create_note untrusted-input
  • mcp__farmbrite__farmbrite_add_inventory untrusted-input
  • mcp__farmbrite__farmbrite_remove_inventory untrusted-input
  • mcp__farmbrite__farmbrite_create_order untrusted-input, outbound
  • mcp__farmbrite__farmbrite_update_order untrusted-input
  • mcp__farmbrite__farmbrite_create_animal untrusted-input
  • mcp__farmbrite__farmbrite_update_animal untrusted-input
  • mcp__farmbrite__farmbrite_add_animal_measurement untrusted-input
  • mcp__farmbrite__farmbrite_create_feeding untrusted-input
  • mcp__farmbrite__farmbrite_create_harvest untrusted-input
  • mcp__farmbrite__farmbrite_create_treatment untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/io.usefulapi/farmbrite/verify?hash=57417514abc857ddc93dd2dd0ed497d4ad69cd3257228af78784519e8e98ca2b" | jq -e '.changed == false'

Pinned hash 57417514abc8, from Oct 24, 2026, 13:20 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/io.usefulapi/farmbrite/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for io.usefulapi/farmbrite
[![anlyon.dev](https://anlyon.dev/badge/io.usefulapi/farmbrite.svg)](https://anlyon.dev/servers/io.usefulapi/farmbrite)

Source: MCP Registry · repository. Synced Oct 24, 2026, 13:18 UTC.