Skip to main content

MCP

Submission tools MCP

Use Streamable HTTP so AI clients can discover and call the same shared tool contract.

Connection details

Endpoint: /mcp

Every request requires a Better Auth session cookie or an API-key Bearer token. The server returns a requestId and rejects invalid or expired credentials.

MCP uploads use name, mimeType, and contentBase64 with upload_file; pass the returned file id to conversion tools.

INIT=$(curl -si -N "$BASE_URL/mcp" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"example","version":"1.0.0"}}}')
SESSION_ID=$(printf '%s' "$INIT" | awk 'tolower($0) ~ /mcp-session-id:/ {print $2}' | tr -d '\r')
curl -N "$BASE_URL/mcp" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Mcp-Session-Id: $SESSION_ID" \
  --data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
Discoverable tools

inspect_file

public · sync · 70s

Inspect uploaded bytes by fileId, or normalize explicitly supplied file facts.

upload_file

user · sync · 70s

Store an authenticated input file for later tool jobs.

validate_file

public · sync · 70s

Compare file facts with explicit submission rules.

compress_image

user · async · 70s

Compress an image to a verified byte target with optional downsampling.

inspect_image

user · async · 70s

Decode an uploaded image and inspect pixels, DPI and privacy metadata.

convert_image

user · async · 70s

Convert an image to JPEG, PNG, WebP or AVIF and remove private metadata.

resize_image

user · async · 70s

Resize an image proportionally with contain or cover fit.

crop_image

user · async · 70s

Crop an orientation-corrected image using validated pixel coordinates.

compress_pdf

user · async · 70s

Optimize a PDF and verify its actual output size and rules.

convert_image_to_pdf

user · async · 70s

Place one or more images into a checked PDF.

merge_pdfs

user · async · 70s

Merge PDFs in an explicit order and validate the result.

split_pdf

user · async · 70s

Split a PDF by a validated page range.

rotate_pdf

user · async · 70s

Rotate selected PDF pages and re-check the output.

create_submission_package

user · async · 70s

Build a named material package with a manifest and report.

get_job

user · sync · 70s

Read an authenticated asynchronous job status.

list_jobs

user · sync · 70s

List authenticated asynchronous jobs with cursor pagination.

cancel_job

user · sync · 70s

Cancel an authenticated non-terminal asynchronous job.

download_artifact

user · sync · 70s

Create an authenticated short-lived artifact download.

save_rule

user · sync · 70s

Save an authenticated reusable submission rule template.

list_rules

user · sync · 70s

List authenticated owner-scoped submission rule templates.

get_rule

user · sync · 70s

Read one authenticated owner-scoped submission rule template.

delete_rule

user · sync · 70s

Delete one authenticated owner-scoped submission rule template.

get_entitlements

user · sync · 70s

Read authenticated daily usage, quota and tool limits.