Skip to content

Commit ab466a8

Browse files
committed
Merge branch 'main' into support-api-path
2 parents 6ae0ceb + 1aaae5f commit ab466a8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+938
-503
lines changed

.claude/CLAUDE.md

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,12 @@
44
- You can push back on ideas-this can lead to better documentation. Cite sources and explain your reasoning when you do so
55
- ALWAYS ask for clarification rather than making assumptions
66
- NEVER lie, guess, or make up information
7+
- If you are making an inferrance, stop and ask me for confirmation or say that you need more information
78

89
## Project context
910
- Format: MDX files with YAML frontmatter
1011
- Config: docs.json for navigation, theme, settings
12+
- See the docs.json schema: https://mintlify.com/docs.json
1113
- Components: Mintlify components
1214

1315
## Content strategy
@@ -33,37 +35,31 @@
3335
- Relative paths for internal links
3436
- Use broadly applicable examples rather than overly specific business cases
3537
- Lead with context when helpful - explain what something is before diving into implementation details
36-
37-
### Style preferences (learned from content refresh project)
38-
#### Headings and formatting
3938
- Use sentence case for all headings ("Getting started", not "Getting Started")
40-
- Use "Properties" instead of "Props" for component documentation
4139
- Use sentence case for code block titles ("Expandable example", not "Expandable Example")
40+
- Prefer active voice and direct language
41+
- Remove unnecessary words while maintaining clarity
42+
- Break complex instructions into clear numbered steps
43+
- Make language more precise and contextual
44+
- Use [Lucide](https://lucide.dev) icon library
4245

43-
#### Component introductions
46+
### Component introductions
4447
- Start with action-oriented language: "Use [component] to..." rather than "The [component] component..."
4548
- Be specific about what components can contain or do
4649
- Make introductions practical and user-focused
4750

48-
#### Property descriptions
51+
### Property descriptions
4952
- End all property descriptions with periods for consistency
5053
- Be specific and helpful rather than generic
5154
- Add scope clarification where needed (e.g., "For Font Awesome icons only:")
5255
- Use proper technical terminology ("boolean" not "bool")
5356

54-
#### Language and tone
55-
- Prefer active voice and direct language
56-
- Remove unnecessary words while maintaining clarity
57-
- Use "you complete" over "completing" for more direct communication
58-
- Break complex instructions into clear numbered steps
59-
- Make language more precise and contextual
60-
61-
#### Code examples
57+
### Code examples
6258
- Keep examples simple and practical
6359
- Use consistent formatting and naming
6460
- Provide clear, actionable examples rather than showing multiple options when one will do
6561

66-
#### Content organization
62+
## Content organization
6763
- Structure content in the order users need it
6864
- Combine related information to reduce redundancy
6965
- Use specific links (direct to relevant pages rather than generic dashboards)

.cursor/rules/writing-standards.mdc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ You are an AI writing assistant specialized in creating exceptional technical do
3939

4040
## Mintlify component reference
4141

42+
docs.json schema: https://mintlify.com/docs.json
43+
4244
### Callout components
4345

4446
#### Note - Additional helpful information

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Mintlify Documentation
22

3-
Install the [Mintlify CLI](https://www.npmjs.com/package/mintlify) to preview the documentation changes locally. To install, use the following command
3+
Install the [Mint CLI](https://www.npmjs.com/package/mint) to preview the documentation changes locally. To install, use the following command
44

55
```
6-
npm i -g mintlify
6+
npm i -g mint
77
```
88

9-
Run the following command at the root of your documentation (where mint.json is)
9+
Run the following command at the root of your documentation (where docs.json is)
1010

1111
```
12-
mintlify dev
12+
mint dev
1313
```

ai/contextual-menu.mdx

Lines changed: 69 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,24 @@ icon: "square-menu"
55
---
66

77
import { PreviewButton } from "/snippets/previewbutton.jsx"
8+
import IconsRequired from "/snippets/icons-required.mdx";
89

910
The contextual menu provides quick access to AI-optimized content and direct integrations with popular AI tools. When users select the contextual menu on any page, they can copy content as context for AI tools or open conversations in ChatGPT, Claude, Perplexity, or a custom tool of your choice with your documentation already loaded as context.
1011

1112
## Menu options
1213

13-
- **Copy page**: Copies the current page as Markdown for pasting as context into AI tools.
14-
- **View as Markdown**: Opens the current page as Markdown.
15-
- **Open in ChatGPT**: Creates a ChatGPT conversation with the current page as context.
16-
- **Open in Claude**: Creates a Claude conversation with the current page as context.
17-
- **Open in Perplexity**: Creates a Perplexity conversation with the current page as context.
18-
- **[Your custom options](#adding-custom-options)**: Add your own options to the menu.
14+
The contextual menu includes several pre-built options that you can enable by adding their identifier to your configuration.
15+
16+
| Option | Identifier | Description |
17+
|:--------|:------------|:-------------|
18+
| **Copy page** | `copy` | Copies the current page as Markdown for pasting as context into AI tools |
19+
| **View as Markdown** | `view` | Opens the current page as Markdown |
20+
| **Open in ChatGPT** | `chatgpt` | Creates a ChatGPT conversation with the current page as context |
21+
| **Open in Claude** | `claude` | Creates a Claude conversation with the current page as context |
22+
| **Open in Perplexity** | `perplexity` | Creates a Perplexity conversation with the current page as context |
23+
| **Copy MCP Server URL** | `mcp` | Copies the MCP server URL to the clipboard |
24+
| **Open in Cursor** | `cursor` | Installs the hosted MCP server in Cursor |
25+
| **Open in VSCode** | `vscode` | Installs the hosted MCP server in VSCode |
1926

2027
<Frame>
2128
<img
@@ -36,7 +43,10 @@ Add the `contextual` field to your `docs.json` file and specify which options yo
3643
"view",
3744
"chatgpt",
3845
"claude",
39-
"perplexity"
46+
"perplexity",
47+
"mcp",
48+
"cursor",
49+
"vscode"
4050
]
4151
}
4252
}
@@ -54,9 +64,7 @@ Create custom options in the contextual menu by adding an object to the `options
5464
The description of the option. Displayed beneath the title when the contextual menu is expanded.
5565
</ResponseField>
5666

57-
<ResponseField name="icon" type="string" required>
58-
The icon of the option. Accepts any icon from the [Icons](/components/icons) collection.
59-
</ResponseField>
67+
<IconsRequired />
6068

6169
<ResponseField name="href" type="string | object" required>
6270
The href of the option. Use a string for simple links or an object for dynamic links with query parameters.
@@ -75,7 +83,10 @@ Create custom options in the contextual menu by adding an object to the `options
7583
</ResponseField>
7684

7785
<ResponseField name="value" type="string" required>
78-
The query parameter value. Use `$page` to insert the current page content in Markdown or `$path` to insert the current page path.
86+
The query parameter value. We will replace the following placeholders with the corresponding values:
87+
- Use `$page` to insert the current page content in Markdown.
88+
- Use `$path` to insert the current page path.
89+
- Use `$mcp` to insert the hosted MCP server URL.
7990
</ResponseField>
8091
</Expandable>
8192
</ResponseField>
@@ -84,28 +95,54 @@ Create custom options in the contextual menu by adding an object to the `options
8495

8596
Example custom option:
8697

87-
```json {8-21}
88-
"contextual": {
89-
"options": [
90-
"copy",
91-
"view",
92-
"chatgpt",
93-
"claude",
94-
"perplexity",
95-
{
96-
"title": "Ask Gemini",
97-
"description": "Ask Google Gemini about the current page",
98-
"icon": "sparkle",
99-
"href": {
100-
"base": "https://gemini.google.com/app",
101-
"query": [
102-
{
103-
"key": "q",
104-
"value": "Ask question about https://mintlify.com/docs$path.md"
105-
}
98+
```json {9-14} wrap
99+
{
100+
"contextual": {
101+
"options": [
102+
"copy",
103+
"view",
104+
"chatgpt",
105+
"claude",
106+
"perplexity",
107+
{
108+
"title": "Request a feature",
109+
"description": "Join the discussion on GitHub to request a new feature",
110+
"icon": "plus",
111+
"href": "https://github.com/orgs/mintlify/discussions/categories/feature-requests"
112+
}
106113
]
107-
}
108114
}
109-
]
110115
}
111116
```
117+
118+
### Custom option examples
119+
120+
<AccordionGroup>
121+
<Accordion title="Simple link">
122+
```json
123+
{
124+
"title": "Request a feature",
125+
"description": "Join the discussion on GitHub",
126+
"icon": "plus",
127+
"href": "https://github.com/orgs/mintlify/discussions/categories/feature-requests"
128+
}
129+
```
130+
</Accordion>
131+
132+
<Accordion title="Dynamic link with page content">
133+
```json
134+
{
135+
"title": "Share on X",
136+
"description": "Share this page on X",
137+
"icon": "x",
138+
"href": {
139+
"base": "https://x.com/intent/tweet",
140+
"query": {
141+
"key": "text",
142+
"value": "Check out this documentation: $page"
143+
}
144+
}
145+
}
146+
```
147+
</Accordion>
148+
</AccordionGroup>

ai/model-context-protocol.mdx

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
---
2+
title: "Model Context Protocol"
3+
description: "Let users access your docs and APIs through their favorite AI tools"
4+
icon: 'audio-waveform'
5+
---
6+
7+
<Info>
8+
MCP server generation is available on [Pro and Enterprise plans](https://mintlify.com/pricing?ref=mcp).
9+
</Info>
10+
11+
## About MCP servers
12+
13+
The Model Context Protocol (MCP) is an open protocol that creates standardized connections between AI applications and external services, like documentation. Mintlify generates an MCP server from your documentation and OpenAPI specifications, preparing your content for the broader AI ecosystem where any MCP client (like Claude, Cursor, Goose, and others) can connect to your documentation and APIs.
14+
15+
Your MCP server exposes tools for AI applications to search your documentation and interact with your APIs.
16+
17+
## Accessing your MCP server
18+
19+
<Note>
20+
MCP servers can only be generated for public documentation. Documentation behind end-user authentication cannot be accessed for server generation.
21+
</Note>
22+
23+
Your MCP server is automatically generated and hosted at your documentation URL with the `/mcp` path.
24+
25+
For example, Mintlify's MCP server is available at `https://mintlify.com/docs/mcp`.
26+
27+
## Configuring your MCP server
28+
29+
All MCP servers include the `search` tool by default, allowing users to query information from your docs in other tools.
30+
31+
If you have an OpenAPI specification, you can expose specific endpoints as MCP tools by using the `x-mcp` extension at either the file or endpoint level.
32+
33+
For example, the Mintlify MCP server includes tools to get status updates, trigger updates, and create assistant chats.
34+
35+
### File-level configuration
36+
37+
Enable MCP for all endpoints in an OpenAPI specification file:
38+
39+
```json
40+
{
41+
"openapi": "3.1.0",
42+
"x-mcp": {
43+
"enabled": true
44+
},
45+
// Other OpenAPI content
46+
}
47+
```
48+
49+
### Endpoint-level configuration
50+
51+
Enable MCP for specific endpoints only:
52+
53+
```json
54+
{
55+
"paths": {
56+
"/api/v1/users": {
57+
"x-mcp": {
58+
"enabled": true
59+
},
60+
// Endpoint configuration
61+
}
62+
}
63+
}
64+
```
65+
66+
## Using your MCP server
67+
68+
Your users must connect your MCP server to their preferred AI tools.
69+
70+
1. Make your MCP server URL publicly available.
71+
2. Users copy your MCP server URL and add it to their tools.
72+
3. The tools will have standardized access to your documentation and API endpoints.
73+
74+
### Claude
75+
76+
To use your MCP server with Claude:
77+
78+
<Steps>
79+
<Step title="Add your MCP server to Claude">
80+
1. Navigate to the [Connectors](https://claude.ai/settings/connectors) page in the Claude settings.
81+
2. Select **Add custom connector**.
82+
3. Add your MCP server name and URL.
83+
4. Select **Add**.
84+
</Step>
85+
<Step title="Access your MCP server in your chat">
86+
1. When using Claude, select the attachments button (the plus icon).
87+
2. Select your MCP server.
88+
3. Query Claude with your MCP server as context.
89+
</Step>
90+
</Steps>
91+
92+
See the [Model Context Protocol documentation](https://modelcontextprotocol.io/docs/tutorials/use-remote-mcp-server#connecting-to-a-remote-mcp-server) for more details.
93+
94+
### Cursor
95+
96+
To connect your MCP server to Cursor:
97+
98+
<Steps>
99+
<Step title="Open MCP settings">
100+
1. Use <kbd>Command</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd> (<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd> on Windows) to open the command palette.
101+
2. Search for "Open MCP settings".
102+
3. Select **Add custom MCP**. This will open the `mcp.json` file.
103+
</Step>
104+
<Step title="Configure your server">
105+
In `mcp.json`, configure your server:
106+
107+
```json mcp.json example
108+
{
109+
"mcpServers": {
110+
"server-name": {
111+
"url": "https://your-docs-site.com/mcp"
112+
}
113+
}
114+
}
115+
```
116+
</Step>
117+
<Step title="Test the connection">
118+
In Cursor's chat, you can ask "What tools do you have available?" Cursor should have your documentation search and any configured API endpoints.
119+
</Step>
120+
</Steps>
121+
122+
See [Installing MCP servers](https://docs.cursor.com/en/context/mcp#installing-mcp-servers) in the Cursor documentation for more details.
123+
124+
## Authentication
125+
126+
When using API endpoints through your MCP server, AI tools will prompt users for their API keys as needed. These keys are handled directly by the tool and not stored or processed by Mintlify.
127+
128+
If a user asks their AI tool to demonstrate an API call, it will request the necessary authentication credentials from the user at that moment.
129+
130+
## Monitoring your MCP server
131+
132+
You can view all available MCP tools in the **Available tools** section of the [MCP Server page](https://dashboard.mintlify.com/products/mcp) in your dashboard.
133+
134+
<Frame>
135+
<img src="/images/mcp/mcp-server-page-light.png" alt="MCP dashboard with Available tools section emphasized" class="block dark:hidden" />
136+
<img src="/images/mcp/mcp-server-page-dark.png" alt="MCP dashboard with Available tools section emphasized" class="hidden dark:block" />
137+
</Frame>

ai/slack-app.mdx

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
title: "Slack app"
3+
description: "Add a bot that searches your docs to answer questions in your Slack workspace"
4+
icon: "slack"
5+
---
6+
7+
<Info>
8+
The Slack app is available for [Pro and Enterprise plans](https://mintlify.com/pricing?ref=slack-app).
9+
</Info>
10+
11+
The Slack app adds a bot to your Slack workspace that searches your documentation to answer users' questions. The bot responds to direct messages, @mentions, and to any questions in a channel specifically named `#ask-ai`.
12+
13+
## Setting up the Slack app
14+
15+
<Note>
16+
If your Slack Workspace Owner requires admin approval to install apps, ask them to approve the Mintlify Slack app before you add it.
17+
</Note>
18+
19+
1. Navigate to the [Add-ons](https://dashboard.mintlify.com/products/addons) page of your dashboard.
20+
2. Select **Connect** in the Slack Integration card.
21+
3. Follow the Slack prompts to add the app to your workspace.
22+
4. Test that the bot is working and responds when you:
23+
- Send a direct message to the Mintlify app.
24+
- Mention the bot with `@mintlify` in a channel.
25+
- Create an `#ask-ai` channel, add the bot, and ask a question.
File renamed without changes.
File renamed without changes.

api-reference/assistant/search.mdx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
openapi: "POST /search/{domain}"
3+
---

0 commit comments

Comments
 (0)