Swih/mistral-mcp

πŸ› οΈ Other Tools and Integrations
0 Views
0 Installs

πŸ“‡ ☁️ 🍎 πŸͺŸ 🐧 - MCP server exposing 22 Mistral AI capabilities (chat, OCR, audio, vision, agents, embeddings, moderation, classification, files, batch) with dual transport (stdio + Streamable HTTP), structured outputs on every tool, and 6 curated French/English prompts with argument completion. Vendor API key required.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "swih-mistral-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "swih-mistral-mcp"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

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

npm version CI Glama MCP score license MCP spec


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 image
  • voxtral_transcribe β€” Voxtral: transcription with optional speaker diarization
  • codestral_fim β€” Codestral fill-in-the-middle (FIM) for inline code completion
  • workflow_execute / status / interact β€” Temporal-backed durable execution with human-in-the-loop signals
  • French-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 core profile and focused metier-docs profile to limit tool exposure
  • process_document cache configurable per-call and via MISTRAL_MCP_CACHE_DIR
  • ID document cache bypass enabled by default, even when kind:"auto" resolves to id_document
  • Streamable 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-plugins

Cursor / 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@latest

Profiles

MISTRAL_MCP_PROFILE controls how many tools are exposed (default: core).

ProfileToolsUse when
core (default)12Daily agentic use β€” lean context footprint
admin41Full Mistral API surface β€” embeddings, streaming, batch, classify, files, agents, TTS, document extraction, stateful conversations, RAG libraries. Best for debug, CI, scripts.
workflows7Pipeline orchestration + connectors only
metier-docs13Documents vertical β€” core + process_document macro-tool

full is accepted as a deprecated alias of admin for backward compatibility.

MISTRAL_MCP_PROFILE=admin npx mistral-mcp

Tools

Core profile (12 tools β€” always available)

ToolWhat it does
mistral_chatChat completion. Supports all Mistral models, response_format, reasoning_effort for Magistral.
mistral_visionMultimodal chat with images (URL or base64).
mistral_ocrDocument AI β€” extract text, bbox, and JSON annotations from PDFs/images. Pass includeBlocks: true for OCR 4 paragraph-level blocks (text/title/table/image/equation/... with bounding boxes).
codestral_fimFill-in-the-middle code completion (Codestral model).
voxtral_transcribeAudio β†’ text. Pass diarize: true for speaker separation.
workflow_executeStart a Mistral Workflow (Temporal-backed durable execution).
workflow_statusPoll a running workflow β€” returns RUNNING | COMPLETED | FAILED | ....
workflow_interactSignal / query a running workflow. Used for human-in-the-loop checkpoints.
connectors_listDiscover Mistral Connectors (MCP/HTTP integrations) visible to the caller.
connectors_getFetch one connector's public metadata (never credentials).
connectors_list_toolsList the MCP tools a connector exposes, with their input schema.
connectors_call_toolInvoke a connector's tool β€” real MCP CallToolResult passthrough.

Documents vertical (MISTRAL_MCP_PROFILE=metier-docs)

ToolWhat it does
process_documentSingle-call macro-tool: OCR β†’ classify (kind=auto) β†’ typed extraction β†’ validation β†’ cache. Kinds: contract / invoice / id_document / generic. Returns a discriminated union. PII-safe cache (id_document auto-bypass). Configurable minOcrConfidence.

Admin profile only (+29 tools, set MISTRAL_MCP_PROFILE=admin)

GroupTools
Generationmistral_chat_stream, mistral_embed, mistral_tool_call
Agentsmistral_agent, mistral_moderate, mistral_classify
Audiovoxtral_speak (TTS)
Filesfiles_upload, files_list, files_get, files_delete, files_signed_url
Batchbatch_create, batch_get, batch_list, batch_cancel
Samplingmcp_sample (delegates generation to the MCP client's own model)
Conversationsconversation_start, conversation_append, conversation_get, conversation_list, conversation_history, conversation_delete β€” stateful multi-turn agent loops with Mistral's built-in tools (web_search, code_interpreter, image_generation, document_library)
Libraries (RAG)libraries_list, libraries_get, libraries_documents_list, libraries_documents_upload, libraries_documents_status β€” discover and feed already-created Mistral Libraries; pair with conversation_start's documentLibraryIds to search them

Resources

URIWhat it returns
mistral://modelsLive model catalog + accepted aliases
mistral://voicesLive Voxtral TTS voice catalog
mistral://workflowsLive list of deployed workflows (use name as workflowIdentifier)

Prompts

Curated prompts with structured arguments and MCP completion support:

PromptInputOutput
french_meeting_minutestranscript textStructured French meeting minutes
french_email_replyreceived email + contextPolished French reply
french_commit_messagegit diffConventional Commits message in French
french_legal_summarylegal document textPlain-French summary + key clauses
french_invoice_reminderdebtor, amount, days overdue, toneB2B dunning letter in French
codestral_reviewgit diffFocused 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.js

Transport

ModeHow to enableDefault
stdioDefaultnode dist/index.js
Streamable HTTPMCP_TRANSPORT=http or --http flag127.0.0.1:3333/mcp

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.

SurfaceStatus
Local MCP clients (Claude Code, Cursor, Zed, Windsurf, Claude Desktop)Stable
Streamable HTTP transport + bearer authTested locally (handshake + 401 + initialize verified)
Mistral Connector registration via POST /v1/connectorsSetup guide provided β€” Connectors are a beta feature, the API may change
Connector tool calls in Conversations/AgentsUntested end-to-end (requires public HTTPS deployment)
OAuth 2.1 Connector authPending β€” 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

ProjectScopeBest for
mistral-mcpFull Mistral API + Workflows + 11 Claude Code skillsAll-in-one self-hosted
mcp-mistral-ocr (community)OCR onlyLightweight OCR-only setup
Speakeasy mistral-mcp-server-exampleGenerated demoReference / SDK template
Composio mistral_ai toolkitSaaS-routed Mistral toolsHosted, 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 inspector

Test pyramid: unit β†’ contract β†’ stdio e2e β†’ live API (requires MISTRAL_API_KEY).


License

MIT β€” Copyright Dayan Decamp

Related MCP Servers

modelcontextprotocol/server-everythingVerified

πŸ“‡ 🏠 - MCP server that exercises all the features of the MCP protocol

πŸ› οΈ Other Tools and Integrations1 views
0xMassi/webclaw

πŸ¦€ 🏠 🍎 🐧 - Web content extraction for AI agents. 10 tools: scrape, crawl, map, batch, extract, summarize, diff, brand, search, research. TLS fingerprinting bypasses anti-bot without a browser. 67% fewer tokens than raw HTML. npx create-webclaw auto-configures Claude, Cursor, Windsurf, Codex, OpenCode.

πŸ› οΈ Other Tools and Integrations0 views
2niuhe/plantuml_web

🐍 🏠 ☁️ 🍎 πŸͺŸ 🐧 - A web-based PlantUML frontend with MCP server integration, enable plantuml image generation and plantuml syntax validation.

πŸ› οΈ Other Tools and Integrations0 views
2niuhe/qrcode_mcp

🐍 🏠 🍎 πŸͺŸ 🐧 - A QR code generation MCP server that converts any text (including Chinese characters) to QR codes with customizable colors and base64 encoding output.

πŸ› οΈ Other Tools and Integrations0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Not checked yet

We have not completed a health check for this listing yet.

No check timestamp yet.

Unclaimed listing (imported or pending owner verification). Claim it β†’
β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.