An AI agent should choose which file to convert and which format to convert it to, and a conversion engine should do the converting. With the GroupDocs.Conversion.Mcp server, Claude, Cursor or GitHub Copilot call that engine locally, on your machine, from one sentence:

Convert contract.docx to PDF

The step-by-step version with config and troubleshooting is in the documentation: How to convert documents with AI agents using MCP. This post explains why the split matters and where the agent should stay out of the way.

Co idzie nie tak, gdy agent sam konwertuje plik?

Model językowy, który „konwertuje” PDF na Word, w rzeczywistości nic nie konwertuje. Odczytuje otrzymaną treść i zapisuje nową treść w formacie docelowym. Czego model nie zobaczył, nie może odtworzyć: dokładnej czcionki, geometrii kolumn, podziału strony przed tabelą, nazw stylów, od których zależy szablon Worda. To, co wraca, wygląda jak konwersja, ale jest jedynie przepisaniem.

To jest tryb awaryjny, o którym jest ten post. Jest cichy: wynik otwiera się bez błędów, więc nikt go nie sprawdza, dopóki tabela nie przemieści się lub nagłówek nie straci swojego stylu. Wierność renderowania to deterministyczna praca silnika, a nie generowanie.

Co powinien decydować agent, a co powinien robić silnik?

Podziel zadanie wzdłuż granicy między osądem a wykonaniem.

Pytanie Agent decyduje Silnik wykonuje
Jakie pliki są w zakresie? Odczytuje twoje polecenie i folder przechowywania Nic
Jaki format docelowy? Mapuje „make it editable” na DOCX, „archive it” na PDF Nic
Czy plik w ogóle da się skonwertować? Wywołuje get_supported_formats i odczytuje odpowiedź Zgłasza prawidłowe formaty docelowe
Jak duży jest plik? Wywołuje get_document_info i odczytuje liczbę stron Odczytuje typ, liczbę stron, właściwości
Sama konwersja Wywołuje convert Renderuje wynik przy użyciu silnika GroupDocs.Conversion
Co zrobić w przypadku niepowodzenia Ponawia, pyta cię lub pomija plik Zwraca przyczynę jako tekst

Agent nigdy nie dotyka bajtów twojego dokumentu. Przekazuje jedynie nazwę pliku i format, a silnik zwraca plik.

Jak podłączyć agenta do silnika lokalnie?

Zarejestruj serwer raz w swoim kliencie. Claude Desktop używa claude_desktop_config.json, Claude Code używa claude mcp add, VS Code z GitHub Copilot używa mcp.json, a Cursor używa ~/.cursor/mcp.json. Serwer obsługuje także Visual Studio 2022, Windsurf, Cline, Codex CLI i JetBrains Rider. Przykładowy wpis dla Claude Desktop wygląda tak:

{
  "mcpServers": {
    "groupdocs-conversion": {
      "type": "stdio",
      "command": "dnx",
      "args": ["GroupDocs.Conversion.Mcp", "--yes"],
      "env": { "GROUPDOCS_MCP_STORAGE_PATH": "/path/to/documents" }
    }
  }
}

dnx wymaga .NET 10 SDK. Jeśli wolisz Docker, obraz samodzielny to ghcr.io/groupdocs-conversion/conversion-net-mcp:latest, uruchamiany poleceniem docker run --rm -i -v $(pwd)/documents:/data. Klient komunikuje się z serwerem przez stdio: ścieżka to agent, lokalny serwer, lokalny system plików. Po rejestracji uruchom klienta ponownie.

Jakie narzędzie wywołuje każde żądanie?

Serwer udostępnia cztery narzędzia. Ich nazwy są dosłowne; agenci szukają ich, gdy coś się zepsuje.

  • convert konwertuje dokument na inny format i zapisuje wynik w twoim folderze przechowywania lub wyjściowym. Przyjmuje file, format (np. pdf, docx, xlsx, pptx, html, png, jpg, csv, txt, rtf, md) oraz opcjonalne password.
  • get_supported_formats wymienia formaty docelowe, na które może zostać przekształcony dany plik źródłowy.
  • get_document_info zwraca typ pliku, liczbę stron i podstawowe właściwości bez konwersji.
  • get_license_status informuje, czy serwer działa w trybie ewaluacyjnym, na pliku licencyjnym czy w trybie rozliczanym.

Prompty otwarte działają, ponieważ agent łączy je w łańcuchy:

What formats can I turn this Visio file into? Then convert it to PDF.

Check the page count of whitepaper.pdf first, then convert it to DOCX.

Istniejące pliki nigdy nie są nadpisywane. Druga konwersja tego samego pliku otrzymuje odrębną nazwę, np. report (1).pdf.

Przykładowa sesja

To skrócona, ilustracyjna sesja zbudowana na podstawie opisów narzędzi w dokumentacji, a nie zrzut ekranu.

You:    Convert contract-draft.pdf to DOCX so I can edit it.
Agent:  [calls convert with file.filePath = "contract-draft.pdf", format = "docx"]
Agent:  Done. The converted file is saved as contract-draft.docx in your output folder.

Pełną pętlę pokazuje the n8n walkthrough, gdzie ten sam silnik jest sterowany workflowem zamiast czatem, a announcement opisuje serwer ogólnie.

Jakie są ograniczenia?

  • Evaluation mode. Bez licencji serwer dodaje znak wodny ewaluacji do skonwertowanego wyniku i ogranicza każdy proces serwera do 15 otwartych dokumentów; ponowne uruchomienie serwera resetuje licznik. Najpierw zapytaj agenta „what is the license status of the conversion server?”; get_license_status odpowiada bez przetwarzania dokumentu.
  • No OCR. Serwer konwertuje dokumenty, które posiadają warstwę tekstową. Skan zapisany jako PDF zawierający wyłącznie obrazy nie zostanie przetworzony na edytowalny tekst.
  • Conversion, not extraction. Ten serwer przetwarza całe dokumenty. Do ekstrakcji danych na poziomie pól lepiej użyć towarzyszącego serwera GroupDocs.Parser.Mcp (dostępnego wyłącznie jako obraz Docker), a wiele pipeline’ów korzysta z obu rozwiązań.

Najczęściej zadawane pytania

Czy Claude może konwertować docx na pdf?
Tak, przy podłączonym serwerze konwersji. Claude wywołuje convert z format: "pdf", a silnik GroupDocs tworzy plik na twoim komputerze.

Czy moje pliki są przesyłane, gdy agent je konwertuje?
Nie przy tym serwerze. Działa lokalnie przez stdio, a dokumenty pozostają w twoim folderze przechowywania. Twój plik licencyjny jest również odczytywany z lokalnego dysku.

Jakie formaty może konwertować serwer?
Ponad 100 formatów dokumentów, arkuszy kalkulacyjnych, prezentacji, obrazów, e‑maili, CAD i stron internetowych – ten sam zestaw co biblioteka GroupDocs.Conversion .NET. Zapytaj get_supported_formats o dokładną listę dla danego pliku.

Zanurz się głębiej