Skip to content

feat(seo): add SEO/AEO metadata (seo block + page descriptions). 5 page descriptions. - #656

Open
dionlow wants to merge 9 commits into
mainfrom
seo-aeo-quick-wins
Open

feat(seo): add SEO/AEO metadata (seo block + page descriptions). 5 page descriptions.#656
dionlow wants to merge 9 commits into
mainfrom
seo-aeo-quick-wins

Conversation

@dionlow

@dionlow dionlow commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Description

Added descriptions and re-wrote intro paragraphs for 5 core pages. Descriptions double as first paragraph/subtitle under the Title and a summary of the page for LLMs/SEO to capture. They also show as previews in links.

Screenshot 2026-07-21 at 5 11 25 PM

SEO Changes

First increment of an SEO/AEO discoverability pass ("quick wins"). Two self-contained, additive changes:

1. seo block in docs.json (added via generate-docs.ts so it survives regeneration):

  • og:site_name — social card metadata
  • indexing: "navigable" — index pages in the nav (safe default, matches current behavior)
  • organization — publisher structured data → better Google / AI-engine entity understanding

2. description frontmatter on 5 flagship pages (overview, quickstart, read-actions, write-actions, subscribe-actions).

Why it matters: 326 of 327 pages currently have no description. In Mintlify, description feeds the <meta name="description">, the OG/Twitter social preview, the search-result snippet, and the auto-generated llms.txt/llms-full.txt that AI answer engines (ChatGPT, Perplexity, Claude, Google AI Overviews) read. Each description here is answer-first, ~150 chars, leading with "Ampersand" + the primary keyword.

Deferred (not in this PR)

  • og:image — omitted to avoid a poor social card from the transparent logo; needs a proper 1200×630 branded image.
  • Descriptions for the remaining ~15 hand-written core pages (drafts ready).
  • Provider guides (191) and API-reference pages (descriptions live upstream in amp-labs/openapi).

Notes for review

  • src/generate-docs.ts is the source of truth; src/docs.json is the regenerated output (committed because Mintlify consumes it). The docs.json diff is 10 lines, additive only — no navigation churn.
  • If hidden/unlisted pages should rank, switch indexing to "all".

Improve search and answer-engine (AI) discoverability:

- Add an `seo` block to docs.json via generate-docs.ts: og:site_name,
  indexing "navigable", and organization structured data (publisher entity).
- Add answer-first `description` frontmatter to 5 flagship pages
  (overview, quickstart, read/write/subscribe actions). Descriptions feed
  the meta description, social preview, search snippet, and the
  auto-generated llms.txt that AI engines read.

First increment of a quick-wins pass; remaining core-page descriptions to follow.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dionlow
dionlow marked this pull request as ready for review July 21, 2026 23:22
@mintlify

mintlify Bot commented Jul 21, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
Ampersand 🟢 Ready View Preview Jul 21, 2026, 11:25 PM

@mintlify

mintlify Bot commented Jul 21, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
Ampersand 🟡 Building Jul 21, 2026, 11:21 PM

Comment thread src/quickstart.mdx Outdated
Comment thread src/read-actions.mdx Outdated
Comment thread src/write-actions.mdx Outdated
Co-authored-by: Dion Low <dionlow17@gmail.com>
@dionlow

dionlow commented Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

Description adds preview to links:

Screenshot 2026-07-21 at 4 32 42 PM

The `description` frontmatter renders as a visible subtitle under the H1,
so it was repeating each page's opening paragraph. Reword descriptions to
read cleanly as subtitles (still keyword-rich for SEO/llms.txt) and rewrite
the first paragraphs to add complementary detail. Also remove em dashes and
fix a "send them" grammar bug on read-actions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
dionlow and others added 2 commits July 21, 2026 16:59
…lity

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dionlow dionlow changed the title feat(seo): add SEO/AEO metadata (seo block + page descriptions) feat(seo): add SEO/AEO metadata (seo block + page descriptions). 5 page descriptions. Jul 22, 2026
@dionlow
dionlow requested a review from laurenzlong July 22, 2026 00:19

@laurenzlong laurenzlong left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thank you!

Comment thread src/overview.mdx
---

[Ampersand](https://www.withampersand.com/) is a declarative platform for SaaS builders who are creating product integrations. It allows you to:
A single [Ampersand](https://www.withampersand.com/) integration gives the following capabilities:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A single [Ampersand](https://www.withampersand.com/) integration gives the following capabilities:
[Ampersand](https://www.withampersand.com/) is a platform for building deep integration with capabilities like:

Comment thread src/read-actions.mdx
---

A read action reads data from your customer's SaaS and send them to Destinations that you define.
Data read from your customer's SaaS is delivered to the [Destinations](/destinations) you define.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Data read from your customer's SaaS is delivered to the [Destinations](/destinations) you define.
Read actions fetch data from your customer's SaaS and deliver them to the [Destinations](/destinations) you define.

Comment thread src/write-actions.mdx
---

A write action writes data to your customer's SaaS whenever you make an API request to us. This page focuses on writing data to existing fields. If you are looking to create new custom fields prior to writing data, please see [Create or update custom fields](/manage-customer-schemas#create-or-update-custom-fields).
Write actions run on demand: Ampersand writes to your customer's SaaS whenever you make an API request. This page focuses on writing to existing fields. To create custom fields first, see [Create or update custom fields](/manage-customer-schemas#create-or-update-custom-fields).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Write actions run on demand: Ampersand writes to your customer's SaaS whenever you make an API request. This page focuses on writing to existing fields. To create custom fields first, see [Create or update custom fields](/manage-customer-schemas#create-or-update-custom-fields).
Write actions run on demand: Ampersand writes to your customer's SaaS whenever you make an API request. This page focuses on writing to existing fields. To create custom fields, see [Create or update custom fields](/manage-customer-schemas#create-or-update-custom-fields).

@linear

linear Bot commented Jul 23, 2026

Copy link
Copy Markdown

CON-3434

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants