Skip to main content
Glama
soil-dev

capsulemcp

by soil-dev

add_note

Add a markdown note to a party, opportunity, or project, and optionally set a backdated entryAt for historical imports.

Instructions

Add a note to a party, opportunity, or project. Provide exactly one of partyId, opportunityId, or projectId. The note is always attributed to the API-token owner — there is no override for the author (a creatorId parameter would enable audit-attribution spoofing on shared-connector deployments, so it is intentionally not exposed). Optional entryAt lets you backdate the note's authored-at timestamp for legitimate historical-import workflows.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contentYesNote body text. Stored verbatim and treated as MARKDOWN — Capsule's web UI renders the markdown when displaying. Pass markdown source ('# Heading', '**bold**', '- bullet'), not HTML.
entryAtNoISO-8601 timestamp for when this note actually happened (e.g. '2024-03-15T14:30:00Z'). Defaults to now. Use this for backdating historical notes when migrating from another system. `entryAt` is preserved across subsequent update_entry calls; only `updatedAt` advances on edits. Note attribution flows to the API-token owner — there is no way to record a note as authored by a different user via this connector (a `creatorId` parameter would enable audit-attribution spoofing on shared-connector deployments, so it is intentionally not exposed).
partyIdNoLink note to a party (mutually exclusive with opportunityId/projectId)
projectIdNoLink note to a project (mutually exclusive with partyId/opportunityId)
opportunityIdNoLink note to an opportunity (mutually exclusive with partyId/projectId)
activityTypeIdNoCategorise the note under a custom activity type (Meeting, Call, ... — ids from list_activity_types). Omit for a plain Note (Capsule's default, activityType -1). Wire-verified: POST /entries accepts the id and the entry echoes {activityType: {id, name}}.
Install Server

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only indicate readOnlyHint=false and destructiveHint=false. The description adds critical behavioral detail: note attribution is forced to the API-token owner with no override, explicitly explaining why creatorId is not exposed (security rationale). It also discloses that entryAt persists across updates while updatedAt advances, and that content is treated as markdown. This goes well beyond the schema and annotations.

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?

The description is slightly lengthy but every sentence conveys necessary information: core purpose, constraint, attribution rationale, and parameter behavior. The most critical constraint (exactly one target) is front-loaded. No redundant filler; just a dense, well-organized paragraph.

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

Completeness4/5

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

For a create operation with no output schema, the description covers all parameters, usage constraints, and key edge cases (backdating, markdown, attribution). It doesn't mention response format, but that's acceptable given no output schema is present. Minor gaps like error handling are not critical for initial invocation. The tool is complete enough for an agent to call correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds nuance not present in the schema alone: the mutual exclusivity of the three ID parameters is reinforced but also clarifies the attribution rule for entryAt (preserved across update_entry) and the markdown handling. These are meaningful additions for correct usage, earning a 4.

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 states a clear verb-resource-target relationship: 'Add a note to a party, opportunity, or project.' It immediately distinguishes from sibling tools (e.g., add_party_email_address) by specifying the resource type and the three possible attachment targets. No ambiguity remains.

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

Usage Guidelines4/5

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

It provides a hard constraint ('Provide exactly one of partyId, opportunityId, or projectId') and explains when to use optional parameters (entryAt for backdating, activityTypeId for categorization). It doesn't explicitly contrast with other note-related tools, but the tool is unique enough that the constraint suffices.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/soil-dev/capsulemcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server