Swih/mistral-mcp

Swih/mistral-mcp

от swih
MCP-сервер для полного API Mistral AI — чат, OCR, транскрипция аудио (Voxtral), автодополнение кода (Codestral), durable workflows. Подключается к Claude Code, Cursor, Zed, Windsurf. Самостоятельно...

Mistral MCP server for document extraction

npm version npm downloads CI MIT license

Turn text or Markdown invoices into typed JSON through MCP. mistral-mcp uses Mistral chat to extract vendors, totals, line items and due dates, then validates the response schema. Optional Mistral OCR handles PDF and image inputs. process_document also supports contracts, identity documents and automatic classification. Six tools are available by default, including chat, vision, transcription and code completion.

Français · Migration guide · Examples · Deployment

npm package · 1.0.0 release notes · GitHub releases · Mistral API docs

Version 1.0.0 — breaking changes from 0.11.0: core now exposes six tools; existing orchestration clients must choose an explicit profile. Document results require extraction_source, and ocr_confidence / page_count can be null. Migration and rollback instructions.

Install in an MCP client

Requires Node.js 20+, npm and a Mistral API key with access and quota for the requested model. For clients using mcpServers JSON, configure the stdio server:

Часто задаваемые вопросы

Инструменты были проиндексированы:
codestral_fimтолько чтениевнешний мир

Завершение кода в режиме fill-in-the-middle с помощью Codestral. Имея prompt (код перед курсором) и suffix (код после курсора), Codestral дописывает середину. Используйте для автодополнения в редакторе, агентов патчинга кода или структурированных рефакторингов, где границы целевого участка известны. Токены остановки по умолчанию: [] — пусть модель решает сама. При необходимости переопределите через stop.

Codestral fill-in-the-middle completion

Параметры
  • max_tokensinteger

    Максимальное количество токенов для генерации. Сумма входных токенов и этого лимита должна укладываться в длину контекста модели.

  • modelstring

    Идентификатор модели FIM (fill-in-the-middle). Принимается любой идентификатор, который отдаёт ваш endpoint - прочитайте mistral://models, чтобы увидеть актуальный каталог. Известные алиасы Mistral: codestral-latest.

  • promptstringобязательный

    Код перед курсором.

  • seedinteger

    Случайное начальное значение для детерминированного сэмплирования. Соответствует параметру random_seed в Mistral.

  • stopstring[]

    Останавливает генерацию, когда встречается любая из этих текстовых последовательностей.

  • suffixstringобязательный

    Код после курсора. Может быть пустой строкой.

  • temperaturenumber

    Температура сэмплирования: чем выше значения, тем случайнее вывод; чем ниже, тем он более сфокусирован. Лучше настраивать этот параметр или top_p, но не оба сразу.

  • top_pnumber

    Nucleus sampling probability mass: 0.1 учитывает токены, попадающие в верхние 10% вероятностной массы. Лучше настраивать этот параметр или temperature, но не оба сразу.

mistral_chatтолько чтениевнешний мир

Создает завершение чата с использованием модели Mistral. Когда использовать: - Черновики контента на французском (или любом европейском языке), где Mistral показывает лучшие результаты. - Codestral для генерации и ревью кода. - Ministral для дешевой классификации с низкой задержкой. Возвращает структурированный контент с текстом ассистента и использованием токенов. НЕ поддерживает потоковую передачу - используйте mistral_chat_stream для длинных выходных данных с обновлениями прогресса.

чат-завершение Mistral

Параметры
  • max_tokensinteger

    Максимальное количество токенов для генерации. Сумма входных токенов и этого лимита должна укладываться в длину контекста модели.

  • messagesobject[]обязательный

    Сообщения чата в формате роль/содержимое.

  • modelstring

    Чат-модель. По умолчанию: mistral-medium-latest (переопределяется с помощью MISTRAL_DEFAULT_MODEL).

  • reasoning_effortenum

    Reasoning effort; поддерживаемые значения зависят от выбранной модели.

  • response_formatobject

    Принудительно задает структурированный вывод: {type:"json_object"} для режима JSON, {type:"json_schema", json_schema:{...}} для строгого режима схемы.

  • seedinteger

    Случайное начальное значение для детерминированного сэмплирования. Соответствует параметру random_seed в Mistral.

  • temperaturenumber

    Температура сэмплирования: чем выше значения, тем случайнее вывод; чем ниже, тем он более сфокусирован. Лучше настраивать этот параметр или top_p, но не оба сразу.

  • top_pnumber

    Nucleus sampling probability mass: 0.1 учитывает токены, входящие в топ 10% вероятностной массы. Лучше настраивать этот параметр или temperature, но не оба сразу.

