Tutorial: Build an AI Collection Assistant with the MCP Server
The iwantmymtg-mcp server connects Claude to your IWMM collection, so you can look up cards, log what you own, check what it is worth, and set price alerts just by asking. This walkthrough takes you from zero to a real conversation in about ten minutes.
What you'll build
By the end you will have Claude Desktop wired to your account and will run one conversation that touches both read tools and write tools: find a card and its price, add copies to your inventory, see your portfolio value, and set an alert for a price drop. The same setup works in Claude Code and Cursor.
Prerequisites
- An IWMM account - sign up if you do not have one.
- An API key from /user/api-keys. The raw key is shown only once, so copy it somewhere safe.
- Claude Desktop (or Claude Code / Cursor) and Node 20 or newer.
The Free tier gives you 100 requests/day, which is plenty for this tutorial. See API pricing for higher limits.
1. Add the server to Claude Desktop
Open claude_desktop_config.json
(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json;
Windows: %APPDATA%\Claude\claude_desktop_config.json)
and add the iwmm server, pasting your key in place of iwm_live_...:
{
"mcpServers": {
"iwmm": {
"command": "npx",
"args": ["-y", "iwantmymtg-mcp"],
"env": {
"IWMM_API_KEY": "iwm_live_..."
}
}
}
}
Save the file and restart Claude Desktop. The first launch downloads the package via
npx, so give it a few seconds. This snippet is the
same one in the repository README;
if they ever differ, the README is the source of truth.
Prefer Claude Code or Cursor? The same block goes in .mcp.json
or .cursor/mcp.json. The full setup for each client is in the
MCP Server guide.
2. Confirm the tools loaded
In a new chat, ask Claude "what iwmm tools do you have?" It should list card and set lookups, inventory and transaction tools, portfolio breakdowns, and price alerts. If nothing shows up, double-check the JSON is valid and that you restarted the app after saving.
3. A real walkthrough
Here is a full exchange that exercises both read and write tools. Yours will read back slightly different prices, but the shape is the same.
You
Find Lightning Bolt and show me the cheapest printing.
Claude · calls search_cards, get_card_prices
Lightning Bolt has dozens of printings. The cheapest in normal (non-foil) is the Magic 2010 (M10) printing at about $1.20. The original Alpha (LEA) printing is the priciest. Want me to add one of these to your collection?
You
Add 4 copies of the M10 printing to my inventory.
Claude · calls add_inventory
Done - added 4x Lightning Bolt (M10, non-foil) to your inventory. You now hold 4 copies, worth roughly $4.80 at the current price.
You
What's my whole collection worth right now?
Claude · calls get_portfolio_summary
Your collection is worth about $1,312 across 268 cards. The largest single contributors are your Modern Horizons 3 cards. Want a breakdown by set?
You
Alert me if Lightning Bolt drops below $1.
Claude · calls create_price_alert
Set. I'll flag Lightning Bolt (M10) the next time its normal price falls below $1.00. You can see and manage alerts on your IWMM notifications page.
A note on writes
Inventory, transaction, and alert tools make real changes to your account - there is no dry-run mode in v1. Claude confirms before it writes, but treat it like running a command yourself: read what it proposes before approving. Read-only card, set, price, and portfolio lookups never change anything.
Where to go next
- Source and issues: github.com/matthewdtowles/iwantmymtg-mcp
- npm package: npmjs.com/package/iwantmymtg-mcp
- Per-client setup and the full tool list: MCP Server guide
- Prefer raw HTTP? The same data is in the API reference.