Skip to main content
Glama

Create a job

kickserv_create_job
Destructive

WRITE: create a job (work order) for a customer. customer_id is the customer's internal id (from kickserv_get_customer), not the customer number; job_type_id is the job category. Set estimate to create it as an estimate. Kickserv: POST /{account}/jobs.xml.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoJob name/title.
ends_atNoWhen the job ends. A date/time string Kickserv can parse, e.g. `2026-10-02 09:30` or `10/2/2026 09:30am`.
durationNoJob duration.
estimateNoTrue to create the job as an estimate.
po_numberNoCustomer purchase-order number.
customer_idYesThe customer's internal `id` (NOT the customer_number).
descriptionNoJob description / work to be done.
job_type_idYesJob category (job type) id.
employee_idsNoEmployee `id`s (from kickserv_list_employees) to assign. Replaces the current assignment.
scheduled_onNoWhen the job is scheduled. A date/time string Kickserv can parse, e.g. `2026-10-02 09:30` or `10/2/2026 09:30am`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

The annotation only declares destructiveHint=true; the description adds real behavioral context by labeling this a WRITE, flagging the internal-id vs customer-number pitfall, and disclosing the underlying POST endpoint. It still omits whether the response returns a new job id, permission requirements, or duplicate-handling behavior.

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

Conciseness4/5

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

Three short sentences, front-loaded with the WRITE verb and the tool's purpose, with no filler. Slight redundancy with the schema descriptions on customer_id/job_type_id keeps it from a 5.

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

Completeness3/5

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

For a 10-parameter create tool with no output schema, the description covers purpose and ID sourcing but omits auth/permission expectations and any mention of what is returned (e.g. the new job id). It is workable but leaves an agent guessing about the post-call workflow.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 10 parameters, and the description's notes on customer_id, job_type_id, and estimate largely restate the schema descriptions. The endpooint reference is the only genuinely additive detail, so baseline 3 is right.

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 opens with a precise verb+resource ("create a job (work order) for a customer") and clarifies the domain term (work order). It also names the sibling used to source a required ID (kickserv_get_customer), which lets an agent distinguish it from read/update siblings at a glance.

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

Usage Guidelines3/5

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

The description explains how to source the required IDs and what the `estimate` flag does, which is useful context. However, it gives no explicit when-to-use or when-not-to-use guidance (e.g. vs kickserv_create_task or kickserv_update_job), leaving the routing decision to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.