ImageKit Public MCP Server - exposes search_docs and transformation_builder tools
Project description
ImageKit Public MCP Server
A Python MCP (Model Context Protocol) server that exposes ImageKit's documentation search and transformation builder as tools. Deployable to AWS Lambda via SAM.
Tools
search_docs
Search ImageKit documentation across guides, API references, SDK docs, and community content.
Parameters:
query(required): Search query stringsources(optional): Filter by source —imagekit_api_references,imagekit_community,imagekit_guides,imagekit_sdk
transformation_builder
Build ImageKit image/video transformation URLs from natural language descriptions.
Parameters:
query(required): Natural language description (e.g., "resize to 300x200 and add blur")src(optional): Source ImageKit URL to apply transformations tofetch_url_to_check(optional, default: true): Verify the generated URL works
Prerequisites
- Python 3.12+
- uv (Python package manager)
- AWS CLI + SAM CLI (for deployment)
- Docker (for SAM build)
Local Development
# Install dependencies
uv sync
# Copy and configure environment
cp .env.example .env
# Run the server locally (port 8000)
uv run python -m src.server
# Run tests
uv run pytest
# Lint
uv run ruff check src/ tests/
The MCP server will be available at:
- SSE endpoint:
http://localhost:8000/sse - Messages endpoint:
http://localhost:8000/messages/ - Health check:
http://localhost:8000/health
Deployment (AWS SAM)
# First time (guided setup)
./scripts/deploy.sh --guided
# Subsequent deploys
./scripts/deploy.sh
This deploys a Lambda function with:
- Lambda Web Adapter layer for SSE streaming
- Function URL (no API Gateway needed)
RESPONSE_STREAMinvoke mode for real-time streaming
Configuration
| Variable | Default | Description |
|---|---|---|
IMAGEKIT_API_BASE_URL |
https://imagekit-public-mcp-tools.stlmcp.com |
Upstream API base URL |
IMAGEKIT_API_HOST |
stage-ik-agent-service.imagekit.io |
Host header for upstream |
MCP_SERVER_NAME |
imagekit-mcp-server |
Server name in MCP protocol |
MCP_SERVER_VERSION |
1.0.0 |
Server version |
LOG_LEVEL |
INFO |
Logging level |
MCP Client Configuration
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"imagekit": {
"url": "https://<your-function-url>/sse"
}
}
}
Cursor
Add to MCP settings:
{
"mcpServers": {
"imagekit": {
"url": "https://<your-function-url>/sse"
}
}
}
Local (stdio via uv)
{
"mcpServers": {
"imagekit": {
"command": "uv",
"args": ["run", "python", "-m", "src.server"],
"cwd": "/path/to/this/project"
}
}
}
Project Structure
├── src/
│ ├── __init__.py
│ ├── server.py # MCP server + Starlette ASGI app
│ ├── client.py # Async HTTP client for upstream API
│ ├── config.py # Environment variable configuration
│ └── lambda_handler.py # Lambda entry point (uvicorn)
├── tests/
├── scripts/
│ └── deploy.sh # One-command SAM deployment
├── template.yaml # AWS SAM template
├── samconfig.toml # SAM deployment defaults
├── Dockerfile # Lambda container image
├── pyproject.toml # Project config + dependencies (uv)
├── .env.example # Environment variable reference
└── openapi.json # Upstream API spec (reference)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file imagekit_mcp_server-1.0.0.tar.gz.
File metadata
- Download URL: imagekit_mcp_server-1.0.0.tar.gz
- Upload date:
- Size: 54.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ece9d3177c7cf5f24781fec0e2763d51ae84adcf7627d87a6f6beee49999513b
|
|
| MD5 |
eede3a1db791ec825628dab8436e540c
|
|
| BLAKE2b-256 |
d1f9a1fc249de542c9fc0e09597afcd078dc55dbb0fa8837322608a3a4b5e024
|
File details
Details for the file imagekit_mcp_server-1.0.0-py3-none-any.whl.
File metadata
- Download URL: imagekit_mcp_server-1.0.0-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a96c61d94a0c986147920e77125ed3ac3a1293e1147d503445adb6bf21ded3f
|
|
| MD5 |
4ca9c9cd7adbd96ba3168aca24e8d2ff
|
|
| BLAKE2b-256 |
44a15ffcacbb1949cd3b3768a75d6b61e6d0140d4798e73f29a9343a2dfe9d5b
|