ColorMCP
Model Context Protocol · Color Science · CMYK & RGB Calibration · Free

Add precise Color Science
to your AI.

ColorMCP is an open MCP server that gives any tool-capable LLM access to 70+ professional color conversion, print calibration, and measurement functions — including CMYK, 7-Color, RGB, and Spot color press calibration — with full CIE precision.

Powered by Reprointelligence

Connect Now See All Tools

Precise color science and smart print calibration, finally accessible to AI

Large language models are powerful reasoners — but they have no reliable built-in knowledge of CIE color mathematics. They hallucinate Lab values, confuse illuminants, and get conversion formulas wrong. ColorMCP fixes that by exposing a rigorously implemented, standards-correct set of color tools directly to your LLM via the Model Context Protocol.

🔬

CIE Standards-Correct

CIELAB, CIEXYZ, CIELUV, xyY, CCT, ΔE2000, JzAzBz, CIECAM02 + CAM02-UCS, and CIECAM16 implemented to specification — not approximated. D50 and D65 illuminants, Bradford chromatic adaptation.

🔗

Smart Chain Finding

Ask for any from→to conversion. The built-in BFS router finds the correct sequence of tool calls and tells the LLM exactly which steps to execute — in order.

Zero Setup

Point your MCP client at colormcp.colorcontrol.ai/free and start converting. No API keys, no accounts, no API-limit surprises for reasonable use.


LLMs struggle with color math

Without ColorMCP, your AI is answering to your color related questions based on its training data only. The answers are mostly incorrect. Ask your AI to convert a CIE Lab value to XYZ and it will likely give you a plausible-looking but incorrect answer. Ask it to compare two print colors using ΔE2000 and the result is unreliable. Ask what the correlated color temperature of a CIE D50 illuminant is — you might get a confident wrong answer.

ColorMCP solves this problem. It integrates via MCP protocol into your AI workflow and provides a set of tools that allow your AI to perform accurate color calculations and conversions.

Hallucinated Conversions

Models interpolate instead of computing. The result looks reasonable but fails in production color workflows where ΔE < 1 matters.

🌡️

Illuminant Confusion

D50 vs D65 is routinely mixed up. Chromatic adaptation (Bradford) is either ignored or applied incorrectly, leading to systematic color errors.

🖨️

No Print Domain Knowledge

ISO 12647 / TTVP-S calibration math, Fogra standard aim values, and press calibration corrections are simply not in any model's training data with usable precision.


What you can ask your AI to do

01

Convert a print color to web

"Convert Lab 55 -5 38 (D50) to sRGB for use on our website." → correct CIELAB → XYZ → Bradford D65 → sRGB chain, every time.

02

Measure color difference

"What is the ΔE2000 between our target Lab 62 14 -22 and the measured Lab 61 15 -20?" → ΔE2000 = 1.3, just above the just-noticeable-difference threshold.

03

Identify light source temperature

"What is the correlated color temperature of a CIE D65 illuminant in Kelvin?" → Robertson CCT algorithm, 6504 K.

04

Press calibration assistant

"My Fogra39 press is printing 68% area at 50% cyan. What correction do I need?" → TTVP-S ISO 12647 calculation. Or: "Calibrate my press to GRACoL2013 with G7-compatible paper-white gray balance" → guided colorimetric calibration interview, returns Lab aims and cmyk_delta per patch.

05

D50 → D65 illuminant shift

"My Lab value is defined under D50 (ICC print). What is it under D65 (screen)?" → Bradford chromatic adaptation, round-trip accurate.

06

DIN99 color encoding

"Convert Lab 50 20 -10 to DIN99, DIN99d, and DIN99o variants for industrial color tolerancing." → all five DIN99 variants available.


70+ color science and print calibration tools, ready to call

Every tool is strongly typed, CIE-correct, and self-describing. The LLM reads the tool's description and knows exactly what inputs to provide and what precision to maintain across conversion chains.

Color Space Conversions
cielab_to_cielchCIELAB → cylindrical CIELCH (L*, C*, H°)
cielch_to_cielabCIELCH → rectangular CIELAB
cielab_d50_to_xyzCIELAB D50 → CIE XYZ (D50)
cielab_d65_to_xyzCIELAB D65 → CIE XYZ (D65)
xyz_to_cielabCIEXYZ D50 → CIELAB D50
rgb_to_cielabsRGB → CIELAB (Bradford D65→D50)
cielab_to_rgbCIELAB → sRGB (Bradford D50→D65)
cielab_d50_to_d65CIELAB D50 → CIELAB D65 (Bradford)
cielab_d65_to_d50CIELAB D65 → CIELAB D50 (Bradford)
xyz_to_xyyCIEXYZ → CIE xyY chromaticity
xyy_to_xyzCIE xyY → CIEXYZ
xyz_to_luvCIEXYZ D50 → CIELUV (L*u*v*)
luv_to_xyzCIELUV → CIEXYZ D50
luv_to_lchuvCIELUV → cylindrical CIELCH_uv
lchuv_to_luvCIELCH_uv → CIELUV
xyz_to_cctCIEXYZ → CCT in Kelvin (Robertson)
xyz_to_cielab_d65CIEXYZ D65 → CIELAB D65
rgb_to_cielab_d65sRGB → CIELAB D65 (IEC 61966-2-1, no Bradford)
xyz_to_jzazbzCIEXYZ D65 → JzAzBz (HDR/WCG, PQ transfer)
jzazbz_to_xyzJzAzBz → CIEXYZ D65
Color Appearance Models (CAM)
xyz_to_ciecam02CIEXYZ D65 → CIECAM02 J/C/h/M/s/Q + CAM02-UCS J'/a'/b' (CIE 159:2004)
xyz_to_ciecam16CIEXYZ D65 → CIECAM16 J/C/h/M/s/Q — CAT16, stable for HDR (Li et al. 2017)
CCT & Illuminants
cct_to_xyzCCT (K) → XYZ D65 — Planckian blackbody, CIE 015:2018
cct_to_cielab_d65CCT (K) → CIELAB D65 — Planckian blackbody
cct_to_cielab_d50CCT (K) → CIELAB D50 — Planckian blackbody + Bradford
daylight_illuminant_to_xyzCIE daylight CCT → XYZ D65 (S0/S1/S2 basis, CIE 015:2018)
daylight_illuminant_to_cielab_d65CIE daylight CCT → CIELAB D65 — D65 at 6504 K = (100,0,0)
daylight_illuminant_to_cielab_d50CIE daylight CCT → CIELAB D50 — D50 at 5003 K = (100,0,0)
RGB / HEX / HSL
hex_to_rgb#RRGGBB → sRGB (0–255)
rgb_to_hexsRGB → #RRGGBB hex string
rgb_to_hslsRGB → HSL (H°, S%, L%)
hsl_to_rgbHSL → sRGB
DIN 6176 — DIN99 Family (all variants)
cielab_to_din99CIELAB → DIN99 (standard)
din99_to_cielabDIN99 → CIELAB
cielab_to_din99bCIELAB → DIN99b
din99b_to_cielabDIN99b → CIELAB
cielab_to_din99cCIELAB → DIN99c
din99c_to_cielabDIN99c → CIELAB
cielab_to_din99dCIELAB → DIN99d (50° rotation)
din99d_to_cielabDIN99d → CIELAB
cielab_to_din99oCIELAB → DIN99o (optimised)
din99o_to_cielabDIN99o → CIELAB
Color Difference — CIE formulas
deltae76ΔE*76 — Euclidean CIELAB distance (CIE 1976)
deltae94ΔE*94 — CIE 1994, graphic arts parameters
deltae2000ΔE*00 — CIEDE2000, most accurate CIE formula
Color Difference — DIN99 family (CIELAB input)
cielab_deltae_din99ΔE in DIN99 space (16° rotation)
cielab_deltae_din99bΔE in DIN99b space (26° rotation)
cielab_deltae_din99cΔE in DIN99c space (0° rotation, improved blue)
cielab_deltae_din99dΔE in DIN99d space (50° rotation)
cielab_deltae_din99oΔE in DIN99o space (optimised, most uniform)
din99_deltaeΔE from pre-converted DIN99 coordinates
Print Calibration (ISO 12647 / TTVP-S)
press_printing_standardISO 12647 aim values — Fogra39/51, GRACoL, CRPC6
press_standard_reference_tableFull TTVP-S reference curve for all tone steps
ttvps_targetTarget printed tone value for a given digital setpoint
tvi_press_calibrationTTVP-S ISO 12647 RIP linearisation — single channel
tvi_press_calibration_cmykTTVP-S ISO 12647 RIP linearisation for all four CMYK channels in one call
CGATS TR015 (G7®-Compatible)
cgats_tr015_gray_balance_cmy_compositionsCGATS TR015 CMY gray-balance triplet for any Cyan setpoint
cgats_tr015_npdc_targetsCGATS TR015 NPDC target L* values for any tone step ramp
cgats_tr015_calibrationFull CGATS TR015 gray-balance calibration correction per channel
Colorimetric Press Calibration — Powered by Reprointelligence
colorimetric_calibrationGuided calibration — AI interviews you for standard, setpoints & gray balance, returns lab_aim + cmyk_corrected/rgb_corrected and cmyk_delta/rgb_delta per patch. Supports iterative correction (current_cmyk/current_rgb), substrate-relative gray balance, and lightness range compression for density-limited RGB printers
rltv_spot_colorRLTV (Robust Linear Tone Value) by Reprointelligence — XYZ measurements required (ISO 13655/M2). Returns rltv, ttvp_target, delta, and direct RIP correction. Have Lab measurements? Use sctv_spot_color instead
sctv_spot_colorSCTV (Substrate-Corrected Tone Value) per ISO 20654 — Lab-based tone value linearisation for spot colors & ECG/EXG channels using CIE76 distance ratio. Returns sctv, ttvp_target, delta, and direct RIP correction value
bestmatch_densityOptimal ink density to bring a measured solid patch to its colorimetric aim. Returns chromaticity density, lightness density, and average density recommendations with advisory warnings
Navigation
color_conversion_pathBFS router: find the tool chain for any from→to pair

