A Markdown formatter rewrites a Markdown file in one consistent style without changing what it renders, and a linter points out mistakes that make it render wrongly. This tool does both: paste Markdown and you get a formatted version plus a lint report with line numbers.
Formatting: one bullet marker throughout (-, * or +), one space after heading #s and closing #s removed, a blank line around headings, lists, tables and code blocks, numbered lists renumbered 1, 2, 3, table pipes aligned, thematic breaks written as ---, trailing spaces removed (two-space hard breaks are kept), and runs of blank lines collapsed. Code blocks and YAML front matter are left untouched. A fix for "#Heading" without a space is on by default and can be turned off.
Lint checks: headings missing the space after #, empty headings, more than one H1, skipped heading levels (H2 to H4), duplicate headings, headings ending in punctuation, images without alt text, links with no URL or no text, bare URLs, reference links with no definition, code blocks without a language, unclosed code fences, tabs used for indentation, trailing whitespace and a missing final newline. Limits: it is not a full markdownlint or Prettier run, so it doesn't reflow long lines or apply project config files.