Skip to main content
Glama

Automatic Video Face Detection & Blur MCP, Restore Original — NoonAI DIS

submit_encrypt_job

Submit a DIS anonymization job: syncTime → /request/encrypt → /sendMessage/encrypt.

Requires a valid asset_id from upload_file or upload_file_content. When that asset id exists in the gateway registry, the uploaded metadata (stored filename, width/height, checksum, file size) is treated as authoritative and mismatched caller values are rejected.

Use target_objects=["face"] when the workflow should stay a single MCP call that detects faces first and then blurs or redacts only those detected face regions, instead of chaining a separate detect tool plus blur tool or applying a full-image filter. Optional media_kind may be image or video. When provided it must match the uploaded asset metadata; the HTTP scope gate also uses upload metadata to require dis:encrypt:image or dis:encrypt:video for image-only/video-only clients.

source_file_path is optional for split flow. It is only used when a caller wants the gateway to re-read the local file size instead of reusing the persisted upload metadata.

Input Schema

NameRequiredDescriptionDefault
widthNo
heightNo
asset_idYes
checksumNo
key_nameYes
file_nameNo
file_typeNo
key_indexYes
media_kindNo
restorationNofalse
target_objectsNo
source_file_pathNo
encrypt_object_labelNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

No schema history has been recorded yet.

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description does carry real behavioral weight: it discloses that gateway-registry metadata is authoritative and that mismatched caller values are rejected, and it names the scope gate (dis:encrypt:image / dis:encrypt:video) that authorization depends on. However, for a mutating job-submission tool it omits job lifecycle semantics (async submission, polling via get_job_status), credit/cost implications implied by the billing siblings, and failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and the asset_id prerequisite are front-loaded, which is good. The opening endpoint chain ('syncTime' → /request/encrypt → /sendMessage/encrypt) is internal plumbing that adds little for an agent choosing and calling the tool, and the backtick-heavy formatting makes the text denser than it needs to be.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but the definition leaves significant gaps for a 13-parameter mutation tool with no annotations: two of the three required parameters (key_index, key_name) are never described, and there is no indication of job asynchrony or billing impact. An agent could construct a call but would be guessing at the meaning of required fields.

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 0%, so the description must compensate for all 13 parameters. It adds real meaning for asset_id, target_objects, media_kind, and source_file_path, and implies width/height/checksum/file_name are validated against upload metadata. It never mentions the other required parameters key_index and key_name, nor restoration, encrypt_object_label, or file_type.

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 opens with a specific verb+resource ('Submit a DIS anonymization job') and names the concrete pipeline it drives, so the agent knows exactly what operation is being performed. It also distinguishes itself from the sibling encrypt_image/encrypt_video path by explaining the target_objects=['face'] single-call flow. It stops short of a crisp one-line differentiation from those siblings.

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?

It states a hard prerequisite (a valid asset_id from upload_file or upload_file_content) and gives an explicit selection rule for target_objects=['face'] versus chaining a separate detect tool plus blur tool. What is missing is explicit guidance on when to call submit_encrypt_job versus calling encrypt_image or encrypt_video directly.

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