Markitdown icon

Markitdown

Convert any file into markdown

Overview

This node converts any input file into Markdown format using the external command-line tool markitdown. It is useful when you want to transform documents or files (e.g., PDFs, Word documents, or other supported formats) into Markdown text for easier editing, version control, or integration with Markdown-based systems.

Typical use cases include:

  • Automating document conversion workflows.
  • Preparing content for static site generators or documentation platforms.
  • Extracting readable Markdown from complex file formats.

Properties

Name Meaning
Input Binary Field The name of the binary property that contains the file to be processed and converted.

Output

The node outputs an array of items where each item has:

  • json.data: A string containing the Markdown content converted from the input file.
  • binary: An empty object (no binary output is produced).

If an error occurs during processing and "Continue On Fail" is enabled, the output item will contain a JSON object with an error field describing the issue.

Dependencies

  • Requires the markitdown command-line tool to be installed and accessible in the system's PATH.
  • Requires Python 3 installed on the system.
  • Installation instructions for markitdown:
    1. Install Python 3: https://python.org
    2. Install markitdown via pip: pip install markitdown
    3. Ensure the markitdown executable is available in the system PATH.

Troubleshooting

  • Error: "markitdown command not found"
    This indicates that the node cannot find the markitdown executable. To resolve:
    • Verify Python 3 is installed.
    • Install markitdown using pip.
    • Confirm that the markitdown command is accessible from the terminal/command prompt.
  • File reading/writing errors
    These may occur if the input binary data is missing or corrupted, or if there are permission issues writing temporary files.
  • Conversion failures
    If markitdown fails to convert the file, check the input file format compatibility and ensure the input binary field is correctly specified.

Links and References

Discussion