mistral-mcp
mistral-mcp is a self-hosted MCP server that exposes Mistral AI's full API as tools, resources, and prompts across chat, vision, OCR, audio, code, and durable workflows.
Chat & Vision:
mistral_chatfor text generation (including Magistral reasoning models, structured JSON output, temperature control);mistral_visionfor multimodal chat with images (URL or base64) via Pixtral.OCR / Document AI:
mistral_ocrextracts structured markdown, bounding boxes, tables, hyperlinks, and JSON annotations from PDFs and images.Audio Transcription:
voxtral_transcribeconverts audio to text with optional speaker diarization, language hints, and timestamp granularity.Code Completion:
codestral_fimperforms fill-in-the-middle inline code completion using Codestral.Durable Workflows:
workflow_execute(launch Temporal-backed workflows sync or async),workflow_status(poll state/result),workflow_interact(send signals, queries, or updates for human-in-the-loop scenarios).Admin Tools (via profile): embeddings, streaming, agents, moderation, classification, TTS, file management, and batch operations.
Resources: Live catalogs at
mistral://models,mistral://voices,mistral://workflows.Prompts: Curated French-language prompts for meeting minutes, email replies, commit messages, legal summaries, and invoice reminders.
Integration: Compatible with Claude Code, Cursor, and Zed; supports configurable profiles (
core,admin,workflows,metier-docs) for tailored tool exposure, with GDPR-conscious self-hosted deployment.
Enables durable workflow execution with Temporal, supporting starting, querying, and signaling long-running Mistral Workflows, including human-in-the-loop checkpoints.
mistral-mcp
MCP server for Mistral AI — chat, OCR, audio (Voxtral), code (Codestral), vision, agents, batch, and durable workflows. Plug into Claude Code, Cursor, Zed, Windsurf, or Claude Desktop in one command.
Version française : README.fr.md
What this is
mistral-mcp exposes the full Mistral AI API as a set of MCP tools, resources, and prompts. An MCP client (Claude Code, Cursor, etc.) can call mistral_ocr to extract text from a PDF, voxtral_transcribe to transcribe a meeting recording, or workflow_execute to start a durable multi-step process — all without leaving the agent loop.
Unique to Mistral and not available from other MCP servers:
mistral_ocr— Mistral Document AI: structured text + bbox annotations from any PDF or imagevoxtral_transcribe— Voxtral: transcription with optional speaker diarizationcodestral_fim— Codestral fill-in-the-middle (FIM) for inline code completionworkflow_execute / status / interact— Temporal-backed durable execution with human-in-the-loop signalsFrench-optimized models (
mistral-large-latest,mistral-medium-latest) and curated French prompts
What this server does not expose: fine-tuning, user management, non-FR/EN prompts.
Why this matters for European teams
mistral-mcp is designed for teams that want to use Mistral capabilities inside MCP clients (Claude Code, Cursor, Zed, Windsurf, Claude Desktop) while keeping control over deployment, API keys, cache behavior, and tool exposure.
This can be useful for European organisations evaluating AI stacks under GDPR, DORA, sector-specific constraints (HDS, EBA), or internal sovereignty requirements.
What this project provides:
self-hosted MCP server, no mandatory SaaS proxy
bring-your-own Mistral API key (BYOK) — Mistral states API data is not used to train its models
lean
coreprofile and focusedmetier-docsprofile to limit tool exposureprocess_documentcache configurable per-call and viaMISTRAL_MCP_CACHE_DIRID document cache bypass enabled by default, even when
kind:"auto"resolves toid_documentStreamable HTTP + bearer auth path for controlled / on-prem deployments
French-first prompts and skills (meeting minutes, legal summary, invoice reminder, commit message, email reply)
free Experiment tier on the Mistral side covers most evaluation needs (~1B tokens/month)
What this project does NOT claim:
it is not a GDPR, DORA, HDS, or ISO certification, and it does not replace a DPIA, vendor review, security audit, or legal assessment
Mistral provider terms, data residency, subprocessor list, retention settings, and incident handling must be reviewed separately at mistral.ai/terms and legal.mistral.ai
this repo is community-maintained, not an official Mistral integration; nothing here modifies Mistral's contractual data terms with you
In practice, mistral-mcp reduces the integration surface you have to assess. It does not replace the legal/compliance work itself.
Quick start
Claude Code (recommended — auto-installs, prompts for API key, ships 11 skills):
/plugin install mistral-mcp@swih-pluginsCursor / Zed / Windsurf / Claude Desktop — add to your MCP settings JSON:
{
"mcpServers": {
"mistral": {
"command": "npx",
"args": ["-y", "mistral-mcp@latest"],
"env": { "MISTRAL_API_KEY": "your_key_here" }
}
}
}Manual Claude Code registration:
claude mcp add mistral -- npx -y mistral-mcp@latestProfiles
MISTRAL_MCP_PROFILE controls how many tools are exposed (default: core).
Profile | Tools | Use when |
| 8 | Daily agentic use — lean context footprint |
| 26 | Full Mistral API surface — embeddings, streaming, batch, classify, files, agents, TTS, document extraction. Best for debug, CI, scripts. |
| 3 | Pipeline orchestration only |
| 9 | Documents vertical — core + |
fullis accepted as a deprecated alias ofadminfor backward compatibility.
MISTRAL_MCP_PROFILE=admin npx mistral-mcpTools
Core profile (8 tools — always available)
Tool | What it does |
| Chat completion. Supports all Mistral models, |
| Multimodal chat with images (URL or base64). |
| Document AI — extract text, bbox, and JSON annotations from PDFs/images. |
| Fill-in-the-middle code completion (Codestral model). |
| Audio → text. Pass |
| Start a Mistral Workflow (Temporal-backed durable execution). |
| Poll a running workflow — returns |
| Signal / query a running workflow. Used for human-in-the-loop checkpoints. |
Documents vertical (MISTRAL_MCP_PROFILE=metier-docs)
Tool | What it does |
| Single-call macro-tool: OCR → classify (kind=auto) → typed extraction → validation → cache. Kinds: |
Admin profile only (+18 tools, set MISTRAL_MCP_PROFILE=admin)
Group | Tools |
Generation |
|
Agents |
|
Audio |
|
Files |
|
Batch |
|
Sampling |
|
Resources
URI | What it returns |
| Live model catalog + accepted aliases |
| Live Voxtral TTS voice catalog |
| Live list of deployed workflows (use |
Prompts
Curated prompts with structured arguments and MCP completion support:
Prompt | Input | Output |
| transcript text | Structured French meeting minutes |
| received email + context | Polished French reply |
| git diff | Conventional Commits message in French |
| legal document text | Plain-French summary + key clauses |
| debtor, amount, days overdue, tone | B2B dunning letter in French |
| git diff | Focused code review (security / logic / style) |
Claude Code skills (11)
Install via the swih-plugins marketplace to get these namespaced skills:
Routing
/mistral-mcp:mistral-router— picks the right Mistral model + tool for any task
Code
/mistral-mcp:codestral-review— fetches the current diff, runs a focused review
French workflows
/mistral-mcp:french-commit-message— Conventional Commits message in French/mistral-mcp:french-meeting-minutes— audio or text → structured French minutes/mistral-mcp:french-invoice-reminder— B2B dunning letter with controlled tone
Document & audio processing
/mistral-mcp:contract-analyzer— OCR → risk-rated clause extraction (JSON)/mistral-mcp:pdf-invoice-extractor— OCR → structured invoice fields for reconciliation/mistral-mcp:audio-dispatch— transcribe + diarize → per-speaker action plan
Human-in-the-loop workflows
/mistral-mcp:contract-review-workflow— durable contract review with approval gates/mistral-mcp:compliance-audit-workflow— multi-step audit with mid-run findings + decisions/mistral-mcp:research-pipeline-workflow— hypothesis-driven research with amendment injection
Install
# Run directly (no global install)
npx mistral-mcp
# Global install
npm install -g mistral-mcp && mistral-mcp
# Docker
docker build -t mistral-mcp .
docker run -i --rm -e MISTRAL_API_KEY=your_key mistral-mcp
# From source
git clone https://github.com/Swih/mistral-mcp.git
cd mistral-mcp && npm install && npm run build
node dist/index.jsTransport
Mode | How to enable | Default |
stdio | Default |
|
Streamable HTTP |
|
|
HTTP env vars: MCP_HTTP_HOST, MCP_HTTP_PORT, MCP_HTTP_PATH, MCP_HTTP_TOKEN (bearer auth), MCP_HTTP_ALLOWED_ORIGINS, MCP_HTTP_STATELESS=1.
/healthz is public and does not touch the MCP server.
Use as a Mistral Connector (beta)
mistral-mcp ships the Streamable HTTP transport and bearer auth that Mistral Connectors require. Deployment guides for Cloudflare Tunnel, Fly.io, and Render are in examples/deploy/README.md.
Surface | Status |
Local MCP clients (Claude Code, Cursor, Zed, Windsurf, Claude Desktop) | Stable |
Streamable HTTP transport + bearer auth | Tested locally (handshake + 401 + initialize verified) |
Mistral Connector registration via | Setup guide provided — Connectors are a beta feature, the API may change |
Connector tool calls in Conversations/Agents | Untested end-to-end (requires public HTTPS deployment) |
OAuth 2.1 Connector auth | Pending — bearer-only today |
curl -X POST https://api.mistral.ai/v1/connectors \
-H "Authorization: Bearer $MISTRAL_API_KEY" \
-d '{"name":"mistral_self","server":"https://your-deploy/mcp","visibility":"private"}'Mistral Connectors expose tools only today. Resources, prompts, sampling, and elicitation remain available via local clients.
Comparison with other Mistral MCP servers
Project | Scope | Best for |
mistral-mcp | Full Mistral API + Workflows + 11 Claude Code skills | All-in-one self-hosted |
| OCR only | Lightweight OCR-only setup |
Speakeasy | Generated demo | Reference / SDK template |
Composio | SaaS-routed Mistral tools | Hosted, no infra |
mistral-mcp differentiates by combining OCR, Voxtral diarization, Codestral FIM, and Temporal-backed Workflows in one server, with French-first prompts and a Claude Code plugin marketplace.
Development
npm run dev # tsx watch
npm run build # tsc → dist/
npm run lint # tsc --noEmit
npm test # 190+ tests (unit + contract + stdio e2e + live API)
npm run inspectorTest pyramid: unit → contract → stdio e2e → live API (requires MISTRAL_API_KEY).
License
MIT — Copyright Dayan Decamp
Maintenance
Latest Blog Posts
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/Swih/mistral-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server