Skip to main content

🔌 iApp AI MCP Server

Connect Claude Code, Claude Desktop, Cursor — or any MCP client — to the entire iApp AI Marketplace. One command gives your AI assistant 37 tools spanning OCR, eKYC, Thai NLP, LLMs, speech, and image/video generation.

Install in Claude Code — one command
claude mcp add iapp-mcp -s user -e IAPP_API_KEY=YOUR_API_KEY -- uvx iapp-mcp

Then just ask in plain language. No special syntax to learn.

Why use it

Without MCP, calling an iApp API means writing a script: read the file, build the request, handle the response. With MCP, you describe the outcome and the assistant handles the plumbing — including chaining several APIs together.

Ask "read every receipt in ./expenses, total them by category, and write a summary in Thai" and the assistant runs OCR across the folder, does the arithmetic, and drafts the summary. No glue code.

The server runs locally over stdio, so your API key never leaves your machine and files are read straight off your disk.

Prerequisites

1. An iApp API key

  1. Login / Register at iapp.co.th
  2. Go to API Keys in the control panel
  3. Click Create New API Key, name it, and create
  4. Copy the key — it is only shown once

2. A runtime

The server is published on both PyPI and npm — use whichever you prefer.

Python 3.10+

Package managerRun without installingInstall permanently
uvuvx iapp-mcpuv tool install iapp-mcp
pippip install iapp-mcp

Node.js 18+

Package managerRun without installingInstall permanently
npmnpx -y iapp-mcpnpm install -g iapp-mcp
yarnyarn dlx iapp-mcpyarn global add iapp-mcp
pnpmpnpm dlx iapp-mcppnpm add -g iapp-mcp
note

The npm package is a thin launcher for the Python server, so uv must be installed either way:

curl -LsSf https://astral.sh/uv/install.sh | sh    # or: brew install uv

Setup — Claude Code

Use the claude mcp add CLI. Pick the line matching how you installed, pass your API key with -e, and put -- before the launch command:

# uv / uvx (recommended, nothing to install)
claude mcp add iapp-mcp -s user -e IAPP_API_KEY=YOUR_API_KEY -- uvx iapp-mcp

# npm / npx
claude mcp add iapp-mcp -s user -e IAPP_API_KEY=YOUR_API_KEY -- npx -y iapp-mcp

# already installed permanently (pip / uv tool / npm / yarn / pnpm)
claude mcp add iapp-mcp -s user -e IAPP_API_KEY=YOUR_API_KEY -- iapp-mcp

Scopes

FlagWhere it applies
-s userEvery project on this machine (recommended)
-s projectThis repo only, written to a shared .mcp.json your teammates get on clone
-s localThis project, this machine only (the default if omitted)

Verify and manage

claude mcp list              # should show iapp-mcp as connected
claude mcp remove iapp-mcp # remove it later

You can also run /mcp inside a Claude Code session to see the server and its tools.

Setup — other MCP clients

Claude Desktop, Cursor and others take a JSON config. The server speaks stdio, so any client can launch it:

uv / uvx (recommended):

{
"mcpServers": {
"iapp-mcp": {
"command": "uvx",
"args": ["iapp-mcp"],
"env": { "IAPP_API_KEY": "YOUR_API_KEY" }
}
}
}

npm:

{
"mcpServers": {
"iapp-mcp": {
"command": "npx",
"args": ["-y", "iapp-mcp"],
"env": { "IAPP_API_KEY": "YOUR_API_KEY" }
}
}
}

Permanently installed:

{
"mcpServers": {
"iapp-mcp": {
"command": "iapp-mcp",
"env": { "IAPP_API_KEY": "YOUR_API_KEY" }
}
}
}

You can also run the server directly to check it starts:

IAPP_API_KEY=YOUR_API_KEY iapp-mcp

Tool reference

All 37 tools. File inputs are local file paths; generated files are written to the output_path you specify.

🪪 eKYC

ToolWhat it doesKey inputs
iapp_thai_id_card_ocrRead data from a Thai national ID card photofile_path, side (front/back)
iapp_thai_id_card_photocopy_ocrRead a photocopied ID card + detect signaturefile_path
iapp_passport_ocrRead MRZ + personal data from any passportfile_path, segmentation
iapp_thai_driver_license_ocrRead a Thai driver licensefile_path
iapp_book_bank_ocrRead account name/number from a bank book pagefile_path
iapp_face_verificationCheck if two face photos are the same person (1:1)image1_path, image2_path, threshold
iapp_face_detectionFind face(s) + bounding boxes in a photofile_path, mode (single/multi)
iapp_face_livenessDetect photo-of-photo / screen spoofingfile_path
iapp_face_id_card_kycMatch a selfie against the face on an ID cardid_card_path, selfie_path
iapp_face_recognitionEnroll & search faces in a company database (1:N)action, company, file_path, name, password

🔍 Thai Document OCR

ToolWhat it doesKey inputs
iapp_document_ocrOCR any Thai documentfile_path, mode: text / layout / docx
iapp_receipt_ocrExtract line items & totals from Thai receiptsfile_path, return_ocr
iapp_credit_card_statement_ocrExtract transactions from card statementsfile_path, return_ocr
iapp_tax_deduction_certificate_ocrRead withholding tax certificates (50 ทวิ)file_path, return_ocr
iapp_civil_registration_ocrRead Thai civil registration certificatesfile_path, return_ocr
iapp_resume_ocrExtract structured data from a resume/CV + AI evaluationfile_path
iapp_job_description_ocrExtract structured data from a job descriptionfile_path

🤖 Large Language Model