mistral_ocrтолько чтениеидемпотентныйвнешний мир

Запускает Mistral OCR на PDF или изображении и возвращает структурированный Markdown для каждой страницы. Входной document - одно из значений: - { type: "document_url", documentUrl: "https://...pdf" } - { type: "image_url", imageUrl: "https://..." | "data:image/..." } - { type: "file", fileId: "<id-from-files-api>" } Параметры: - pages: массив номеров страниц с отсчётом от 0 или строка вида "0-5,7". - tableFormat: 'markdown' (по умолчанию) или 'html'. - extractHeader / extractFooter: включает верхний и нижний колонтитулы страницы, если они есть. - includeImageBase64: встраивает извлечённые байты изображений в формате base64 в ответ. - document_annotation_format: JSON-схема для структурированного извлечения данных из всего документа. - bbox_annotation_format: JSON-схема для извлечённых изображений и аннотаций с координатами ограничивающих рамок. - confidence_scores_granularity: 'page', 'word' или 'block'. Значение 'block' добавляет для каждого блока уверенность по содержимому и типу в pages[].blocks[].confidence_scores и требует OCR 4.1 или новее. - includeBlocks: возвращает блоки уровня абзаца (ограничивающая рамка + тип) в порядке чтения: заголовки, списки, таблицы, изображения, формулы, подписи, код, ссылки, выноски, верхний и нижний колонтитулы, подпись. Требует OCR 4 (mistral-ocr-4-0) или новее; старые модели принимают флаг, но возвращают пустой массив blocks. Возвращает pages[].markdown, а также опционально pages[].hyperlinks, header, footer, ограничивающие рамки images, blocks, аннотации, оценки уверенности и dimensions.

Mistral OCR (преобразование документа в markdown)

Параметры
  • bbox_annotation_formatobject

    JSON Schema для структурированных аннотаций каждого извлечённого ограничивающего прямоугольника или изображения.

  • confidence_scores_granularityenum

    Гранулярность уверенности. 'block' также заполняет pages[].blocks[].confidence_scores и требует OCR 4.1 (mistral-ocr-4-1) или новее.

  • documentobjectобязательный

    Документ для обработки, заданный как URL документа, URL изображения или data URI, либо как ID загруженного файла.

  • document_annotation_formatobject

    JSON Schema для структурированной аннотации, извлечённой из всего документа.

  • document_annotation_promptstring

    Инструкции для структурированного извлечения данных из всего документа. Требуется document_annotation_format.

  • extractFooterboolean

    Извлекает нижний колонтитул каждой страницы в его поле footer и удаляет его из markdown страницы.

  • extractHeaderboolean

    Извлекает каждый заголовок страницы в его поле header и удаляет его из markdown страницы.

  • imageLimitinteger

    Максимальное количество изображений для извлечения из документа.

  • imageMinSizeinteger

    Минимальная высота и ширина извлекаемого изображения.

  • includeBlocksboolean

    Возвращает блоки уровня абзаца (bounding box + type) для каждой страницы. Требуется OCR 4 (mistral-ocr-4-0) или новее.

  • includeImageBase64boolean

    Включает в ответ данные извлечённых изображений в кодировке base64.

  • modelstring

    OCR-модель. По умолчанию: mistral-ocr-latest.

  • pagesstring | integer[]

    Номера страниц с отсчётом от нуля для обработки: массив или числа и диапазоны через запятую, например "0-5,7".

  • tableFormatenum

    Формат извлечённых таблиц: Markdown или HTML.

mistral_visionтолько чтениевнешний мир

Завершение чата с мультимодальным вводом: текст + части image_url. Требуется модель, способная обрабатывать изображения. Принимаются: - pixtral-large-latest - pixtral-12b-latest - mistral-large-latest - mistral-medium-latest - mistral-small-latest Поле content каждого сообщения — это либо обычная строка (простой текст), либо массив частей { type: 'text', text } / { type: 'image_url', imageUrl }. URL изображения может быть HTTPS-ссылкой или data: URI в формате base64. Возвращает текст ассистента + использованные токены. Для запросов без изображений предпочтительнее использовать mistral_chat.

Mistral multimodal chat (vision)

