FinerWorks MCP server
33 operations0 webhooks
Print-on-demand fulfilment - manage images, virtual inventory products, framing options, pricing, shipping rates and orders.
Try FinerWorks with your agent
Connect FinerWorks, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in FinerWorks on my account, then run one read-only example and show me the result.
FinerWorks tools and triggers
Tools are what your agent can do in FinerWorks through Corsair's MCP server. Triggers are the FinerWorks events a routine can start from.
Images
- AddWrite
Add up to five prepared images to a FinerWorks library
images.add
- DeleteDestructive
Delete image files by GUID, along with any virtual inventory products assigned to them
images.delete
- ListRead-only
List image files uploaded to the FinerWorks account, with pagination
images.list
- List File SelectionRead-only
List the image GUIDs grouped under a file-selection key
images.listFileSelection
- UpdateWrite
Update image metadata by GUID
images.update
- Update File SelectionWrite
Replace the image files held under a selection GUID
images.updateFileSelection
Orders
- Delete PendingDestructive
Remove orders that were saved as pending
orders.deletePending
- Fetch StatusRead-only
Get production status and tracking information for orders
orders.fetchStatus
- List Status DefinitionsRead-only
List every production status an order can have
orders.listStatusDefinitions
- Save PendingWrite
Save orders to temporary storage for review before submission
orders.savePending
- SubmitWrite
Submit up to five new orders for production
orders.submit
- Validate Recipient AddressRead-only
Validate a recipient address before submitting an order
orders.validateRecipientAddress
Account
- Get Company InfoRead-only
Get FinerWorks' site identifier, company address and business hours
account.getCompanyInfo
- Get UserRead-only
Get the authenticated FinerWorks account profile, including billing and business addresses
account.getUser
- Update App DetailsWrite
Update the calling application's name, description and live mode
account.updateAppDetails
- Update UserWrite
Update the FinerWorks account profile, including billing and payment information
account.updateUser
Framing
- Get Frame DetailsRead-only
Get dimensions, pricing, materials and imagery for a specific frame
framing.getFrameDetails
- List CollectionsRead-only
List available frame collections and categories
framing.listCollections
- List GlazingRead-only
List available glazing and glass options
framing.listGlazing
- List MatsRead-only
List matting specifications, colours and pricing
framing.listMats
Inventory
- DeleteDestructive
Delete virtual inventory products by SKU and disconnect their third-party sync
inventory.delete
- DisconnectWrite
Disconnect every virtual inventory item from a third-party platform
inventory.disconnect
- ListRead-only
List the virtual inventory products on the account, with pagination
inventory.list
- UpdateWrite
Update virtual inventory pricing, stock and third-party integrations
inventory.update
Products
- Get PricesRead-only
Get pricing for a set of FinerWorks product SKUs
products.getPrices
- List Media TypesRead-only
List printing substrates (canvas, paper, vinyl) and their product information
products.listMediaTypes
- List Product TypesRead-only
List printing categories such as Canvas Prints and Metal Prints
products.listProductTypes
- List Style TypesRead-only
List print formatting options including borders and canvas wraps
products.listStyleTypes
Galleries
- Add Or Update CollectionWrite
Create a personal gallery collection, or update one by supplying its id
galleries.addOrUpdateCollection
- ListRead-only
List GeoGalleries.com galleries, with optional filtering
galleries.list
- List ThemesRead-only
List the theme options available for gallery customisation
galleries.listThemes
Shipping
- Get Option IdsRead-only
List shipping method identifiers for cross-reference
shipping.getOptionIds
- List Options MultipleRead-only
Get shipping options and rates for a batch of orders
shipping.listOptionsMultiple
Connect FinerWorks to Claude, ChatGPT or Cursor
- 1
Connect FinerWorks in Corsair
Add your FinerWorks API key once in Corsair. Corsair stores the credential encrypted and makes the FinerWorks API calls for your agent, so it never goes into a prompt or a config file. Connect FinerWorks
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs FinerWorks. On a ChatGPT personal plan, connect FinerWorks here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, FinerWorks's read and write operations run right away and its 3 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/finerworks, add the FinerWorks plugin, and connect with an API key. Then call methods like corsair.finerworks.api.account.getCompanyInfo() from your app. Corsair syncs data per tenant.
Yes. FinerWorks requires an API key from your FinerWorks account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit FinerWorks, GitHub, Notion, Stripe, and the rest. Trigger FinerWorks from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for print-on-demand fulfilment - manage images, virtual inventory products, framing options, pricing, shipping rates and orders. Common builds include sync jobs, admin tooling, and agents that call FinerWorks APIs from your backend. Local DB entities let you query synced FinerWorks records without hitting the API on every read.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per FinerWorks API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/finerworks in the open repo. When FinerWorks ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your FinerWorks data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store FinerWorks data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put FinerWorks on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 3 destructive FinerWorks operations. You can change a link's mode at hub.corsair.dev/me.