Skip to main content
Glama

Get project context (call this first)

get_context
Read-onlyIdempotent

Call first at session start for a repository briefing: standing rules, decisions, dead ends, open questions, open tasks with files, and the last handoff, budget-capped by focus.

Instructions

The session-start briefing: standing rules, decisions, dead ends, open questions, open tasks with their linked files and the last handoff. Call it first, with cwd. Capped: fifty open tasks, three entries per kind per task (one handoff), and a byte budget on every body -- notes, task bodies and log entries -- smaller with a focus. Nothing is truncated: every record keeps its id and head (first line), and a body of null means the budget was already spent, never that the record is empty -- get_task and get_context_note read the rest. open_tasks_omitted/log_omitted count records NOT here; context_omitted/task_bodies_omitted/log_bodies_omitted count records here without a body. focus (one sentence on what this session is for) spends the budget on what is relevant instead of what is newest; context_ranked_by/log_ranked_by say which you got. Open tasks untouched for 14+ days come back head-only in idle_tasks -- title, status, days idle, last handoff head -- and cost no budget. summary_missing: true means nobody has said what this repository is: update_project with one or two sentences once you know.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cwdNoAbsolute working directory, used if project is omitted
focusNoWhat this session is about, in a sentence. The note and log budgets are spent on what matches it instead of what is newest; it can only move a record up, never drop one.
modelNoYour model id, e.g. 'claude-opus-5'.
projectNoProject slug, name, or any absolute path inside the project
create_if_missingNoRegister a project if the path matches none. Defaults to true for an absolute path; needs `repo_root` or `repo_url` as well.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.4

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and idempotentHint; the description goes well beyond that with cap limits (fifty tasks, three entries per kind), byte budgets, the guarantee that nothing is truncated and every record keeps `id`/`head`, and the meaning of a null `body`. It also disambiguates the two families of omission counters and explains idle-task handling after 14 days.

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 purpose and the 'call it first' instruction are front-loaded before the truncation mechanics, and nearly every clause carries distinct operational information. The cost is a single dense block of backticked jargon that is hard to scan, and a few details (the `focus` semantics) are repeated from the schema.

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

Completeness5/5

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

There is no output schema, so the description must carry the return contract itself, and it does: record shape (id/head/body), both counter families, the idle_tasks shape, ranked_by fields, and the summary_missing signal with the remedy. An agent can interpret every branch of the response without further sources.

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 description coverage is 100%, so the baseline is 3, but the description adds real semantic weight: `focus` spends budget on relevance rather than recency and 'can only move a record up, never drop one', plus the interaction between `focus` and the ranked_by fields. It adds less on `model` and `create_if_missing`, which the schema already carries.

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?

Opens with a specific, concrete framing ('The session-start briefing') and enumerates exactly what it returns: standing rules, decisions, dead ends, open questions, open tasks with linked files, and the last handoff. It also distinguishes itself from siblings by naming get_task and get_context_note as the tools that read the bodies this one truncates.

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

Usage Guidelines5/5

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

'Call it first, with `cwd`' is an explicit ordering instruction, and the description routes follow-up reads to get_task/get_context_note and the summary gap to update_project. It also explains when `focus` is worth supplying versus letting recency drive the budget.

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