Параметры
  • max_tokensinteger

    Максимальное количество токенов для генерации. Сумма входных токенов и этого лимита должна укладываться в длину контекста модели.

  • messagesobject[]обязательный

    Сообщения чата. Принимаются чисто текстовые запросы, но этот инструмент предназначен в первую очередь для мультимодальных запросов, содержащих части изображений.

  • modelstring

    Модель Mistral с поддержкой зрения. По умолчанию: pixtral-large-latest.

  • seedinteger

    Случайное начальное значение для детерминированного сэмплирования. Соответствует параметру random_seed в Mistral.

  • temperaturenumber

    Температура сэмплирования: чем выше значения, тем случайнее вывод; чем ниже, тем он более сфокусирован. Лучше настраивать этот параметр или top_p, но не оба сразу.

  • top_pnumber

    Nucleus sampling probability mass: 0.1 учитывает токены, входящие в топ 10% вероятностной массы. Лучше настраивать этот параметр или temperature, но не оба сразу.

process_documentтолько чтениеидемпотентныйвнешний мир

Конвейер из одного вызова: предоставленный текст/Markdown или Mistral OCR → классификация (если kind=auto) → типизированное извлечение → валидация. source.type=text пропускает OCR и загрузку файлов. Текст с kind=generic не выполняет API-вызовов; классификация и типизированное извлечение используют Mistral chat. Результаты предоставляют extraction_source. У предоставленного текста ocr_confidence и page_count равны null; ocr_text содержит переданный текст без изменений. Заменяет ручную цепочку mistral_ocr + mistral_chat + разбора JSON. Виды: contract | invoice | id_document | generic. Используйте kind=auto, чтобы сервер классифицировал сам. Возвращает размеченное объединение. Переключайтесь по kind, чтобы получить доступ к типизированным полям. Валидация проверяет схему и, для OCR-источников, уверенность OCR; не фактическую или бухгалтерскую точность. Типизированное извлечение отклоняет текст длиннее 60000 символов, а не обрезает его. Ключи кэша включают источник, kind, лимит страниц, endpoint, модели и версию конвейера. Переопределите расположение с помощью MISTRAL_MCP_CACHE_DIR. Переопределите режим с помощью options.cache. Режим кэша по умолчанию - 'read_write', КРОМЕ kind=id_document (автообход, чтобы не сохранять PII). Явно укажите options.cache='read_write', чтобы включить кэширование для id-документов. options.maxPages и options.minOcrConfidence применяются только к OCR-источникам. Нижний порог уверенности по умолчанию - 0.3. Ниже порога инструмент возвращает isError. Отсутствующие или частичные оценки уверенности также возвращают isError; используйте mistral_ocr напрямую, если нужен сырой OCR без гарантии уверенности. 0.3 - консервативная отправная точка, а не измеренная: откалибруйте порог под свой корпус с помощью npm run eval:docs.

Обрабатывает бизнес-документ от начала до конца.

Параметры
  • kindenum

    Задача извлечения. auto классифицирует документ; generic возвращает текст без типизированного извлечения. Текстовый источник с generic не делает вызовов API.

  • optionsobject

    Выбор страниц, порог уверенности OCR и политика локального кеша.

  • sourceobjectобязательный

    Уже извлечённый текст/Markdown или источник для OCR: удалённый URL, ID загруженного файла или встроенное изображение.

voxtral_transcribeтолько чтениеидемпотентныйвнешний мир

Транскрибирует аудиофайл в текст с помощью Mistral Voxtral. Принятые модели: - voxtral-mini-latest - voxtral-small-latest Источник аудио — одно из: - { type: "file_url", fileUrl: "https://..." } (публичный URL) - { type: "file", fileId: "<id-from-files-api>" } Опции: - language: подсказка по ISO-639-1 (например 'fr', 'en'). Повышает точность, если язык известен. - temperature: температура сэмплирования. - diarize: возвращать разбивку по говорящим (по умолчанию false). - timestampGranularities: ['segment'] — возвращать временные метки для каждого сегмента. - contextBias: список фраз и терминов, которые должны влиять на декодер. Возвращает обычный text, определённый language, опциональные segments[] и информацию о расходе токенов.

Voxtral speech-to-text

