AdaTile-MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AdaTile-MCPanalyze this 4K satellite image for building detection"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AdaTile-MCP v1.0
Adaptive high-resolution image tiling preprocessing layer (MCP), targeting the DeepSeek deepseek-v4-flash-vision-exp model.
All Phase 0–5 were completed per the six-week plan in the AdaTile-MCP Project Build Guide (v1.2). Progress and measured data are in STATE.md; the current list of known issues is in KNOWN_ISSUES.md.
Six-Layer Pipeline (pipeline_v1)
L1 fast path (magic bytes/lazy decoding/over-limit downsampling/small-image direct pass) → L2 saliency (spectral residual, CPU default; U²-Netp optional; Watchdog timeout degradation) → L3 adaptive tiling (connected components/budget pre-allocation/contiguous block selection/document fine path) → L4 assembly & upload (tile-level pipelined encode → upload, three-level cache, six compliance hard checks, degradation chain) → L5 streaming invocation (forced json_object output, TTFT dual metrics, retry and global fallback) → L6 rule-based merging (IOU>0.3, merge same-label bboxes).
Related MCP server: image-tiler-mcp-server
Degradation Behavior
Trigger | Behavior | Flag |
Unsupported format/corrupted file | Structured error, no degradation |
|
Saliency detection timeout (>350ms) | Uniform dynamic grid instead | visible in trace |
Files API upload failure (after retries) | All inline if Σbase64 ≤24MiB |
|
Inline still over the limit | Send only the global thumbnail directly |
|
Model prose output (no JSON) | Force one JSON retry | Automatic, no configuration needed |
file_id invalid | Refresh cache and reassemble once | Automatic |
Quality and Latency Baselines (measured; see experiments/*.json for details)
First preprocess p95 1116ms (including real upload) / cache hit 134ms; TTFT 847ms/613ms; 10 concurrent, 100% success
Phase 5 four-scheme comparison and ablation:
experiments/phase5_results.json
Environment Requirements
Python 3.11+ (the project's
.venvuses 3.13)Environment variable
DEEPSEEK_API_KEY(request it on the DeepSeek platform)Activate venv on Windows/Git Bash:
source .venv/Scripts/activateOne-click environment setup on a new machine:
setup.bat(Windows) /setup.sh(macOS/Linux), see the next section
Getting Started from Scratch (new machine / any agent)
.venv and keys don't ship with the repo; a new machine only needs 5 steps:
Install Python 3.11+ (check "Add to PATH" during Windows installation).
Get the code:
git clone https://github.com/Mutton-hub/adatile-mcp.git(or copy this directory; no need to include.venv).Set up the environment: run
setup.bat(Windows) or./setup.sh(macOS/Linux) in the project root — it automatically creates.venvand installs all dependencies inrequirements.txt.Configure the key: set the environment variable
DEEPSEEK_API_KEY, or copy.env.exampleto.envand fill it in (choose either one;.envis excluded by.gitignore).Register the MCP: per the table below, point your agent config to
run.bat(Windows) /run.sh(Unix) under the repo's absolute path on this machine; after restarting the session, calladatile_statusfirst for a self-check.
When connecting multiple agents on the same machine, just repeat step 5 (each client configures it separately); the environment and key are shared.
MCP Registration — Works with Any Local Agent/Harness
The server is standard MCP (stdio by default; http / sse optional). All of the following clients can connect.
Key resolution order: environment variable DEEPSEEK_API_KEY → project-root .env file (just copy .env.example to .env and fill it in; suitable for clients where environment variables are hard to inject).
Generic form (for all clients that support stdio MCP). Replace <repo> with the actual absolute path after the repo is cloned/checked out (an absolute path is required if the path contains Chinese characters or spaces):
{
"mcpServers": {
"adatile-mcp": {
"command": "<repo>\\run.bat",
"args": []
}
}
}The
run.batlauncher automatically locates the venv (use<repo>/run.shon macOS/Linux). You can also point directly to<repo>/.venv/Scripts/python.exe+server.py.
Where each client places its config:
Client | Config file | Transport |
ZCode | Project root | stdio |
Claude Code | Project root | stdio |
Claude Desktop (Win) |
| stdio |
Cursor |
| stdio |
Cline (VS Code) |
| stdio |
Continue | The mcpServers section of | stdio |
Windsurf |
| stdio |
Custom/remote harness |
| streamable-http ( |
ZCode project-level configuration example (<repo>/.zcode/config.json; shared with the team along with the repo after cloning):
{
"mcp": {
"servers": {
"adatile-mcp": {
"command": "C:\\path\\to\\cloned-repo\\run.bat",
"args": []
}
}
}
}Usage Flow After Connection (any agent/harness)
Configure the key: set the environment variable
DEEPSEEK_API_KEY, or copy.env.exampleto<repo>/.envand fill it in (.envis excluded by.gitignoreand won't enter version control;adatile_statuscan confirm whether the key is ready).Register the MCP server (table above) and restart the client session.
First call
adatile_status(zero API calls, zero cost) to confirm the key configuration and local L1–L6 capabilities.Then call
analyze_high_res_image, passingimage_path(local absolute path) andtask_hint.Prefer the returned
merged_answer; the bbox inobjects/tile_detailscan be used for precise localization.For follow-up questions on the same image, just call the same
image_pathagain — the internal three-level cache hits automatically, with no need to manage file_id manually.
HTTP mode example (container/remote harness):
./run.sh --transport http --host 0.0.0.0 --port 8765
# MCP endpoint: http://<host>:8765/mcpAfter connecting, first call adatile_status (zero API calls) to confirm the key configuration and local capabilities, then call analyze_high_res_image.
Tool: analyze_high_res_image
Parameter | Description |
| Local absolute path of the image (JPEG/PNG/GIF/WebP, determined by content) |
|
|
|
|
Other parameters |
|
Returns: merged_answer, objects (best-effort parsing), tile_details (with bbox and file_id), latency_ms, token_usage, upload_stats, route (direct_pass / tile_pipeline).
Common Commands
# 生成测试集 A(50 张 4K 合成图 + ground_truth.json)
.venv/Scripts/python.exe experiments/cases/gen_set_a.py --n 10 --seed 42
# Phase 0 校准实验(先跑一票否决用例!)
.venv/Scripts/python.exe experiments/run_phase0.py --cases TC-0.1.8 TC-0.3.1 TC-0.4.2
.venv/Scripts/python.exe experiments/run_phase0.py --list # 查看全部用例
.venv/Scripts/python.exe experiments/run_phase0.py --full # 含重型用例
.venv/Scripts/python.exe experiments/run_phase0.py --rounds 10 # TTFT 轮数控制费用
# 本地自检(无 API 调用)
.venv/Scripts/python.exe -m pytest tests/test_local.py -q
# stdio 端到端冒烟测试(真实子进程 + 官方 MCP SDK,零 API 调用)
.venv/Scripts/python.exe tests/stdio_smoke.pyAgent-Side System Prompt (Template B, Guide 3.3)
当用户上传高分辨率图像(总像素 > 64 万)时:
1. 调用 analyze_high_res_image 工具,传入 image_path 和 task_hint(上传与切片由工具自动经 Files API 完成);
2. task_hint:文字识别→"ocr";全景描述→"describe";具体元素→"detect";
3. 优先使用 merged_answer;tile_details 中的 bbox 可精确定位;
4. 同一张图的追问请复用工具(内部缓存自动命中);
5. 禁止直接将原图 base64 传给 VLM——必须走本工具,否则细节丢失。Degradation Behavior (Phase 0)
L1 corrupted/unsupported format → structured error
{stage:"L1", reason:...}, no degradation pathSmall image (≤640,000 pixels) → DirectPass single direct pass
Files API unavailable → no automatic degradation for the primary scheme yet (Phase 3 implements the all-inline degradation chain)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables vision LLMs to read PDFs by automatically detecting text corruption and switching between text extraction and image rendering modes, while preserving reading order and filtering unnecessary images to prevent token overflow.3MIT
- AlicenseAqualityDmaintenanceMCP server that gives LLMs full-resolution vision by tiling images and capturing web pages before details are lost.1412MIT
- AlicenseNot gradedqualityCmaintenanceBridges text-only models like DeepSeek to 6 free multimodal vision APIs via MCP, enabling image understanding and analysis through automatic fallback and caching.563MIT
- AlicenseAqualityCmaintenanceAugments DeepSeek-V4 with image understanding and deep research capabilities via MCP, enabling vision and web research tools.51MIT
Related MCP Connectors
AI visual generation agent: multi-pipeline rendering, prompt crafting, and image composition.
AI image processing: upscale, resize, crop, compress, convert file format, and generate SEO metadata
Video scene understanding for AI agents via the Primate Vision API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mutton-hub/adatile-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server