Skip to main content
Glama
christianclaudio

mcp-server-smartsheet-rm

Projects Create Project Assignment

projects_create_project_assignment

Assign a user to a project on the documented route POST /projects/{project_id}/assignments (dates: YYYY-MM-DD).

Instructions

Assign a user to a project on the documented route POST /projects/{project_id}/assignments (dates: YYYY-MM-DD).

Set allocation_mode and the matching value: percent (the reference documents it as a fraction from 0 to 1), hours_per_day, or fixed_hours for the fixed mode. allocation_mode is sent as given, because the reference names the fixed mode fixed in its description and fixed_hours in its schema. Percent mode is the default and requires percent; hours_per_day and the fixed mode require hours_per_day and fixed_hours. Without the matching value the call is refused before any request.

Input Schema

NameRequiredDescriptionDefault
percentNoShare of the user's time as a fraction from 0 to 1. Required when allocation_mode is `percent`, which is the default; without it the call is refused before any request is sent.
user_idYes
end_dateYes
project_idYes
start_dateYes
descriptionNo
fixed_hoursNo
bill_rate_idNo
hours_per_dayNo
allocation_modeNoAllocation mode, sent unchanged: `percent` (the default; `percent` is then required), `hours_per_day` (`hours_per_day` is then required), or the fixed mode, which the API reference names `fixed` in its description and `fixed_hours` in its enum (`fixed_hours` is then required).percent
status_option_idNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare the mutation profile (open-world, non-idempotent, non-destructive), so the bar is lower. The description adds real behavioral context: validation happens before any request is sent when the matching value is missing, and it discloses the mode-naming quirk between reference description and enum. It omits auth requirements and error/return 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?

Front-loads the core action and route, then explains the allocation rules. The middle sentence about fixed vs fixed_hours naming is dense but earns its place by preventing a real invocation error.

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?

The output schema exists so return values need no explanation, and the mutation profile is annotated. However, for an 11-parameter mutation at 18% schema coverage, the description leaves too many parameters and the sibling disambiguation unaddressed to be fully complete.

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 coverage is only 18%, so the description must compensate; it does well on the hard part (percent as fraction 0-1, allocation_mode value mapping, date format YYYY-MM-DD) but leaves roughly seven params (user_id, project_id, description, bill_rate_id, status_option_id, start/end dates) with no added meaning beyond a bare schema.

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

Purpose4/5

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

States a specific verb+resource (assign a user to a project) and even names the HTTP route, so an agent immediately understands the operation. It does not differentiate from close siblings like projects_create_assignment and projects_create_user_assignment, leaving ambiguity about which creation tool to pick.

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

Usage Guidelines2/5

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

Provides conditional guidance only for allocation_mode selection, which is really parameter semantics. It gives no when-to-use vs when-not guidance and never mentions the similar assignment-creation siblings, so an agent has no routing signal.

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

Deploy Server

Other Tools