Параметры
  • audioobjectобязательный

    Аудио для расшифровки, переданное в виде публичного URL или ID загруженного файла.

  • contextBiasstring[]

    Слова или фразы, которым отдавать предпочтение при декодировании аудио.

  • diarizeboolean

    Определяет говорящих в возвращаемых сегментах транскрипции. По умолчанию: false.

  • languagestring

    Подсказка по языку ISO-639-1 (например, 'fr', 'en').

  • modelstring

    Модель STT. По умолчанию: voxtral-mini-latest.

  • temperaturenumber

    Температура сэмплирования для транскрипции (0-1).

  • timestampGranularitiesenum[]

    Сейчас поддерживается только 'segment'.

1.0.0основная
0.11.0
0.8.2
0.8.1
0.8.0
0.7.0
0.6.0
0.5.0
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0

Выберите клиент, чтобы установить Swih/mistral-mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "swih-mistral-mcp-268mgoteae": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"swih-mistral-mcp-268mgoteae\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"mistral-mcp@latest\"],\"env\":{\"MISTRAL_API_KEY\":\"your_key_here\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add swih-mistral-mcp-268mgoteae --env MISTRAL_API_KEY=your_key_here -- npx -y mistral-mcp@latest

Либо через JSON-конфиг:

claude mcp add-json swih-mistral-mcp-268mgoteae "{\"command\":\"npx\",\"args\":[\"-y\",\"mistral-mcp@latest\"],\"env\":{\"MISTRAL_API_KEY\":\"your_key_here\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add swih-mistral-mcp-268mgoteae --env MISTRAL_API_KEY=your_key_here -- npx -y mistral-mcp@latest

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.swih-mistral-mcp-268mgoteae]
command = "npx"
args = ["-y", "mistral-mcp@latest"]

[mcp_servers.swih-mistral-mcp-268mgoteae.env]
MISTRAL_API_KEY = "your_key_here"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите Swih/mistral-mcp, а в поле команды запуска — строку ниже:
npx -y mistral-mcp@latest

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например swih-mistral-mcp-268mgoteae.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: swih-mistral-mcp-268mgoteae
    command: npx
    args:
      - "-y"
      - "mistral-mcp@latest"
    env:
      MISTRAL_API_KEY: your_key_here
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "swih-mistral-mcp-268mgoteae": {
      "command": "npx",
      "args": [
        "-y",
        "mistral-mcp@latest"
      ],
      "env": {
        "MISTRAL_API_KEY": "your_key_here"
      }
    }
  }
}

Похожие MCP-сервера

arikusi/deepseek-mcp-server

arikusi/deepseek-mcp-server

от arikusi

MCP-сервер для DeepSeek V4: v4-flash и v4-pro с контекстом 1M, многошаговыми сессиями, вызовом функций, режимом размышлений и учётом стоимости. Интегрируется в Claude Code, Cursor, Windsurf и любые...

TypeScript⭐ 26
merterbak/Grok-MCP

merterbak/Grok-MCP

от merterbak

MCP-сервер для интеграции с xAI Grok: агентные вызовы инструментов (веб-поиск, выполнение кода), генерация изображений и видео, анализ изображений через зрение, работа с файлами и stateful-чаты с с...

Python⭐ 55
stabgan/openrouter-mcp-multimodal

stabgan/openrouter-mcp-multimodal

от stabgan

Мультимодальный MCP-сервер для анализа и генерации текста, изображений, аудио и видео. Интегрируется с Claude Desktop, Cursor и другими клиентами через OpenRouter, давая доступ к 300+ моделям. Вклю...

TypeScript⭐ 99
cerebrixos-org/tuning-engines-cli

cerebrixos-org/tuning-engines-cli

от cerebrixos-org

MCP сервер Tuning Engines - governed AI runtime для управления fine-tuning, RBAC и трассировкой через единый API. Помогает разработчикам дообучать модели под код (агент Cody) и исправление багов (SIERA), а также управлять workflow агентов и инференсом.

TypeScript⭐ 6
VrtxOmega/Ollama-Omega

VrtxOmega/Ollama-Omega

от vrtxomega

Ollama-Omega — MCP-сервер для интеграции локального AI в любую IDE. Через шесть готовых инструментов (чат, генерация, проверка здоровья и другие) работает с моделями Ollama без доступа в облако. По...

Python⭐ 4
pyroprompts/any-chat-completions-mcp

pyroprompts/any-chat-completions-mcp

от pyroprompts

MCP сервер для подключения Claude к любым OpenAI-совместимым API чат-комплекций. Включает инструмент chat, отправляющий запросы к моделям разных провайдеров - от OpenAI до Groq. Полезен разработчикам, желающим использовать мульти-провайдерный подход через единый MCP интерфейс.

JavaScript⭐ 164
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин