Skip to main content
Glama

Log a session

create_session

Put a play date in the journal, with a title if it has one. Logging the same date twice is the same session. GM only. Returns: The session.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "campaign": "<campaign>",
      "date": "<date>"
    },
    "name": "create_session"
  }
}

Input Schema

NameRequiredDescriptionDefault
dateYesThe play date.
titleNoWhat the session turned on.
campaignYesThe campaign, by its slug (what its link says) or its id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Beyond the annotations it discloses two useful behaviors: the GM-only permission barrier and the repeat-date rule ("Logging the same date twice is the same session"). That repeat rule sits in tension with idempotentHint=false, since deduping by date is essentially idempotent semantics — the agent cannot tell whether the second call errors, returns the existing session, or silently no-ops. It also does not say whether the created session is public to players or what happens with an invalid campaign slug.

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?

Four short sentences, front-loaded with the action, then behavior, then permission, then return value — a sensible order with no filler. The only looseness is the fictional phrasing ("play date," "journal") where "session" would be tighter for an agent matching against sibling names.

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 three-parameter create tool with no output schema, the description covers the essentials: what it makes, that GM permission is required, that dates are unique keys, and that it returns the session object. The one unresolved gap is duplicate handling (error vs. return existing), which matters because callers will hit it routinely.

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 defines date format and campaign slug-or-id lookup, making 3 the baseline. The description adds only marginal meaning: that the title is genuinely optional ("if it has one") and that date is the identity key for deduplication. It adds no format or constraint detail beyond the 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?

The description gives a concrete action and object ("Put a play date in the journal"), which maps onto creating a session record despite the in-fiction wording "journal" and "play date." It is clearly distinguishable from update_session, get_session, and list_sessions, since this is the only one that adds a new dated entry. The flavor language costs a little precision but the intent is still unambiguous.

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?

"GM only" states a real prerequisite that an agent needs before calling, which is more than most sibling tools offer. However, it never contrasts with update_session (what to do if the session already exists) or add_session_note, and the duplicate-date rule is stated as behavior rather than as guidance on when to call this vs. something else. Usage is implied rather than spelled out.

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.