diff --git a/clients.mdx b/clients.mdx
index ca6dac2..f842ad8 100644
--- a/clients.mdx
+++ b/clients.mdx
@@ -1,5 +1,5 @@
---
-title: "Clients"
+title: "Example Clients"
description: "A list of applications that support MCP integrations"
---
diff --git a/examples.mdx b/examples.mdx
index ef05e54..000c722 100644
--- a/examples.mdx
+++ b/examples.mdx
@@ -1,5 +1,5 @@
---
-title: Examples
+title: Example Servers
description: 'A list of example servers and implementations'
---
diff --git a/images/quickstart-approve.png b/images/quickstart-approve.png
new file mode 100644
index 0000000..11bfe8d
Binary files /dev/null and b/images/quickstart-approve.png differ
diff --git a/images/quickstart-developer.png b/images/quickstart-developer.png
new file mode 100644
index 0000000..b7c427b
Binary files /dev/null and b/images/quickstart-developer.png differ
diff --git a/images/quickstart-filesystem.png b/images/quickstart-filesystem.png
new file mode 100644
index 0000000..000dbcf
Binary files /dev/null and b/images/quickstart-filesystem.png differ
diff --git a/images/quickstart-hammer.png b/images/quickstart-hammer.png
new file mode 100644
index 0000000..f48d0d3
Binary files /dev/null and b/images/quickstart-hammer.png differ
diff --git a/images/quickstart-menu.png b/images/quickstart-menu.png
new file mode 100644
index 0000000..cd86826
Binary files /dev/null and b/images/quickstart-menu.png differ
diff --git a/images/quickstart-tools.png b/images/quickstart-tools.png
new file mode 100644
index 0000000..d1a8b97
Binary files /dev/null and b/images/quickstart-tools.png differ
diff --git a/introduction.mdx b/introduction.mdx
index 6e3f935..030dc73 100644
--- a/introduction.mdx
+++ b/introduction.mdx
@@ -19,7 +19,7 @@ At its core, MCP follows a client-server architecture where a host application c
```mermaid
flowchart LR
subgraph "Your Computer"
- Host["MCP Host\n(Claude, IDEs, Tools)"]
+ Host["Host with MCP Client\n(Claude, IDEs, Tools)"]
S1["MCP Server A"]
S2["MCP Server B"]
S3["MCP Server C"]
@@ -44,23 +44,42 @@ flowchart LR
Choose the path that best fits your needs:
+#### Quick Starts
- Build and connect to your first MCP server
+ Get started building your own server to use in Claude for Desktop and other clients
+ Get started building your own client that can integrate with all MCP servers
+
+
+ Get started using pre-built servers in Claude for Desktop
+
+
+
+#### Examples
+
+
Check out our gallery of official MCP servers and implementations
@@ -71,13 +90,6 @@ Choose the path that best fits your needs:
## Tutorials
-
- Learn how to build your first MCP client
-
@@ -308,7 +308,7 @@ uv run client.py path/to/build/index.js # node server
```
-If you're continuing the weather tutorial from the quickstart, your command might look something like this: `python client.py .../weather/src/weather/server.py`
+If you're continuing the weather tutorial from the server quickstart, your command might look something like this: `python client.py .../weather/src/weather/server.py`
The client will:
@@ -319,7 +319,7 @@ The client will:
- See tool executions
- Get responses from Claude
-Here's an example of what it should look like if connected to the weather server from the quickstart:
+Here's an example of what it should look like if connected to the weather server from the server quickstart:
diff --git a/quickstart.mdx b/quickstart/server.mdx
similarity index 97%
rename from quickstart.mdx
rename to quickstart/server.mdx
index 03e6013..f783cc7 100644
--- a/quickstart.mdx
+++ b/quickstart/server.mdx
@@ -1,6 +1,6 @@
---
-title: "Quickstart"
-description: "Get started with building your first MCP server and connecting it to a host"
+title: "For Server Developers"
+description: "Get started building your own server to use in Claude for Desktop and other clients."
---
In this tutorial, we'll build a simple MCP weather server and connect it to a host, Claude for Desktop. We'll start with a basic setup, and then progress to more complex use cases.
@@ -19,7 +19,7 @@ We'll build a server that exposes two tools: `get-alerts` and `get-forecast`. Th
-Servers can connect to any client. We've chosen Claude for Desktop here for simplicity, but we also have guides on [building your own client](/tutorials/building-a-client) as well as a [list of other clients here](/clients).
+Servers can connect to any client. We've chosen Claude for Desktop here for simplicity, but we also have guides on [building your own client](/quickstart/client) as well as a [list of other clients here](/clients).
@@ -400,7 +400,7 @@ Let's now test your server from an existing MCP host, Claude for Desktop.
## Testing your server with Claude for Desktop
-Claude for Desktop is not yet available on Linux. Linux users can proceed to the [Building a client](/tutorials/building-a-client) tutorial to build an MCP client that connects to the server we just built.
+Claude for Desktop is not yet available on Linux. Linux users can proceed to the [Building a client](/quickstart/client) tutorial to build an MCP client that connects to the server we just built.
First, make sure you have Claude for Desktop installed. [You can install the latest version
@@ -922,7 +922,7 @@ Let's now test your server from an existing MCP host, Claude for Desktop.
## Testing your server with Claude for Desktop
-Claude for Desktop is not yet available on Linux. Linux users can proceed to the [Building a client](/tutorials/building-a-client) tutorial to build an MCP client that connects to the server we just built.
+Claude for Desktop is not yet available on Linux. Linux users can proceed to the [Building a client](/quickstart/client) tutorial to build an MCP client that connects to the server we just built.
First, make sure you have Claude for Desktop installed. [You can install the latest version
@@ -1054,7 +1054,7 @@ tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
**Server not showing up in Claude**
-1. Check your `desktop_config.json` file syntax
+1. Check your `claude_desktop_config.json` file syntax
2. Make sure the path to your project is absolute and not relative
3. Restart Claude for Desktop completely
@@ -1101,9 +1101,9 @@ For more advanced troubleshooting, check out our guide on [Debugging MCP](/docs/
- Learn how to build your an MCP client that can connect to your server
+ Learn how to build your own MCP client that can connect to your server
Check out our gallery of official MCP servers and implementations
-
+
Learn how to effectively debug MCP servers and integrations
+
+
+
+Don't worry — it will ask you for your permission before executing these actions!
+
+## 1. Download Claude for Desktop
+
+Start by downloading [Claude for Desktop](https://claude.ai/download), choosing either macOS or Windows. (Linux is not yet supported for Claude for Desktop.)
+
+Follow the installation instructions.
+
+If you already have Claude for Desktop, make sure it's on the latest version by clicking on the Claude menu on your computer and selecting "Check for Updates..."
+
+
+ Because servers are locally run, MCP currently only supports desktop hosts. Remote hosts are in active development.
+
+
+## 2. Add the Filesystem MCP Server
+
+To add this filesystem functionality, we will be installing a pre-built [Filesystem MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem) to Claude for Desktop. This is one of dozens of [servers](https://github.com/modelcontextprotocol/servers/tree/main) created by Anthropic and the community.
+
+Get started by opening up the Claude menu on your computer and select "Settings..." Please note that these are not the Claude Account Settings found in the app window itself.
+
+This is what it should look like on a Mac:
+
+
+
+
+Click on "Developer" in the lefthand bar of the Settings pane, and then click on "Edit Config":
+
+
+
+
+This will create a configuration file at:
+- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
+- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
+
+if you don't already have one, and will display the file in your file system.
+
+Open up the configuration file in any text editor. Replace the file contents with this:
+
+
+```json
+{
+ "mcpServers": {
+ "filesystem": {
+ "command": "npx",
+ "args": [
+ "-y",
+ "@modelcontextprotocol/server-filesystem",
+ "/Users/username/Desktop",
+ "/Users/username/Downloads"
+ ]
+ }
+ }
+}
+```
+
+
+```json
+{
+ "mcpServers": {
+ "filesystem": {
+ "command": "npx",
+ "args": [
+ "-y",
+ "@modelcontextprotocol/server-filesystem",
+ "C:\\Users\\username\\Desktop",
+ "C:\\Users\\username\\Downloads"
+ ]
+ }
+ }
+}
+```
+
+
+
+Make sure to replace `username` with your computer's username. The paths should point to valid directories that you want Claude to be able to access and modify. It's set up to work for Desktop and Downloads, but you can add more paths as well.
+
+You will also need [Node.js](https://nodejs.org) on your computer for this to run properly. To verify you have Node installed, open the command line on your computer.
+- On macOS, open the Terminal from your Applications folder
+- On Windows, press Windows + R, type "cmd", and press Enter
+
+Once in the command line, verify you have Node installed by entering in the following command:
+```bash
+node --version
+```
+If you get an error saying "command not found" or "node is not recognized", download Node from [nodejs.org](https://nodejs.org/).
+
+
+**How does the configuration file work?**
+
+This configuration file tells Claude for Dekstop which MCP servers to start up every time you start the application. In this case, we have added one server called "filesystem" that will use the Node `npx` command to install and run `@modelcontextprotocol/server-filesystem`. This server, described [here](https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem), will let you access your file system in Claude for Desktop.
+
+
+## 3. Restart Claude
+
+After updating your configuration file, you need to restart Claude for Desktop.
+
+Upon restarting, you should see a hammer
icon in the bottom right corner of the input box:
+
+
+
+
+
+After clicking on the hammer icon, you should see the tools that come with the Filesystem MCP Server:
+
+
+
+
+
+If your server isn't being picked up by Claude for Desktop, proceed to the [Troubleshooting](#troubleshooting) section for debugging tips.
+
+## 4. Try it out!
+
+You can now talk to Claude and ask it about your filesystem. It should know when to call the relevant tools.
+
+Things you might try asking Claude:
+- Can you write a poem and save it to my desktop?
+- What are some work-related files in my downloads folder?
+- Can you take all the images on my desktop and move them to a new folder called "Images"?
+
+As needed, Claude will call the relevant tools and seek your approval before taking an action:
+
+
+
+
+## Troubleshooting
+
+
+
+ 1. Restart Claude for Desktop completely
+ 2. Check your `claude_desktop_config.json` file syntax
+ 3. Make sure the file paths included in `claude_desktop_config.json` are valid and that they are absolute and not relative
+ 4. Look at [logs](#getting-logs-from-claude-for-desktop) to see why the server is not connecting
+ 5. In your command line, try manually running the server (replacing `username` as you did in `claude_desktop_config.json`) to see if you get any errors:
+
+
+```bash
+npx -y @modelcontextprotocol/server-filesystem /Users/username/Desktop /Users/username/Downloads`
+```
+
+
+```bash
+npx -y @modelcontextprotocol/server-filesystem C:\Users\username\Desktop C:\Users\username\Downloads
+```
+
+
+
+
+ Claude.app logging related to MCP is written to log files in:
+ - macOS: `~/Library/Logs/Claude`
+ - Windows: `%APPDATA%\Claude\logs`
+
+ - `mcp.log` will contain general logging about MCP connections and connection failures.
+ - Files named `mcp-server-SERVERNAME.log` will contain error (stderr) logging from the named server.
+
+ You can run the following command to list recent logs and follow along with any new ones (on Windows, it will only show recent logs):
+
+
+```bash
+# Check Claude's logs for errors
+tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
+```
+
+
+```bash
+type "%APPDATA%\Claude\logs\mcp*.log"
+```
+
+
+
+
+ If Claude attempts to use the tools but they fail:
+
+ 1. Check Claude's logs for errors
+ 2. Verify your server builds and runs without errors
+ 3. Try restarting Claude for Desktop
+
+
+ Please refer to our [debugging guide](/docs/tools/debugging) for better debugging tools and more detailed guidance.
+
+
+
+## Next steps
+
+
+ Check out our gallery of official MCP servers and implementations
+
+
+ Now build your own custom server to use in Claude for Desktop and other clients
+
+
\ No newline at end of file