@inspekt-gg/mcp
Officialby inspekt-gg
README.md
# @inspekt-gg/mcp
MCP server for [inspekt.gg](https://inspekt.gg): CS2 skin stills and 3D viewer embed code from a Steam inspect link or a catalog id.
## Install
Node 18+. Key: [inspekt.gg/dashboard](https://inspekt.gg/dashboard) (free 10-day trial).
Claude Code:
```
claude mcp add inspekt -e INSPEKT_KEY=cs2pk_your_key_here -- npx -y @inspekt-gg/mcp
```
Claude Desktop, in `claude_desktop_config.json` (Settings, Developer, Edit Config):
```json
{
"mcpServers": {
"inspekt": {
"command": "npx",
"args": ["-y", "@inspekt-gg/mcp"],
"env": { "INSPEKT_KEY": "cs2pk_your_key_here" }
}
}
}
```
Restart Claude Desktop after saving.
## Quickstart
> Render steam://rungame/730/76561202255233023/+csgo_econ_action_preview 001807209A0228043004388F85D7F30340950512E67D72 from the front on its rarity plate at 640 by 400.
`render_still` returns the webp URL:
```
https://inspekt.gg/api/still?inspect=steam%3A%2F%2Frungame%2F730%2F76561202255233023%2F%2Bcsgo_econ_action_preview%20001807209A0228043004388F85D7F30340950512E67D72&view=front&bg=rarity&w=640&h=400&key=cs2pk_your_key_here
```
Test it from an `<img>` on an allowed origin; opened in the address bar it gets `403 origin_required`.
> Give me an embed for the same link, rotating.
`embed_snippet` returns:
```html
<div id="viewer" style="width:640px;height:400px"></div>
<script src="https://inspekt.gg/cs2embed.js"></script>
<script>
var viewer = CS2Embed.mount(document.getElementById('viewer'), {
inspect: 'steam://rungame/730/76561202255233023/+csgo_econ_action_preview 001807209A0228043004388F85D7F30340950512E67D72',
view: 'front',
autorotate: true,
key: 'cs2pk_your_key_here',
});
viewer.on('error', function (e) { console.error('embed refused:', e.code, e.message); });
viewer.on('fallback', function (e) { console.warn('item problem:', e.code); });
</script>
```
## Tools
| Tool | Returns | Key |
| --- | --- | --- |
| `render_still` | The `/api/still` URL and `<img>` tag for one item. `include_image` adds the picture. | `INSPEKT_KEY`, and `INSPEKT_SECRET` for `include_image` |
| `embed_snippet` | A `cs2embed.js` snippet, a raw iframe or a React component. | `INSPEKT_KEY` |
| `catalog_search` | Catalog ids and float ranges by name and weapon. | none |
| `inventory_lookup` | The CS2 items in a public Steam inventory. | `INSPEKT_SECRET` |
| `docs` | A section of the [agent pack](https://inspekt.gg/docs/inspekt-for-agents.md): parameters, bounds, refusal codes, limits. | none |
## Keys
`INSPEKT_KEY` is the publishable key (`cs2pk_`). `INSPEKT_SECRET` is the optional secret key (`cs2sk_`), set the same way. Both come from the dashboard.
Add the origin of each page that loads a still or an embed under Allowed origins in the dashboard.
MIT. Copyright (c) 2026 Inspekt.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo recent community issues