{"_id":"@alex-gon/tgc-mcp-server","_rev":"4-e6ad527d62693d79732e65ca7fe27544","name":"@alex-gon/tgc-mcp-server","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"@alex-gon/tgc-mcp-server","version":"0.1.0","keywords":["mcp","mcp-server","thegamecrafter","boardgames","tabletop"],"author":{"url":"https://github.com/alex-gon","name":"Alex Stevens","email":"alex-gon@users.noreply.github.com"},"license":"MIT","_id":"@alex-gon/tgc-mcp-server@0.1.0","maintainers":[{"name":"alex-gon","email":"al.stevensg@gmail.com"}],"homepage":"https://github.com/alex-gon/thegamecrafter-mcp-server#readme","bugs":{"url":"https://github.com/alex-gon/thegamecrafter-mcp-server/issues"},"bin":{"tgc-mcp-server":"dist/index.js"},"dist":{"shasum":"96b5a2ff0e49250b6e932ac3178a400b0408e29e","tarball":"https://registry.npmjs.org/@alex-gon/tgc-mcp-server/-/tgc-mcp-server-0.1.0.tgz","fileCount":59,"integrity":"sha512-aRTCoD5o/jf+gQI5yIdbizi2bPYwNyKgdimJlgiNQL4bHFBVsekhH4Uf2VsKPZAVawFJP4+NtuOBforu/M3+rQ==","signatures":[{"sig":"MEUCIH0gja1LCUqyGYY/KoDa29eHnxoGb72iIA91vSEpUFWeAiEA9+twwsXy/lb2jetr86/s13/HiROkPgyU41RPbJauKXk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118485},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"fe9bb597f1d51546ebacd33d27668ff169f3a1a1","scripts":{"dev":"tsx --env-file=.env src/index.ts","test":"vitest run","build":"tsc","start":"node dist/index.js","test:watch":"vitest","prepublishOnly":"npm run test && npm run build"},"_npmUser":{"name":"alex-gon","email":"al.stevensg@gmail.com"},"repository":{"url":"git+https://github.com/alex-gon/thegamecrafter-mcp-server.git","type":"git"},"_npmVersion":"11.7.0","description":"MCP server connecting Claude to The Game Crafter API for designing, managing, and pricing tabletop games","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.3.6","image-size":"^2.0.2","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.1.0","typescript":"^5.9.3","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tgc-mcp-server_0.1.0_1773716042786_0.03171813336113827","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@alex-gon/tgc-mcp-server","version":"0.1.1","keywords":["mcp","mcp-server","thegamecrafter","boardgames","tabletop"],"author":{"url":"https://github.com/alex-gon","name":"Alex Stevens","email":"alex-gon@users.noreply.github.com"},"license":"MIT","_id":"@alex-gon/tgc-mcp-server@0.1.1","maintainers":[{"name":"alex-gon","email":"al.stevensg@gmail.com"}],"homepage":"https://github.com/alex-gon/thegamecrafter-mcp-server#readme","bugs":{"url":"https://github.com/alex-gon/thegamecrafter-mcp-server/issues"},"bin":{"tgc-mcp-server":"dist/index.js"},"dist":{"shasum":"29574666812416941b5677f9ebf03ea23e44cba1","tarball":"https://registry.npmjs.org/@alex-gon/tgc-mcp-server/-/tgc-mcp-server-0.1.1.tgz","fileCount":59,"integrity":"sha512-CRanqV702AXECHMDlUCwq8RSD8OkFF8hW4B/0RRhud0sN3pKC0O1tyD7Nhm0t/ZSV/hgaEf4y2CHBCIWOs6mpA==","signatures":[{"sig":"MEQCIAZvMZg+oMWpHmF8r6OY5AJBy2xnKMrF6AJQcxLAby9BAiBuWNm7vIEeUsgfbVDPLTrtSTNsZH1CE3icxjDgV0+Osg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119056},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"003511d3306db7adc73acdb023d2503ce7b046b2","mcpName":"io.github.alex-gon/thegamecrafter","scripts":{"dev":"tsx --env-file=.env src/index.ts","test":"vitest run","build":"tsc","start":"node dist/index.js","test:watch":"vitest","prepublishOnly":"npm run test && npm run build"},"_npmUser":{"name":"alex-gon","email":"al.stevensg@gmail.com"},"repository":{"url":"git+https://github.com/alex-gon/thegamecrafter-mcp-server.git","type":"git"},"_npmVersion":"11.7.0","description":"MCP server for The Game Crafter API — design, manage, and price tabletop games through AI","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.3.6","image-size":"^2.0.2","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.1.0","typescript":"^5.9.3","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tgc-mcp-server_0.1.1_1773752467703_0.9288465696346964","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@alex-gon/tgc-mcp-server","version":"0.2.0","keywords":["mcp","mcp-server","thegamecrafter","boardgames","tabletop"],"author":{"url":"https://github.com/alex-gon","name":"Alex Stevens","email":"alex-gon@users.noreply.github.com"},"license":"MIT","_id":"@alex-gon/tgc-mcp-server@0.2.0","maintainers":[{"name":"alex-gon","email":"al.stevensg@gmail.com"}],"homepage":"https://github.com/alex-gon/thegamecrafter-mcp-server#readme","bugs":{"url":"https://github.com/alex-gon/thegamecrafter-mcp-server/issues"},"bin":{"tgc-mcp-server":"dist/index.js"},"dist":{"shasum":"18f6e6a6b65b137b801ffea54df539dc9b40f067","tarball":"https://registry.npmjs.org/@alex-gon/tgc-mcp-server/-/tgc-mcp-server-0.2.0.tgz","fileCount":59,"integrity":"sha512-/np0HXV/XNvlBgtBe7LIeIGGt3ADxw0cCxb3/kbF7WrSqCHVoxQ/iis5G86GchIME5mK94Iz+TX7KL8phCgxtw==","signatures":[{"sig":"MEYCIQCjaL/8CuxNGm5zQx/4akInz4IPG5b/91tZMrRL1neiOAIhAPpL0S368lIYIBRJFJtZ+CDz9HCJ8CjTEy9a0xzMSenD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122726},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"7762c372927bd838ff47d4169aa8312b23000958","mcpName":"io.github.alex-gon/thegamecrafter","scripts":{"dev":"tsx --env-file=.env src/index.ts","test":"vitest run","build":"tsc","start":"node dist/index.js","test:watch":"vitest","prepublishOnly":"npm run test && npm run build"},"_npmUser":{"name":"alex-gon","email":"al.stevensg@gmail.com"},"repository":{"url":"git+https://github.com/alex-gon/thegamecrafter-mcp-server.git","type":"git"},"_npmVersion":"11.7.0","description":"MCP server for The Game Crafter API — design, manage, and price tabletop games through AI","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.3.6","image-size":"^2.0.2","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.1.0","typescript":"^5.9.3","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/tgc-mcp-server_0.2.0_1775102045202_0.023077954214691943","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@alex-gon/tgc-mcp-server","version":"0.2.1","mcpName":"io.github.alex-gon/thegamecrafter","description":"MCP server for The Game Crafter API — design, manage, and price tabletop games through AI","main":"dist/index.js","bin":{"tgc-mcp-server":"dist/index.js"},"publishConfig":{"access":"public"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsx --env-file=.env src/index.ts","test":"vitest run","test:watch":"vitest","prepublishOnly":"npm run test && npm run build"},"keywords":["mcp","mcp-server","thegamecrafter","boardgames","tabletop"],"author":{"name":"Alex Stevens","email":"alex-gon@users.noreply.github.com","url":"https://github.com/alex-gon"},"license":"MIT","type":"module","repository":{"type":"git","url":"git+https://github.com/alex-gon/thegamecrafter-mcp-server.git"},"bugs":{"url":"https://github.com/alex-gon/thegamecrafter-mcp-server/issues"},"homepage":"https://github.com/alex-gon/thegamecrafter-mcp-server#readme","engines":{"node":">=18.0.0"},"dependencies":{"@modelcontextprotocol/sdk":"^1.27.1","image-size":"^2.0.2","zod":"^4.3.6"},"devDependencies":{"@types/node":"^25.5.0","tsx":"^4.21.0","typescript":"^5.9.3","vitest":"^4.1.0"},"gitHead":"2d4813c071c0c8e781a209e37f3a0c85710f7370","types":"./dist/index.d.ts","_id":"@alex-gon/tgc-mcp-server@0.2.1","_nodeVersion":"22.22.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-vlm+bLkHzuvpX4JgwtzuuoM7+aEoxtHPmDvD31kViRVin1jYYLs50vsypTwVi0Yq2IJWGoB239vcDd6DjHSfJQ==","shasum":"a5e17c13f1c0695c81bdd2973ee2c644d870633a","tarball":"https://registry.npmjs.org/@alex-gon/tgc-mcp-server/-/tgc-mcp-server-0.2.1.tgz","fileCount":59,"unpackedSize":124017,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIC5mTBA6lZH1GYjyY/uXHFQEkpGv1C35k+j2Gtw0phDCAiBTdBYYnmiPCFzauUrhkZZBXgrUAh4QBFF/10WllJwn9g=="}]},"_npmUser":{"name":"alex-gon","email":"al.stevensg@gmail.com"},"directories":{},"maintainers":[{"name":"alex-gon","email":"al.stevensg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tgc-mcp-server_0.2.1_1775106856649_0.31870663824841605"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T02:54:02.730Z","modified":"2026-04-02T05:14:16.912Z","0.1.0":"2026-03-17T02:54:02.920Z","0.1.1":"2026-03-17T13:01:07.883Z","0.2.0":"2026-04-02T03:54:05.388Z","0.2.1":"2026-04-02T05:14:16.806Z"},"bugs":{"url":"https://github.com/alex-gon/thegamecrafter-mcp-server/issues"},"author":{"name":"Alex Stevens","email":"alex-gon@users.noreply.github.com","url":"https://github.com/alex-gon"},"license":"MIT","homepage":"https://github.com/alex-gon/thegamecrafter-mcp-server#readme","keywords":["mcp","mcp-server","thegamecrafter","boardgames","tabletop"],"repository":{"type":"git","url":"git+https://github.com/alex-gon/thegamecrafter-mcp-server.git"},"description":"MCP server for The Game Crafter API — design, manage, and price tabletop games through AI","maintainers":[{"name":"alex-gon","email":"al.stevensg@gmail.com"}],"readme":"# The Game Crafter MCP Server\n\n[![npm](https://img.shields.io/npm/v/@alex-gon/tgc-mcp-server)](https://www.npmjs.com/package/@alex-gon/tgc-mcp-server)\n[![MCP Registry](https://img.shields.io/badge/MCP_Registry-active-green)](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.alex-gon/thegamecrafter)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![CI](https://github.com/alex-gon/thegamecrafter-mcp-server/actions/workflows/ci.yml/badge.svg)](https://github.com/alex-gon/thegamecrafter-mcp-server/actions)\n[![alex-gon/thegamecrafter-mcp-server MCP server](https://glama.ai/mcp/servers/alex-gon/thegamecrafter-mcp-server/badges/score.svg)](https://glama.ai/mcp/servers/alex-gon/thegamecrafter-mcp-server)\n\nAn MCP server that connects AI assistants to [The Game Crafter](https://www.thegamecrafter.com/) API, letting you design, manage, and price tabletop games through natural conversation.\n\nBrowse the component catalog, create game projects, add card decks and boards, upload artwork, and get instant pricing estimates — all through your AI assistant.\n\n[![The Game Crafter MCP server](https://glama.ai/mcp/servers/alex-gon/thegamecrafter-mcp-server/badges/card.svg)](https://glama.ai/mcp/servers/alex-gon/thegamecrafter-mcp-server)\n\n## Who it's for\n\nIndie board game designers, tabletop creators, and TGC users who want to manage their projects through an AI assistant instead of navigating the TGC web interface manually.\n\n## Prerequisites\n\n- **Node.js** 18 or later\n- A **TGC account** — [sign up here](https://www.thegamecrafter.com/)\n- A **TGC API key** — [generate one here](https://www.thegamecrafter.com/account/apikeys)\n\n## Installation\n\n### Option 1: Remote (hosted on Apify) — no install needed\n\nConnect to the hosted server at:\n\n```\nhttps://chillbot3000--tgc-mcp-server.apify.actor/mcp\n```\n\nNo local setup required. Provide your TGC credentials when you call the `authenticate` tool. Usage is billed per operation via Apify's pay-per-event model (~$0.09 per typical session).\n\nAlso available on [Glama Connectors](https://glama.ai/mcp/connectors).\n\n### Option 2: Local (via npx)\n\nAdd the server to your Claude Desktop configuration (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS):\n\n```json\n{\n  \"mcpServers\": {\n    \"thegamecrafter\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@alex-gon/tgc-mcp-server\"],\n      \"env\": {\n        \"TGC_API_KEY_ID\": \"your-api-key-id\",\n        \"TGC_USERNAME\": \"your-tgc-username\",\n        \"TGC_PASSWORD\": \"your-tgc-password\"\n      }\n    }\n  }\n}\n```\n\nRestart Claude Desktop. The server will be downloaded automatically and appear in your MCP connections.\n\n<details>\n<summary>Alternative: install from source</summary>\n\n```bash\ngit clone https://github.com/alex-gon/thegamecrafter-mcp-server.git\ncd thegamecrafter-mcp-server\nnpm install && npm run build\n```\n\nThen use `\"command\": \"node\"` and `\"args\": [\"/absolute/path/to/dist/index.js\"]` in the config above.\n</details>\n\n## Configuration\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `TGC_API_KEY_ID` | Yes | Your TGC API key ID |\n| `TGC_USERNAME` | Yes | Your TGC account username |\n| `TGC_PASSWORD` | Yes | Your TGC account password |\n| `TGC_API_BASE` | No | API base URL (defaults to `https://www.thegamecrafter.com/api`) |\n| `TGC_UPLOAD_BASE_DIR` | No | Restrict file uploads to this directory (defaults to working directory) |\n\nSee `.env.example` for a template.\n\n## Available tools\n\n### Tools\n\n| Tool | Description | Auth |\n|------|-------------|------|\n| `authenticate` | Create a TGC session (accepts credentials as params or uses env vars) | No |\n| `logout` | Destroy the current TGC session | Yes |\n| `get_game_catalog` | Browse printable component types (cards, boards, boxes) | No |\n| `get_component_sizes` | Get pixel dimensions and finished inches for component types | No |\n| `get_component_details` | Get detailed info for a component type or game part | No |\n| `get_my_designers` | List designer profiles for the authenticated user | Yes |\n| `get_my_games` | List all games for a designer (paginated) | Yes |\n| `get_game_details` | Get full game info with components, files, and pricing | Yes |\n| `create_game` | Create a new game project under a designer | Yes |\n| `update_game` | Update a game's name, description, or visibility | Yes |\n| `delete_game` | Permanently delete a game project | Yes |\n| `add_component_to_game` | Add a printable component or stock part to a game | Yes |\n| `upload_file` | Upload an image to a TGC folder (from disk or URL) | Yes |\n| `get_pricing_estimate` | Get per-component cost breakdown for a game | Yes |\n\n### Resources\n\n| URI | Description |\n|-----|-------------|\n| `tgc://catalog` | Full catalog of printable component types (cached 30 min) |\n| `tgc://game/{id}/summary` | Complete summary of a game project |\n| `tgc://component-sizes` | Pixel dimensions for all component types (cached 30 min) |\n\n### Prompts\n\n| Prompt | Description |\n|--------|-------------|\n| `new_game_setup` | Guided workflow for creating a complete game project with components |\n| `estimate_game_cost` | Step-by-step cost estimation for an existing game |\n\n## Example prompts\n\nTry saying these to your AI assistant:\n\n- \"Show me all my games on The Game Crafter with their component lists\"\n- \"Create a new card game called Stellar Drift with a standard poker deck and tuck box\"\n- \"What pixel dimensions do I need for a poker card face image?\"\n- \"Upload this image and assign it as the front face of my card deck\"\n- \"Estimate the cost of my game based on its current components\"\n- \"Help me set up a new game project from scratch — walk me through it\"\n- \"What component types are available for board games?\"\n- \"Delete my test game project\"\n\n## Limitations\n\n- **Rate limits** — The server enforces 3 requests/second to TGC (below their 4/sec limit) with per-session budgets of 500 reads and 200 writes.\n- **Authentication** — Credentials can be passed as `authenticate` tool parameters (required for remote usage) or via environment variables (for local stdio). OAuth 2.1 support is planned for a future release.\n- **File uploads** — Maximum 50 MB per file. Images must be between 50x50 and 10,000x10,000 pixels. Supported formats: PNG, JPG, GIF, BMP, TIFF, SVG, WebP, PDF.\n- **Transport** — Stdio for local usage. Remote HTTP available via the [hosted Apify endpoint](https://chillbot3000--tgc-mcp-server.apify.actor/mcp).\n- **Read-only catalog** — The component catalog and pricing come from TGC and cannot be modified.\n\n## Contributing\n\nBug reports and pull requests are welcome. Please open an issue first to discuss what you'd like to change.\n\nTo run the development server:\n\n```bash\ncp .env.example .env    # fill in your credentials\nnpm run dev             # starts with tsx + hot reload\nnpm test                # run the test suite\n```\n\n## License\n\n[MIT](LICENSE)","readmeFilename":"README.md"}