Skip to content

Commit aea6fb4

Browse files
committed
Merge branch 'main' into x-mint
2 parents b56e3f2 + 26d75e9 commit aea6fb4

26 files changed

+634
-384
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

ai/contextual-menu.mdx

Lines changed: 67 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,18 @@ The contextual menu provides quick access to AI-optimized content and direct int
1010

1111
## Menu options
1212

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

2026
<Frame>
2127
<img
@@ -36,7 +42,10 @@ Add the `contextual` field to your `docs.json` file and specify which options yo
3642
"view",
3743
"chatgpt",
3844
"claude",
39-
"perplexity"
45+
"perplexity",
46+
"mcp",
47+
"cursor",
48+
"vscode"
4049
]
4150
}
4251
}
@@ -75,7 +84,10 @@ Create custom options in the contextual menu by adding an object to the `options
7584
</ResponseField>
7685

7786
<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.
87+
The query parameter value. We will replace the following placeholders with the corresponding values:
88+
- Use `$page` to insert the current page content in Markdown.
89+
- Use `$path` to insert the current page path.
90+
- Use `$mcp` to insert the hosted MCP server URL.
7991
</ResponseField>
8092
</Expandable>
8193
</ResponseField>
@@ -84,28 +96,54 @@ Create custom options in the contextual menu by adding an object to the `options
8496

8597
Example custom option:
8698

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-
}
99+
```json {9-14} wrap
100+
{
101+
"contextual": {
102+
"options": [
103+
"copy",
104+
"view",
105+
"chatgpt",
106+
"claude",
107+
"perplexity",
108+
{
109+
"title": "Request a feature",
110+
"description": "Join the discussion on GitHub to request a new feature",
111+
"icon": "plus",
112+
"href": "https://github.com/orgs/mintlify/discussions/categories/feature-requests"
113+
}
106114
]
107-
}
108115
}
109-
]
110116
}
111117
```
118+
119+
### Custom option examples
120+
121+
<AccordionGroup>
122+
<Accordion title="Simple link">
123+
```json
124+
{
125+
"title": "Request a feature",
126+
"description": "Join the discussion on GitHub",
127+
"icon": "plus",
128+
"href": "https://github.com/orgs/mintlify/discussions/categories/feature-requests"
129+
}
130+
```
131+
</Accordion>
132+
133+
<Accordion title="Dynamic link with page content">
134+
```json
135+
{
136+
"title": "Share on X",
137+
"description": "Share this page on X",
138+
"icon": "x",
139+
"href": {
140+
"base": "https://x.com/intent/tweet",
141+
"query": {
142+
"key": "text",
143+
"value": "Check out this documentation: $page"
144+
}
145+
}
146+
}
147+
```
148+
</Accordion>
149+
</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.

assistant-context.mdx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
title: "Assistant context"
3+
description: "This page contains context to help the assistant respond to queries"
4+
---
5+
6+
For the assistant, please refer to this information when you're responding to queries.
7+
8+
- If someone asks about the changelog, recent updates, or what's new, please link them to the Mintlify changelog at https://mintlify.com/docs/changelog

authentication-personalization/overview.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,17 +101,17 @@ This feature is more powerful when you pair it with custom data about your users
101101
user.org === undefined
102102
? <>To access this feature, first create an account at the <a href="https://dashboard.mintlify.com/login">Mintlify dashboard</a>.</>
103103
: user.org.plan !== 'enterprise'
104-
? <>You are currently on the ${user.org.plan ?? 'free'} plan. To speak to our team about upgrading, <a href="mailto:sales@mintlify.com">contact our sales team</a>.</>
105-
: <>To request this feature for your enterprise org, <a href="mailto:[email protected]">contact our team</a>.</>
104+
? <>You are currently on the ${user.org.plan ?? 'free'} plan. See <a href="https://mintlify.com/pricing">our pricing page</a> for information about upgrading.</>
105+
: <>To request this feature for your enterprise org, contact your admin.</>
106106
}
107107
108108
```jsx
109109
Authentication is an enterprise feature. {
110110
user.org === undefined
111111
? <>To access this feature, first create an account at the <a href="https://dashboard.mintlify.com/login">Mintlify dashboard</a>.</>
112112
: user.org.plan !== 'enterprise'
113-
? <>You are currently on the ${user.org.plan ?? 'free'} plan. To speak to our team about upgrading, <a href="mailto:sales@mintlify.com">contact our sales team</a>.</>
114-
: <>To request this feature for your enterprise org, <a href="mailto:[email protected]">contact our team</a>.</>
113+
? <>You are currently on the ${user.org.plan ?? 'free'} plan. See <a href="https://mintlify.com/pricing">our pricing page</a> for information about upgrading.</>
114+
: <>To request this feature for your enterprise org, contact your admin.</>
115115
}
116116
```
117117

0 commit comments

Comments
 (0)