ToolWhat it doesKey inputs
iapp_llm_chatChat with LLMs hosted on iApp (OpenAI-compatible)prompt or messages, model: chinda-qwen3-4b (free) / deepseek-chat / deepseek-reasoner / deepseek-v4-flash / deepseek-v4-pro, system_prompt, max_tokens, temperature
iapp_thanoy_legal_qaAsk Thai legal questions (Thanoy Legal AI)query

🌐 Thai NLP

ToolWhat it doesKey inputs
iapp_translateTranslate between 28 languages (Thai-optimized)text, source_lang, target_lang
iapp_summarizeSummarize Thai/English texttext, style, language
iapp_sentiment_analysisClassify Thai text as positive/neutral/negativetext
iapp_toxicity_classificationDetect toxic Thai texttext
iapp_thai_qaAnswer a question from a given Thai documentquestion, document
iapp_question_generationGenerate Q&A pairs from Thai texttext

🎙️ Speech Technology

ToolWhat it doesKey inputs
iapp_speech_to_textTranscribe audio with speaker diarizationfile_path, language (th/en/zh), quality (base/pro)
iapp_text_to_speechSynthesize Thai speech and save an audio filetext, output_path, voice, speed
iapp_voice_clone_ttsSpeak any text in a voice cloned from a sampletext, ref_audio_path, ref_text, output_path
iapp_ai_audio_detectionCheck if audio was AI-generatedaudio_path

🖼️ Image & 🎬 Video Generation

ToolWhat it doesKey inputs
iapp_image_generationGenerate an image from text (Google Nano Banana)prompt, output_path, model
iapp_remove_backgroundRemove the background from an imagefile_path, output_path
iapp_video_generation_submitSubmit an async Seedance 2.0 video jobprompt, model, duration, ratio, resolution, generate_audio
iapp_video_generation_statusPoll a video job and get the download URLtask_id

♻️ Smart City AI & 📊 Thai Data

ToolWhat it doesKey inputs
iapp_license_plate_ocrRead Thai vehicle license plates from photosfile_path
iapp_meter_ocrRead power/water meter values from photosfile_path
iapp_route_optimizationOptimize delivery routes for multiple drivers (≤100 stops)origin_address + coordinates, stops, driver_count
iapp_thai_holidaysLook up Thai public holidaysyear, or start_date+end_date, or nothing

Usage examples

Once connected — in Claude Code, Claude Desktop, or any other MCP client — just ask in plain Thai or English. No command syntax; the assistant picks the tool.

eKYC

อ่านข้อมูลจากบัตรประชาชนในไฟล์ idcard.jpg
เช็คว่ารูป selfie.jpg กับ idcard.jpg เป็นคนเดียวกันไหม
Extract the MRZ data from passport.jpg
ตรวจว่ารูป face.jpg เป็นภาพถ่ายคนจริงหรือภาพปลอม

Documents

OCR ใบเสร็จ receipt.jpg แล้วรวมยอดให้หน่อย
แปลงเอกสารสแกนนี้เป็นไฟล์ Word
สกัดข้อมูลจาก resume.pdf แล้วประเมินความเหมาะสมกับตำแหน่ง
อ่านหนังสือรับรองหักภาษี ณ ที่จ่าย (50 ทวิ) ไฟล์นี้

Speech and language

ถอดเสียงไฟล์ประชุม meeting.wav พร้อมระบุว่าใครพูด
อ่านข้อความนี้เป็นเสียงพูดด้วยเสียงไข่ต้ม เซฟเป็น speech.wav
แปลข้อความนี้เป็นภาษาญี่ปุ่น
วิเคราะห์ว่ารีวิวลูกค้าพวกนี้เป็นบวกหรือลบ

LLM and legal

ถาม Chinda Thai LLM ว่า ส้มตำมีกี่แคลอรี่
ใช้ DeepSeek V4 Flash ช่วยจัดหมวดหมู่ข้อความลูกค้าพวกนี้
ถามทนอย: สัญญาเช่าบ้านไม่มีลายเซ็นพยานมีผลไหม

Creative and smart city

สร้างรูปแมวใส่ชุดไทยนั่งริมเจ้าพระยา เซฟเป็น cat.png
Generate a 5-second video of a cat surfing at sunset
จัดเส้นทางส่งของ 20 จุดนี้ให้คนขับ 3 คน เริ่มจากคลังสินค้า
อ่านป้ายทะเบียนรถจากภาพกล้องวงจรปิด cctv.jpg

Notes and limits

  • Local file paths. File-based tools take paths on your machine; generated audio, images and video are written to the output_path you name.
  • Credits. Most tools consume iApp credits (IC) per call. Each tool's description documents its cost. Chinda Thai LLM 4B is free.
  • Seedance video generation requires a paid account — any IC package purchase unlocks it.
  • Context stays small. Large base64 blobs in API responses (cropped face images, for example) are truncated in tool output.
  • Runtimes. Python 3.10+ or Node.js 18+.

Troubleshooting

SymptomFix
claude mcp list shows the server as failedCheck uv is installed and on your PATH — run uvx iapp-mcp directly to see the error
Authentication errors on every toolThe IAPP_API_KEY value is wrong or expired. Re-add with the correct key, or check API Keys in the control panel
Server missing in a different projectYou installed with the default -s local scope. Re-add with -s user
Insufficient credits (HTTP 402)Top up in the control panel; check per-tool costs on the pricing page
Video generation rejectedSeedance requires a paid account — purchase any IC package to unlock

Prefer to write code?

If you are calling iApp APIs from your own Python program rather than through an assistant, use the SDK instead:

from iapp_ai import api

client = api("YOUR_API_KEY")
resp = client.idcard_front("id.jpg") # returns requests.Response
print(resp.json())
pip install iapp-ai

Both packages share the same iapp-core foundation, so behaviour and error handling are identical.