Skip to main content

MkDocs Advanced SEO Plugin

PyPI version License: MIT

A comprehensive, deep, and powerful SEO plugin for MkDocs. This plugin is designed to squeeze every bit of SEO performance out of your MkDocs site by automatically generating advanced meta tags, Open Graph tags, Twitter Cards, and structured data (JSON-LD), while handling edge cases and missing data gracefully.

Features

  • Deep SEO Optimization: Automatically inserts a full suite of meta tags (description, keywords, author, robots, etc.).
  • Open Graph Support: Fully treats your pages as rich objects for social networks (Facebook, LinkedIn, etc.) with og:title, og:description, og:image, og:url, og:site_name, and og:locale.
  • Twitter Cards Integration: Optimizes tweets with summary cards, images, and creator/site attributions.
  • JSON-LD Structured Data: Automatically generates Google-compliant WebPage and BreadcrumbList schema.org Data.
  • Smart Date Handling: Seamlessly integrates with mkdocs-document-dates (and similar plugins) to correctly utilize creation and update timestamps (supports complex ISO formats like 2025-07-23T07:55:08.813591+08:00).
  • Canonical URLs: Prevents duplicate content penalties by automatically generating correct canonical links.
  • Robust Fallbacks: Designed to work even when metadata is missing, ensuring your site always builds without errors.

Installation

pip install mkdocs-advanced-seo

Usage

Add advanced-seo to your mkdocs.yml plugins list:

plugins:
  - advanced-seo

Configuration

The plugin is "batteries included" and works out of the box, but you can deeply customize it:

plugins:
  - advanced-seo:
      url_base: "https://yourwebsite.com" # Highly Recommended for canonical/OG links
      
      # Feature Toggles
      use_canonical_url: true
      use_open_graph: true
      use_twitter_cards: true
      add_schema_org_json_ld: true
      
      # Default Values (Fallbacks)
      og_type: "website"
      og_image: "assets/default-share-image.jpg"
      og_locale: "en_US"
      
      # Twitter Defaults
      twitter_card_type: "summary_large_image"
      twitter_site: "@yourproject"
      twitter_creator: "@yourhandle"
      
      # Advanced Integration
      support_document_dates: true # Auto-detect dates from other plugins

Frontmatter Overrides

You can control SEO parameters on a per-page basis using standard YAML frontmatter:

---
title: My Awesome Page
description: A custom description for search engines.
image: assets/page-specific-image.jpg
date: 2023-05-20
---

Development and Testing

This project includes a test suite to verify SEO tag generation.

  1. Clone the repository.

  2. Install dependencies: pip install -e .

  3. Run verification:

    python verify.py
    

Support & Contributing

This project is personally maintained by the author.

  • Bug Reports: Welcome! Please open an issue if you find a bug or incorrect SEO tag generation.
  • Contributions: Pull requests for bug fixes and corrections are appreciated. Major feature requests may not be prioritized due to time constraints.

[!NOTE] This project structure and code were generated by Antigravity (Google DeepMind) under human supervision. Verification and acceptance were performed by the user.

Metadata

Release files for mkdocs-advanced-seo 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mkdocs-advanced-seo 1.0.3
File Size Uploaded
mkdocs_advanced_seo-1.0.3.tar.gz 12.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mkdocs-advanced-seo 1.0.3
File Interpreter ABI Platform
mkdocs_advanced_seo-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 20.4 kB

Release files / mkdocs_advanced_seo-1.0.3.tar.gz

Download URL mkdocs_advanced_seo-1.0.3.tar.gz
Size 12.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9f079064bf6c4b29f7b3e4f63e83c39b51328b7106786db2e289026f948855cc
BLAKE2b-256 checksum
How to use checksums
cdd1f0e4ce5d7ea5cd6a74127674fba687cd9c6771ddaf857ab0d6ffecc24bf9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.

Transparency log

Release files / mkdocs_advanced_seo-1.0.3-py3-none-any.whl

Download URL mkdocs_advanced_seo-1.0.3-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1bc2296a1f74612ebad12a0c131ebe8ae0edf54b98a22e1d60af4a69b00f101d
BLAKE2b-256 checksum
How to use checksums
1b84c4383c37f7e9121428c8468085c8173ba3e0f8fbd5977d9fc73b6bd61fa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page