Skip to main content
Glama
Unilytics MCP Server

Unilytics MCP Server

Official

register_project_file

Record a file already uploaded to a project via the upload URL so the project lists and can download it. Use the S3 key from step one plus a readable name to get a stable file ID.

Instructions

Step 2 of the upload: record a file already POSTed to the uploadUrl from upload_file_to_project (a 201), so the project lists it and it can be downloaded. Takes the s3_key from step 1 and a human-readable name (e.g. "Client X audit deck template"). Returns {file_id, name}; the file_id is stable and get_project_file takes it.

Input Schema

NameRequiredDescriptionDefault
nameYes
s3_keyYes
byte_sizeNo
project_idYes
content_typeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false; the description adds the genuinely useful context they don't carry — the two-step prerequisite (a prior 201 from step 1) and the exact return payload {file_id, name} with a note that file_id is stable and reusable. It omits duplicate-registration behavior, which matters given idempotentHint=false.

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?

Three sentences, front-loaded with the sequencing frame, then inputs, then the return contract. No filler; the example parenthetical for `name` earns its place. Slightly dense but well ordered.

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 mutating 5-parameter tool with zero schema descriptions and no output schema, the description covers the essentials: prerequisite step, key inputs, and return shape. The residual gap is the two optional metadata parameters (byte_size, content_type) and what happens on a second registration of the same s3_key.

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 coverage is 0%, so the description must carry semantics. It meaningfully documents the two non-obvious parameters — s3_key as coming from step 1 and name as human-readable with a concrete example — but project_id, byte_size, and content_type go entirely unexplained in both schema and description.

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 ('record a file already POSTed') and pins its role as 'Step 2 of the upload', which distinguishes it cleanly from upload_file_to_project (step 1) and get_project_file (retrieval). An agent can place it in the workflow without opening any schema.

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?

The precondition is explicit: only call this after upload_file_to_project returned a 201 with an uploadUrl, and pass the s3_key from that step. It also names get_project_file as the downstream consumer. It stops short of stating what to do on re-registration or failure, so not a full when/when-not rubric.

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

Deploy Server

Other Tools