Just ask your AI — ColorMCP does the rest

Copy any of these prompts into Claude, Cursor, Windsurf, or any tool-capable LLM connected to ColorMCP.

Color Conversion
Convert #DC7832 to CIELAB and then to DIN99o.
Color Conversion
What is the sRGB value for Lab [50, 10, −20]?
Illuminant Adaptation
Convert Lab 55 −5 38 from D50 (print) to D65 so I can use it on my website.
Color Temperature
What is the correlated color temperature of the CIE D50 illuminant in Kelvin?
Color Difference
What is the CIEDE2000 color difference between Lab [62, 14, −22] and Lab [61, 15, −20]? Is it within the ISO 12647 tolerance of ΔE 3.0?
Press Calibration
My Fogra39 CMY press measured the following dot areas: 10%→13%, 25%→28%, 50%→58%, 75%→80%, 90%→92%. What linearisation corrections do I need?
Press Calibration
Compute CMYK linearisation corrections for Fogra39. Measured dot areas — C: 10→13, 25→28, 50→58, 75→80, 90→92 | M: 10→14, 25→29, 50→59, 75→81, 90→93 | Y: 10→13, 25→27, 50→57, 75→79, 90→91 | K: 10→15, 25→31, 50→62, 75→83, 90→93.
Colorimetric Calibration
Calibrate my press against GRACoL2013 with substrate-relative gray balance. Paper white: a*=1.2, b*=-1.5 Measured CMY neutral Lab — 25%: [75.2, 0.8, −1.2], 50%: [56.0, -0.5, −0.8], 75%: [34.1, 0.3, 0.5].
Spot Color
Compute RLTV area coverage for my spot color. XYZ — substrate: [80.5, 83.2, 67.4], solid ink: [15.8, 24.1, 52.2], 25% patch: [54.9, 60.9, 62.6], 50% patch: [35.5, 43.2, 58.6], 75% patch: [24.0, 32.3, 54.7].
Spot Color — ISO 20654
Compute ISO 20654 SCTV linearisation for my ECG Orange channel. Lab — substrate: [94, 0, −2], solid: [58, 32, 68], 25% patch: [82, 8, 17], 50% patch: [72, 18, 40], 75% patch: [64, 26, 56]. Give me the RIP correction values.
Spot Color — Density Correction
My RLTV calibration for an ECG Orange: substrate Lab [94, 0, −2], solid Lab [58, 32, 68], 50% patch Lab [72, 18, 40]. What is the SCTV and what RIP correction do I need?
CGATS TR015 / G7
Walk me through a G7-like calibration step by step.
CGATS TR015 / G7
What CMY triplet makes a neutral 50% gray according to CGATS TR015?
ICC Profile
What Lab color does 100% Cyan produce under the Fogra39 ICC profile?

Call ColorMCP live from your browser

Send a real MCP request to the server. Choose a tool, fill in values, and see the raw JSON response instantly.

Good to know
  • ColorMCP is built primarily to interact with LLMs — just describe what you need and your AI assistant will call the right tools on your behalf.
  • Your LLM automatically receives a full list of available tools and their usage manuals the moment it connects — no configuration or prompt engineering needed.
  • ColorMCP is a constantly evolving platform. As new tools and improvements are added, your LLM will discover and use them automatically — without any manual updates on your end.
Select a tool and click Send →

Runs with every LLM that supports tools

