Skip to main content
Glama
untitled-developers

Kockatoos Shopify MCP Server

upsert_theme_files

Create or update up to 50 theme files by providing content as text, base64, or a public URL.

Instructions

Create or update theme files (up to 50 per request). Provide file content as text or base64. Requires write_themes access scope.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
theme_idYesThe GID of the theme to update (e.g. 'gid://shopify/OnlineStoreTheme/123').
filesYesFiles to create or update (max 50).
Behavior3/5

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

Without annotations, the description must disclose behavioral traits. It mentions upsert behavior and a batch limit, but does not clarify side effects like whether existing files are overwritten or merged, nor does it describe the response. This is adequate but leaves gaps.

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?

Two sentences, front-loaded with purpose and key constraints. Every sentence provides essential information: action, limit, content format, and access scope. No wasted words.

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?

Given the tool's complexity (2 well-documented parameters, no output schema, no annotations), the description is fairly complete. It covers what, how many, how, and who. A minor gap is the absence of response details, but overall sufficient for an agent to use effectively.

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 100%, so the baseline is 3. The description reiterates content formats (text/base64) already covered in schema, but adds the batch limit, which is also present in schema (maxItems: 50). No additional semantic meaning beyond the schema.

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?

Description clearly states 'Create or update theme files' with a specific resource and action. The limit of 50 files per request distinguishes it from siblings like get_theme_files and delete_theme_files, which have different purposes.

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?

Provides explicit instructions on how to provide content (text or base64) and required access scope. However, it does not offer guidance on when to use this tool versus alternatives like update_theme, and could clarify that it is the primary method for theme file modifications.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/untitled-developers/shopify-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server