Skip to main content
Glama

List expected household papers

well_list_expected_documents
Read-only

List the papers Well filed from the person's mail in their personal space this month, and each regular sender whose monthly paper is expected, with its state this month. Use it for "retrouve mes papiers du mois", "which bills have not arrived this month" or "is my energy bill late" in a personal space. It reads stored documents only: it reads no mailbox, no bank payment and no supplier site.

filed_this_month: count is every paper that came by mail in current_month (UTC); papers lists the newest 20 at most, each with document_id, filename, received_at and sender_name (the issuer Well read on it, or null). truncated: true means the count holds more papers than the list.

regular_senders: the senders that sent a paper by mail in each of the 3 months of prior_months. Each has company_id, name, months_received, latest_usual_day (the latest day of month a paper came in those months) and state:

  • "arrived": this month's paper came.

  • "late": no paper this month and today is past latest_usual_day. It has not arrived yet: it may still come, or come by post. Never call it missing.

  • "not_due_yet": no paper this month and today is not past latest_usual_day. Never name it as late. A sender absent from the list sends on no regular monthly rhythm: never name it as expected. senders_truncated: true means the sender history hit its cap, so a regular sender may be missing from the list.

not_applicable: "not_personal_space" means the workspace is not the person's own space: its papers are company receipts, so no household papers answer exists for it.

An empty filed_this_month with no regular_senders means Well filed no paper from the mail in the window, not that the mailbox is connected and empty: check the mailbox connection before saying so.

status: "failed" means the read failed: the papers and the senders are unknown, never empty.

When the token authorizes one workspace, call this directly — no workspace call is needed first. When it authorizes several, this read will not guess which one you mean: pass workspace_id on the call.

Input Schema

NameRequiredDescriptionDefault
workspace_idNoTarget workspace. Omit when the token authorizes one workspace. Required when it authorizes several: this read reports one workspace's own figures and will not choose which.
conversation_idNoThe conversation id returned by the previous Well result, in its meta under well/conversation_id, in its structuredContent, or in its JSON text block. Pass it back on every call in the same conversation, including a call a card makes, so the chosen workspace and the earlier answers still apply. It decides the conversation on its own: nothing the host states about the session replaces it. Omit it only on the first call of a conversation.
workspace_scopeNoRestrict this call to the family: the token's primary workspace plus the company workspaces under it that you are a member of. Unrelated authorized workspaces drop out of the read; row reads merge across the family, while a per-workspace figure still reports exactly one workspace.

Output Schema

NameRequiredDescriptionDefault
errorNo
statusYes
successYes
prior_monthsNo
current_monthNo
not_applicableNo
conversation_idNoThe conversation this result belongs to. Pass it back as the conversation_id argument on every later Well call in the same conversation.
newly_connectedNoTools that connected to this workspace since the last result and that no session was told about yet, oldest first. Present only when at least one tool is new. The connected-line rule says when to tell an entry; when it does, one line per entry, in the person's language: "<name> is connected.". Never fold several entries into one sentence. Each entry comes back once, on one result only: never repeat its line later.
regular_sendersNo
filed_this_monthNo
senders_truncatedNo
resolved_workspaceNoThe workspace that answered, when the caller named none and the token authorizes several.
conversation_id_noteNoPresent only when the server opened a fresh lane, stating that no choice recorded earlier was read.
conversation_id_sourceNoWhere the conversation id came from: the host's own request meta, the caller's argument, or a fresh lane the server opened.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • removedOutput schema / properties / filed_this_month / properties / papers / items / properties / sender_name / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / filed_this_month / properties / papers / items / properties / sender_name / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / resolved_workspace / properties / name / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / resolved_workspace / properties / name / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare a read-only, closed-world, non-destructive read, and the description adds substantial behavior on top: per-field return semantics, the `late` vs `not_due_yet` distinction with explicit 'never call it missing' warnings, truncation flags, and the meaning of `status: failed` (unknown, never empty). It even discloses the truncation cap on sender history, which is not visible anywhere in the schema.

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-loaded with purpose, examples, then a bolded per-field breakdown, so an agent can skim to the section it needs. It is long and repeats the negative guidance three times ('never call it missing', 'never name it as late', 'never name it as expected'), which is defensible for safety-critical phrasing but slightly redundant.

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?

For a three-parameter read with an output schema, the description covers everything an agent needs: input routing, full return-field semantics, empty-vs-unknown distinction, failure semantics, and the non-personal-space case. Nothing material is left to inference.

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, but the description adds routing logic beyond the schema: call directly when the token authorizes one workspace, pass `workspace_id` when it authorizes several. It does not discuss `conversation_id` or `workspace_scope`, which the schema already documents at length, so it stops short of a 5.

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?

States a specific verb and resource with explicit scope: papers filed from mail in the personal space this month, plus regular senders with their state. It also draws a hard boundary against sibling reads by saying it reads no mailbox, no bank payment and no supplier site, so an agent can tell it apart from mailbox-search and document-acquisition tools.

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?

Gives concrete trigger phrases ('retrouve mes papiers du mois', 'which bills have not arrived', 'is my energy bill late'), names the personal-space precondition with a `not_applicable` fallback, and instructs when to pass `workspace_id` versus calling directly. It also tells the agent to check mailbox connection before reporting emptiness, which is exactly the disambiguation an agent needs.

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.

Resources