MCP Iconik
MCP (Model Context Protocol) server providing tools for the Iconik media asset management API.
Features
- Dual Transport Support: Both SSE (Server-Sent Events) and Streamable HTTP transports
- Docker Ready: Runs as a containerized service
- Comprehensive API Coverage: Tools for all major Iconik API endpoints
- Claude Code CLI Compatible: Works with Claude Code CLI
- LMStudio Compatible: Works with LMStudio via HTTP transport
Available Tools
Assets
iconik_list_assets- List assets with paginationiconik_get_asset- Get asset detailsiconik_create_asset- Create new asseticonik_update_asset- Update asset propertiesiconik_delete_asset- Delete an asset
Collections
iconik_list_collections- List collectionsiconik_get_collection- Get collection detailsiconik_create_collection- Create new collectioniconik_update_collection- Update collectioniconik_delete_collection- Delete collectioniconik_get_collection_contents- Get collection contentsiconik_add_to_collection- Add items to collection
Search
iconik_search- Search assets and collectionsiconik_list_saved_searches- List saved searchesiconik_get_saved_search- Get/execute saved searchiconik_create_saved_search- Create saved searchiconik_delete_saved_search- Delete saved search
Files & Storage
iconik_list_storages- List storage locationsiconik_get_storage- Get storage detailsiconik_get_asset_files- Get asset filesiconik_get_asset_formats- Get asset formatsiconik_get_asset_proxies- Get asset proxiesiconik_get_asset_keyframes- Get asset keyframes
Metadata
iconik_list_metadata_views- List metadata viewsiconik_get_metadata_view- Get metadata viewiconik_get_asset_metadata- Get asset metadataiconik_update_asset_metadata- Update asset metadata
Jobs
iconik_list_jobs- List jobsiconik_get_job- Get job detailsiconik_create_job- Create jobiconik_update_job- Update job
Users & Groups
iconik_list_users- List usersiconik_get_user- Get user detailsiconik_get_current_user- Get current usericonik_list_groups- List groupsiconik_get_group- Get group detailsiconik_list_shares- List sharesiconik_get_share- Get share detailsiconik_list_projects- List projectsiconik_get_project- Get project detailsiconik_list_webhooks- List webhooksiconik_get_webhook- Get webhook details
Generic
iconik_api_request- Make generic API requestsiconik_get_acls- Get object ACLsiconik_update_acls- Update object ACLs
Quick Start
Using Docker Compose
- Create a
.envfile with your Iconik credentials:
# Option 1: Use JWT API token
ICONIK_API=your_jwt_token_here
# Option 2: Use App ID and Auth Token
ICONIK_APP_ID=your_app_id
ICONIK_AUTH_TOKEN=your_auth_token
# Optional: Custom Iconik URL (default: https://app.iconik.io)
ICONIK_URL=https://app.iconik.io
- Build and run:
docker-compose up -d
- The server will be available at:
- SSE endpoint:
http://localhost:8000/sse - HTTP endpoint:
http://localhost:8000/mcp - Health check:
http://localhost:8000/health
Using Docker Directly
docker build -t mcp-iconik .
docker run -d \
-p 8000:8000 \
-e ICONIK_API=your_jwt_token \
--name mcp-iconik \
mcp-iconik
Local Development
# Install dependencies
pip install -e .
# Run the server
python -m mcp_iconik.server
Configuration with Claude Code CLI
Add to your Claude Code configuration (~/.claude/mcp.json):
{
"mcpServers": {
"iconik": {
"url": "http://localhost:8000/sse",
"transport": "sse"
}
}
}
Or for HTTP transport:
{
"mcpServers": {
"iconik": {
"url": "http://localhost:8000/mcp",
"transport": "http"
}
}
}
Configuration with LMStudio
LMStudio uses HTTP transport. Configure the MCP server URL as:
http://localhost:8000/mcp
API Endpoints
| Endpoint | Transport | Description | |----------|-----------|-------------| | /sse | SSE | Server-Sent Events connection | | /messages/ | SSE | SSE message handler | | /mcp | HTTP | Streamable HTTP transport | | /health | HTTP | Health check endpoint |
Environment Variables
| Variable | Description | Default | |----------|-------------|---------| | ICONIK_API | JWT API token (preferred) | - | | ICONIK_APP_ID | Application ID | - | | ICONIK_AUTH_TOKEN | Auth token | - | | ICONIK_URL | Iconik base URL | https://app.iconik.io | | HOST | Server host | 0.0.0.0 | | PORT | Server port | 8000 | | DEBUG | Enable debug mode | false |
Getting Iconik Credentials
- Log in to your Iconik instance
- Go to Admin Panel > Settings > Application Tokens
- Create a new application or use an existing one
- Create a new authentication token
- Copy the App ID and token
License
MIT











