Skip to main content
Glama

brainkb_upload_status

State of one of your staged/submitted uploads.

`state` is `staged` (waiting for brainkb_ingest_upload), `submitting` (the server
is streaming it to the ingest API), `submitted` (accepted — `job_id` is set, poll
brainkb_job_status) or `failed` (the staged bytes were KEPT, so retry with
brainkb_ingest_upload rather than re-uploading).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
upload_idYes

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds useful context about failure behavior (staged bytes are KEPT, so retry with ingest_upload) and that 'submitted' sets job_id, which implies polling. However, it does not explicitly state whether the tool is read-only or has any side effects, though the status-check nature is implied.

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?

The description is concise and well-structured: a single summary sentence followed by an enumerated list of states with code formatting and clear guidance. Every sentence earns its place, and the front-loaded summary makes the tool's purpose immediately clear.

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 simple status-check tool with one parameter and no output schema, the description is complete. It explains all possible states and their meanings, including next steps and associated IDs (job_id). No output schema is present, so the description adequately covers what the agent can expect from the tool.

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?

The schema provides only the parameter name 'upload_id' with no description, and the description does not explicitly explain where to obtain it or its exact semantics. However, the phrase 'one of your staged/submitted uploads' gives context that the ID refers to an existing upload. With 0% schema coverage, the description partially compensates but could be more direct about the parameter.

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 clearly states the tool returns the state of a single upload, using a specific resource and scope. It distinguishes itself from siblings like brainkb_list_uploads (which likely lists all uploads) and brainkb_job_status (which is for jobs) by focusing on upload state transitions and referencing related 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?

The description provides explicit guidance on when to use this tool: it describes each state and what action to take next, such as waiting for brainkb_ingest_upload, polling brainkb_job_status, or retrying with brainkb_ingest_upload rather than re-uploading. This effectively tells the agent how to respond based on the state, serving as clear usage instructions.

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.

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, such as user management (activate, ban, assign role) vs. space management (create, add member, set visibility) vs. ingest/jobs (ingest_files, job_status, recover). A few pairs like grant_capability vs. grant_role_capability are similar but descriptions clarify the target, so an agent should be able to choose correctly.

Naming Consistency4/5

All tools are prefixed with brainkb_ and the large majority follow a verb_noun pattern (e.g., add_space_member, list_tokens, revoke_token). Some exceptions like brainkb_delta, brainkb_search, brainkb_whoami, and brainkb_capabilities break the pattern, but these are few and still readable.

Tool Count2/5

With 49 tools, the server is far above the 25+ threshold for 'too many'. While the broad scope (user admin, spaces, graphs, ingest, provenance, auth) justifies many operations, the sheer number makes it heavy and potentially unwieldy for an agent to navigate.

Completeness3/5

The tool set covers a wide range of use cases: user/role/capability management, space administration, graph registration, ingest, job monitoring, provenance, search, and SPARQL. However, there are notable gaps such as removing a space member, deleting a space, or updating space metadata, which could leave agents without a way to fully manage the lifecycle of a space.