diff --git a/ai/llmstxt.mdx b/ai/llmstxt.mdx
index 2ccfa3d8d..cff20ca29 100644
--- a/ai/llmstxt.mdx
+++ b/ai/llmstxt.mdx
@@ -14,10 +14,15 @@ Mintlify automatically hosts an `llms.txt` file at the root of your project that
If your site requires authentication, `llms.txt` and `llms-full.txt` also require authentication to view. LLMs and AI tools that cannot authenticate into your site cannot access these files. The files exclude pages that belong to [user groups](/deploy/authentication-setup#control-access-with-groups).
-View your `llms.txt` by appending `/llms.txt` to your documentation site's URL.
+View your `llms.txt` by appending `/llms.txt` to your documentation site's URL. Mintlify also hosts the file at `/.well-known/llms.txt` for compatibility with tools that follow the `.well-known` convention.
Open the llms.txt for this site.
+Mintlify adds HTTP headers to every page response so AI tools can discover your `llms.txt` files without prior knowledge of their location:
+
+- `Link: ; rel="llms-txt", ; rel="llms-full-txt"`: Follows the standard HTTP `Link` header format for resource discovery.
+- `X-Llms-Txt: /llms.txt`: A convenience header for tools that check for `llms.txt` support.
+
## llms.txt structure
An `llms.txt` file is a plain Markdown file that contains:
@@ -26,27 +31,30 @@ An `llms.txt` file is a plain Markdown file that contains:
- **Structured content sections** with links and a description of each page in your documentation.
- **API specification links** to your OpenAPI and AsyncAPI specs, if your documentation includes them.
-The `llms.txt` file lists your pages alphabetically in the order they appear in your repository, starting from the root directory.
+The `llms.txt` file lists your pages alphabetically in the order they appear in your repository, starting from the root directory. Page links in the `llms.txt` file include a `.md` extension so AI tools can fetch the Markdown version of each page directly.
Each page's description comes from the `description` field in its frontmatter. Descriptions truncate at 300 characters and the first line break. For API reference pages, the description also includes the specification information from the `openapi` or `api` frontmatter field. Pages without a `description` field appear in the `llms.txt` file without a description.
+This structured approach allows LLMs to efficiently process your documentation at a high level and locate relevant content for user queries, improving the accuracy and speed of AI-assisted documentation searches.
+
```mdx Example llms.txt
# Site title
## Docs
-- [API](https://example.com/docs/api): Endpoint list and usage
-- [Install](https://example.com/docs/install): Setup steps
-- [Getting started](https://example.com/docs/start): Intro guide
+- [API](https://example.com/docs/api.md): Endpoint list and usage
+- [Install](https://example.com/docs/install.md): Setup steps
+- [Getting started](https://example.com/docs/start.md): Intro guide
-## API specifications
+## OpenAPI Specs
- [openapi](https://example.com/docs/openapi.json)
+
+## AsyncAPI Specs
+
- [asyncapi](https://example.com/docs/asyncapi.yaml)
```
-This structured approach allows LLMs to efficiently process your documentation at a high level and locate relevant content for user queries, improving the accuracy and speed of AI-assisted documentation searches.
-
## llms-full.txt
The `llms-full.txt` file combines your entire documentation site into a single file as context for AI tools and LLM indexing.
diff --git a/ai/markdown-export.mdx b/ai/markdown-export.mdx
index df461f83d..51d041f5a 100644
--- a/ai/markdown-export.mdx
+++ b/ai/markdown-export.mdx
@@ -16,6 +16,14 @@ Add `.md` to any page's URL to view a Markdown version.
Open this page as Markdown
+## Accept header
+
+Send a request with `Accept: text/markdown` or `Accept: text/plain` to any page URL to receive the Markdown version instead of HTML. This is useful for AI tools and integrations that programmatically fetch documentation content.
+
+```bash
+curl -H "Accept: text/markdown" https://mintlify.com/docs/ai/markdown-export
+```
+
## Keyboard shortcut
Press Command + C (Ctrl + C on Windows) to copy a page as Markdown to your clipboard.
diff --git a/ai/skillmd.mdx b/ai/skillmd.mdx
index 9475463d1..3acf58463 100644
--- a/ai/skillmd.mdx
+++ b/ai/skillmd.mdx
@@ -24,7 +24,7 @@ View your `skill.md` by appending `/skill.md` to your documentation site's URL.
## Use `skill.md` files with agents
- If you use a [reverse proxy](/deploy/reverse-proxy), configure it to forward `/skill.md` and `/.well-known/skills/*` paths (with caching disabled) to your Mintlify subdomain.
+ If you use a [reverse proxy](/deploy/reverse-proxy), configure it to forward `/skill.md` and `/.well-known/skills/*` paths to your Mintlify subdomain.
Agents can process your `skill.md` with the [skills CLI](https://www.npmjs.com/package/skills).
@@ -79,4 +79,30 @@ metadata:
author: mintlify
version: "1.0"
---
-```
\ No newline at end of file
+```
+
+## Skills discovery endpoints
+
+Mintlify hosts a skills directory at `/.well-known/skills/` that agents can use to discover and fetch your skill files programmatically.
+
+### Skills index
+
+`GET /.well-known/skills/index.json` returns a JSON manifest listing all available skills:
+
+```json
+{
+ "skills": [
+ {
+ "name": "my-product",
+ "description": "A brief description of what your skill does.",
+ "files": ["SKILL.md"]
+ }
+ ]
+}
+```
+
+The `name` field is a URL-safe slug derived from the `name` in your `skill.md` frontmatter.
+
+### Individual skill files
+
+`GET /.well-known/skills/{name}/skill.md` returns the `skill.md` file for a specific skill identified by its slugified name from the index.
diff --git a/api/assistant/create-assistant-message-v2.mdx b/api/assistant/create-assistant-message-v2.mdx
index fd5ac5d2d..606d628b3 100644
--- a/api/assistant/create-assistant-message-v2.mdx
+++ b/api/assistant/create-assistant-message-v2.mdx
@@ -17,7 +17,7 @@ keywords:
The assistant message v2 endpoint is compatible with **AI SDK v5+**. If you
use AI SDK v4, use the [assistant message v1
- endpoint](/api-reference/assistant/create-assistant-message) instead.
+ endpoint](/api/assistant/create-assistant-message) instead.
## Integration with `useChat`
diff --git a/api/assistant/create-assistant-message.mdx b/api/assistant/create-assistant-message.mdx
index 921a09ffa..977dd0242 100644
--- a/api/assistant/create-assistant-message.mdx
+++ b/api/assistant/create-assistant-message.mdx
@@ -8,7 +8,7 @@ keywords: [ "assistant message", "embed", "chat", "integrate", "ai sdk v4" ]
Deprecated
- The assistant message v1 endpoint is compatible with **AI SDK v4**. If you use AI SDK v5 or later, use the [assistant message v2 endpoint](/api-reference/assistant/create-assistant-message-v2) instead.
+ The assistant message v1 endpoint is compatible with **AI SDK v4**. If you use AI SDK v5 or later, use the [assistant message v2 endpoint](/api/assistant/create-assistant-message-v2) instead.
## Integration with `useChat`