Skip to main content
Glama
Arsel-SA

Arsel MCP Server

Official
by Arsel-SA

Create Contact Property

create-contact-property

Define a custom contact field with a snake_case key, display name, and optional data type, description, or fallback value. The key and data type are fixed after creation.

Instructions

Define a custom contact field. field_key and data_type cannot be changed later.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
data_typeNoDefaults to string.
field_keyYessnake_case key, e.g. lifetime_value.
descriptionNo
display_nameYes
fallback_valueNoUsed in merge tags when a contact has no value.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false), lowering the bar. The description adds a genuinely non-obvious behavioral fact not present in any structured field: field_key and data_type are permanently immutable once created. It does not cover what happens on a duplicate field_key or what the call returns, so it is not a 5.

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?

Two short sentences, zero filler, and the irreversible constraint is front-loaded as the second sentence where an agent will read it before filling the schema.

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 5-parameter creation tool with no output schema, the description covers the single most consequential gotcha (immutability) but omits which params are required, duplicate-key behavior, and return shape. Annotations carry the safety profile, so this is minimally adequate rather than 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 description coverage is 60%, with field_key (pattern/example), data_type (enum + default), and fallback_value documented in the schema, but display_name and description undocumented. The description only touches field_key and data_type, and does so for immutability rather than semantics, so it roughly matches the baseline rather than compensating for the gap.

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?

The verb+resource is specific (define a custom contact field), and it is clearly distinct from create-contact, create-tag, and create-event among the siblings. It stops short of explicitly contrasting with update-contact-property, so an agent still has to infer the boundary from the name alone.

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?

There is no when-to-use statement, no mention of prerequisites, and no named alternative such as update-contact-property for existing fields. The only guidance is a post-hoc immutability warning, which is not usage routing.

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