ColorMCP implements the Model Context Protocol over HTTP. Any LLM runtime or agent framework with MCP or tool-calling support can connect directly — no special adapters needed.


Connect ColorMCP to your LLM in a matter of seconds

Direct MCP endpoint
https://colormcp.colorcontrol.ai/free
Cursor: ~/.cursor/mcp.json | Windsurf: ~/.codeium/mcp_config.json
{
  "mcpServers": {
    "colormcp-free": {
      "url": "https://colormcp.colorcontrol.ai/free"
    }
  }
}
Claude.ai — Settings → Connectors
# Official remote connector flow:
# 1) Open Claude → Settings → Connectors
# 2) Click "Add custom connector"
# 3) Server URL: https://colormcp.colorcontrol.ai/free
# 4) Auth not required
# 5) Enable tool permissions for the connector
Open WebUI — Settings → Tools → Add MCP Server
# In Open WebUI settings:
# Name:      ColorMCP
# URL:       https://colormcp.colorcontrol.ai/free
# Transport: HTTP (Streamable)
# Auth:      None (free tier)
#
# Save — tools appear automatically in the tool selector.
opencode.json — ~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "colormcp": {
      "type": "remote",
      "url": "https://colormcp.colorcontrol.ai/free",
      "enabled": true
    }
  }
}
LLaMA.cpp WebUI and Ollama ecosystem
# LLaMA.cpp (official server flag):
# Enables MCP CORS proxy in WebUI (experimental)
# WARNING from upstream docs: do not enable in untrusted environments
llama-server --model /path/to/model.gguf --webui --webui-mcp-proxy

# LLaMA.cpp note:
# The LLaMA.cpp web-ui allows you to add the MCP via the MCP tab. Just add the MCP url and click refresh. Activate the MCP by setting the toggle to ON

Works without an LLM too

ColorMCP is a standard HTTP JSON-RPC endpoint. Call it directly from any language, script, or workflow — no LLM involved. Ideal for CI/CD color validation, batch scripts, or integration into existing color management pipelines.

bash — Initialize session
# Step 1: Initialize an MCP session
curl -X POST https://colormcp.colorcontrol.ai/free \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2025-11-25",
      "capabilities": {},
      "clientInfo": { "name": "curl", "version": "1.0" }
    }
  }'
bash — Call tool
# Step 2: Call a color conversion tool
curl -X POST https://colormcp.colorcontrol.ai/free \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "cielab_to_cielch",
      "arguments": { "L": 55.0, "a": 25.0, "b": -30.0 }
    }
  }'

# Response:
# { "L": 55.0, "C": 39.0512, "H": 309.8056 }
bash — Ask for conversion chain
# Ask the router: how do I get from HEX to CIELUV?
curl -X POST https://colormcp.colorcontrol.ai/free \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "color_conversion_path",
      "arguments": { "from": "hex", "to": "luv" }
    }
  }'

# Response:
# {
#   "precision_note": "IMPORTANT: pass ALL decimal places ...",
#   "from": "hex", "to": "luv",
#   "steps": [
#     { "tool": "hex_to_rgb",   "description": "Convert hex to RGB" },
#     { "tool": "rgb_to_cielab","description": "Convert RGB to CIELAB D50" },
#     { "tool": "cielab_to_xyz","description": "Convert CIELAB D50 to CIEXYZ D50" },
#     { "tool": "xyz_to_luv",   "description": "Convert CIEXYZ D50 to CIELUV" }
#   ]
# }

Frequently Asked Questions

Does ColorMCP include a spot color database?

The spot_color_lookup tool and the PCOL (Physical Color) database are not part of ColorMCP free. The tool is available exclusively in PrintMCP, the paid press process control product from Reprointelligence.

Proof-of-concept feature — orientation only. PCOL is an independent spot color reference database compiled by Reprointelligence CY LTD from spectrophotometric measurements of physically purchased commercial color samples (D50/2°/M0). It is provided as a proof-of-concept and for orientation purposes only. PCOL is not affiliated with, licensed by, or derived from any third-party color system, ink vendor, or standardisation body. No claim is made as to completeness, accuracy, or correspondence to any official color specification or vendor reference. Measured Lab values reflect specific physical samples at the time of measurement and may differ from official specifications, swatchbooks, or values obtained with a different instrument or measurement condition. Always measure your own spot color sample with the instrument used for press process control and use that measured value as the production target.

Does ColorMCP support Pantone colors?

Not in the free version. Pantone® color data is proprietary and requires a commercial licence from Pantone LLC. ColorMCPfree therefore does not include any official Pantone library or parts of it. If your workflow requires Pantone matching, please contact us — Pantone integration is planned for a future paid tier.

