Skip to main content
Glama
Analog-Labs

Firestarter MCP Server

by Analog-Labs

firestarter_connect_shopify

Connect a seller's Shopify store to Firestarter to sync their catalog automatically. Check connection status and generate a one-click install link using the store handle.

Instructions

Connect a seller's Shopify store to Firestarter — step 1 of the Shopify flow: connect_shopify → (catalog syncs automatically) → firestarter_listings to see imported products → firestarter_sync_shopify to refresh after store edits → orders arrive via firestarter_seller_orders → firestarter_ship_order. Call with NO arguments first: if a store is already connected it returns the connection status, store name, and last sync time (and you're done); if not, it tells you to ask for the store handle. Once you have the handle, call again with shop_handle to mint a one-click install link — the seller clicks it, approves on Shopify, and their whole catalog syncs into Firestarter automatically (no tokens to paste). Use this whenever a seller mentions Shopify, wants to connect/link their store, or asks why their products aren't showing up. The store handle is the part before .myshopify.com in their Shopify admin URL (Settings > Domains > the permanent xxxxx.myshopify.com, NOT their custom domain). To force a fresh catalog pull on an already-connected store, use firestarter_sync_shopify instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
shop_handleNoOptional. The seller's Shopify store handle (e.g. 'matrix-store' from matrix-store.myshopify.com). Omit on the first call to check existing connection status — only needed when no store is connected yet. Accepts the bare handle or the full myshopify.com domain (it's normalized). If the seller doesn't know it, tell them: Shopify admin > Settings > Domains > the permanent .myshopify.com address.
Behavior5/5

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

Annotations say readOnlyHint=false and destructiveHint=false, and the description aligns by detailing the stateful behavior: checking existing connection, minting an install link, and triggering automatic catalog sync. It also reveals expected return values (connection status, store name, last sync time) and the no-token-paste aspect, adding genuine context beyond annotations.

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?

The description is a single dense paragraph, but every sentence carries necessary process information. It's front-loaded with the main purpose and then flows into the step-by-step logic. Slightly long relative to simpler tools, but justified by the multi-step behavior.

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?

The tool is step 1 of a Shopify integration flow, and the description covers the full sequence: connect → automatic sync → listings → sync → orders → ship. It explains prerequisites, the two-call pattern, what happens after the seller clicks the link, and mentions the return status when a store is already connected. Given 0 required params and no output schema, this is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description enriches the parameter meaning substantially: omitting shop_handle checks status; providing it mints the install link; it accepts bare handle or full domain and normalizes it; and it gives instructions for finding the handle. This goes far beyond the schema property 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?

The description clearly states the tool connects a seller's Shopify store to Firestarter, with a specific verb ('Connect') and resource ('a seller's Shopify store'). It distinguishes itself from siblings like firestarter_sync_shopify and firestarter_connect_tiktok/connect_store by explicitly mapping out the Shopify flow.

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?

Explicit guidance is provided: 'Use this whenever a seller mentions Shopify...' and it tells the agent to use firestarter_sync_shopify instead for refreshing an already-connected store. It also explains the two-step invocation (first call with no args, then with shop_handle).

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/Analog-Labs/firestarter-mcp'

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