If you require support enabling the use of your officially licensed spot color database in your application, we are happy to support.

Is there a ColorMCP Pro version?

The free tier already includes ICC profile forward and inverse lookups (icc_lookup_a2b / icc_lookup_b2a). A professional tier tailored to printing machine manufacturers and process control engineers is in development under the PrintMCP brand, focusing on density-based workflows, ink key control, and advanced press process knowledge. Contact us to be notified when it launches.

Are there any restrictions on the free version?

ColorMCPfree is free to use for everyone, including individuals, researchers, and non-commercial projects. Organisations using ColorMCP in a commercial context that exceed 50,000 API requests annually are required to purchase a commercial licence. If you are unsure whether your use case qualifies, please get in touch.

My LLM is using the tools incorrectly or gets stuck in conversion loops.

This is typically a sign that the model lacks sufficient reasoning capability or tool-use proficiency. ColorMCP's tool schemas are self-describing, but the model must be capable of reading them correctly and planning multi-step workflows without looping. We recommend models with 27B+ parameters and verified tool-calling support. A minimum 24k token context window is advised for complex calibration workflows where tool results accumulate across several rounds. Smaller or less capable models may work for simple single-tool queries but will struggle with multi-step tasks such as press calibration or ICC profile lookups.

How many tokens does loading ColorMCP consume?

Connecting ColorMCP injects approximately 4,000–5,000 tokens into your LLM context upfront — one time per session. This covers the names, descriptions, parameter schemas, and workflow hints for all 70+ tools. The exact count varies slightly depending on the tokenizer your LLM uses.

Your first request in a new session may feel slightly slower than usual, as the model processes the tool schemas for the first time. Subsequent requests within the same session are unaffected. To eliminate this cold-start effect, simply send a lightweight warm-up message (e.g. "Hello") after connecting ColorMCP before beginning your actual workflow.


Terms & Disclaimer

No warranty. ColorMCP is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and non-infringement. The entire risk as to the quality and accuracy of the service is with you.

No liability. In no event shall Reprointelligence CY LTD, its directors, employees, or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including but not limited to loss of data, business interruption, or loss of profit) arising out of or in connection with the use or inability to use ColorMCP, even if advised of the possibility of such damages.

Accuracy. All color calculations are implemented in accordance with published CIE and ISO standards to the best of our ability. However, Reprointelligence CY LTD makes no representations or warranties as to the completeness, correctness, or suitability of the results for any specific professional application. Critical color decisions should always be verified by qualified color professionals using calibrated instrumentation.

PCOL (Physical Color) Database. The PCOL database is an independent spot color reference compiled by Reprointelligence CY LTD from spectrophotometric measurements of physically purchased commercial color samples (D50/2°/M0). It is a proof-of-concept feature provided for orientation purposes only. PCOL is not affiliated with, licensed by, endorsed by, or derived from any third-party color system, ink vendor, or standardisation body. No claim is made as to completeness, accuracy, or fitness for any particular purpose. Measured Lab values reflect instrument readings taken from specific physical samples at the time of measurement and may deviate from any official color specification, printed reference, or vendor data. Reprointelligence CY LTD expressly disclaims all liability arising from reliance on PCOL data in production, quality control, or any other context. Users must measure their own spot color samples with their own calibrated instrument and use those measurements as targets for all production-critical workflows.

Fair use. The free tier of ColorMCP is intended for non-commercial and low-volume commercial use. Organisations exceeding the usage thresholds described in the FAQ are required to obtain a commercial licence.

Changes. Reprointelligence CY LTD reserves the right to modify, suspend, or discontinue the service (or any part thereof) at any time without notice.

For questions regarding licensing or commercial use, Contact us


Trademark Notices

ColorMCP is a service provided by Reprointelligence CY LTD. Reprointelligence, its name, and its logos are registered trademarks of Reprointelligence. All rights reserved.

All other product names, trademarks, and registered trademarks mentioned on this website are the property of their respective owners. Their use does not imply any affiliation with or endorsement by the respective trademark holders.

  • G7® and GRACoL® are registered trademarks of PRINTING United Alliance.
  • Pantone® is a registered trademark of Pantone LLC, a division of X-Rite Incorporated.
  • Fogra is a registered trademark of Fogra Graphic Technology Research Association e.V.
  • Claude is a trademark of Anthropic, PBC.
  • Cursor is a trademark of Anysphere Inc.
  • Windsurf is a trademark of Codeium Inc.