From 86fe33d4197a802231948678c8f4fb3039551d10 Mon Sep 17 00:00:00 2001 From: Continue Agent Date: Mon, 29 Sep 2025 18:48:20 +0000 Subject: [PATCH 1/7] docs: add MCP JSON server configuration support - Added comprehensive documentation for MCP JSON configuration files - Support for single server and Claude-style multi-server JSON formats - Updated Quick Start section with YAML/JSON tabs - Added environment variable templating documentation - References PR #7956 which added JSON MCP support Generated with [Continue](https://continue.dev) Co-Authored-By: Continue --- docs/customize/deep-dives/mcp.mdx | 69 +++++++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 3 deletions(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 074448104d1..ffca8b5c1e1 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -27,12 +27,14 @@ explore available MCP server blocks ## Quick Start: How to Set Up Your First MCP Server -Below is a quick example of setting up a new MCP server for use in your agent: +Below is a quick example of setting up a new MCP server for use in your agent. You can use either YAML or JSON configuration files: 1. Create a folder called `.continue/mcpServers` at the top level of your workspace -2. Add a file called `playwright-mcp.yaml` to this folder. -3. Write the following contents to `playwright-mcp.yaml` and save. +2. Add a file called `playwright-mcp.yaml` (or `playwright-mcp.json`) to this folder. +3. Write the following contents to your configuration file and save. + + ```yaml title=".continue/mcpServers/playwright-mcp.yaml" name: Playwright mcpServer version: 0.0.1 @@ -43,6 +45,16 @@ mcpServers: args: - "@playwright/mcp@latest" ``` + + +```json title=".continue/mcpServers/playwright-mcp.json" +{ + "command": "npx", + "args": ["@playwright/mcp@latest"] +} +``` + + Now test your MCP server by prompting the following command: @@ -60,6 +72,57 @@ You can set up an MCP server to search the Continue documentation directly from For complete setup instructions, troubleshooting, and usage examples, see the [Continue MCP Reference](/reference/continue-mcp). +## How to Configure MCP Servers with JSON Files + +In addition to YAML configuration, you can now configure MCP servers using JSON files. This feature allows you to use Claude-style MCP configurations and provides lower friction when migrating from other tools. + +### JSON Configuration Options + +You can create JSON configuration files in the `.continue/mcpServers` folder in two formats: + +#### Single MCP Server Configuration + +Create a JSON file where the filename becomes the server name: + +```json title=".continue/mcpServers/my-server.json" +{ + "command": "npx", + "args": ["-y", "@modelcontextprotocol/server-sqlite"], + "env": { + "DATABASE_PATH": "${DATABASE_PATH}" + } +} +``` + +#### Claude-style MCP Server Configuration + +Create a JSON file with multiple servers using the `mcpServers` format: + +```json title=".continue/mcpServers/claude-style.json" +{ + "mcpServers": { + "sqlite": { + "command": "npx", + "args": ["-y", "@modelcontextprotocol/server-sqlite"], + "env": { + "DATABASE_PATH": "${DATABASE_PATH}" + } + }, + "github": { + "command": "npx", + "args": ["-y", "@modelcontextprotocol/server-github"], + "env": { + "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" + } + } + } +} +``` + +### Environment Variable Templating + +JSON configurations support environment variable templating using the `${VAR_NAME}` syntax, which is automatically converted to Continue's `${{ secrets.VAR_NAME }}` format internally. + ## How to Configure MCP Servers To set up your own MCP server, read the [MCP From 7aa81e1aa865697b561142aa6370cf6de3fa439a Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Tue, 30 Sep 2025 06:45:32 -0700 Subject: [PATCH 2/7] fix: simplify the blurb --- docs/customize/deep-dives/mcp.mdx | 51 ++----------------------------- 1 file changed, 2 insertions(+), 49 deletions(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index ffca8b5c1e1..c576fe87863 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -72,56 +72,9 @@ You can set up an MCP server to search the Continue documentation directly from For complete setup instructions, troubleshooting, and usage examples, see the [Continue MCP Reference](/reference/continue-mcp). -## How to Configure MCP Servers with JSON Files +## Using `.mcp.json` from Claude, Cursor, Cline, etc -In addition to YAML configuration, you can now configure MCP servers using JSON files. This feature allows you to use Claude-style MCP configurations and provides lower friction when migrating from other tools. - -### JSON Configuration Options - -You can create JSON configuration files in the `.continue/mcpServers` folder in two formats: - -#### Single MCP Server Configuration - -Create a JSON file where the filename becomes the server name: - -```json title=".continue/mcpServers/my-server.json" -{ - "command": "npx", - "args": ["-y", "@modelcontextprotocol/server-sqlite"], - "env": { - "DATABASE_PATH": "${DATABASE_PATH}" - } -} -``` - -#### Claude-style MCP Server Configuration - -Create a JSON file with multiple servers using the `mcpServers` format: - -```json title=".continue/mcpServers/claude-style.json" -{ - "mcpServers": { - "sqlite": { - "command": "npx", - "args": ["-y", "@modelcontextprotocol/server-sqlite"], - "env": { - "DATABASE_PATH": "${DATABASE_PATH}" - } - }, - "github": { - "command": "npx", - "args": ["-y", "@modelcontextprotocol/server-github"], - "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" - } - } - } -} -``` - -### Environment Variable Templating - -JSON configurations support environment variable templating using the `${VAR_NAME}` syntax, which is automatically converted to Continue's `${{ secrets.VAR_NAME }}` format internally. +If you have an existing `.mcp.json` file from Claude, Cursor, Cline, or any other agent that supports the spec, copy it into your `.continue/mcpServers` directory and Continue will automatically pick it up. ## How to Configure MCP Servers From 784ec4e8fcba54dba90d119df4aaec31d8f44deb Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Tue, 30 Sep 2025 07:30:30 -0700 Subject: [PATCH 3/7] fix: json mcpServers --- docs/customize/deep-dives/mcp.mdx | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index c576fe87863..6740ceb631b 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -100,17 +100,17 @@ server block to your [config file](./configuration.md): ```json title="config.json" { - "experimental": { - "modelContextProtocolServers": [ - { - "transport": { - "type": "stdio", - "command": "uvx", - "args": ["mcp-server-sqlite", "--db-path", "/path/to/your/database.db"] - } - } - ] - } + "mcpServers": [ + { + "name": "SQLite MCP", + "command": "npx", + "args": [ + "-y", + "mcp-sqlite", + "/path/to/your/database.db" + ] + } + ] } ```` From 4b423985a84cbcea383e78230b312b28da9083ef Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Tue, 30 Sep 2025 13:59:05 -0700 Subject: [PATCH 4/7] Update mcp.mdx Generated with [Continue](https://continue.dev) Co-Authored-By: Continue --- docs/customize/deep-dives/mcp.mdx | 63 ++++++++----------------------- 1 file changed, 15 insertions(+), 48 deletions(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 6740ceb631b..9524355942f 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -27,14 +27,12 @@ explore available MCP server blocks ## Quick Start: How to Set Up Your First MCP Server -Below is a quick example of setting up a new MCP server for use in your agent. You can use either YAML or JSON configuration files: +Below is a quick example of setting up a new MCP server for use in your agent: 1. Create a folder called `.continue/mcpServers` at the top level of your workspace -2. Add a file called `playwright-mcp.yaml` (or `playwright-mcp.json`) to this folder. -3. Write the following contents to your configuration file and save. +2. Add a file called `playwright-mcp.yaml` to this folder +3. Write the following contents and save - - ```yaml title=".continue/mcpServers/playwright-mcp.yaml" name: Playwright mcpServer version: 0.0.1 @@ -45,16 +43,6 @@ mcpServers: args: - "@playwright/mcp@latest" ``` - - -```json title=".continue/mcpServers/playwright-mcp.json" -{ - "command": "npx", - "args": ["@playwright/mcp@latest"] -} -``` - - Now test your MCP server by prompting the following command: @@ -74,7 +62,9 @@ For complete setup instructions, troubleshooting, and usage examples, see the [C ## Using `.mcp.json` from Claude, Cursor, Cline, etc -If you have an existing `.mcp.json` file from Claude, Cursor, Cline, or any other agent that supports the spec, copy it into your `.continue/mcpServers` directory and Continue will automatically pick it up. + +If you're coming from another tool that uses `.mcp.json` configuration files (like Claude Desktop, Cursor, or Cline), you can copy those JSON config files directly into your `.continue/mcpServers` directory and Continue will automatically pick them up. + ## How to Configure MCP Servers @@ -84,38 +74,15 @@ quickstart](https://modelcontextprotocol.io/quickstart) and then [create an block](https://hub.continue.dev/new?type=block&blockType=mcpServers) or add a local MCP server block to your [config file](./configuration.md): - - - ```yaml title="config.yaml" - mcpServers: - - name: SQLite MCP - command: npx - args: - - "-y" - - "mcp-sqlite" - - "/path/to/your/database.db" - -```` - - -```json title="config.json" -{ - "mcpServers": [ - { - "name": "SQLite MCP", - "command": "npx", - "args": [ - "-y", - "mcp-sqlite", - "/path/to/your/database.db" - ] - } - ] -} -```` - - - +```yaml title="config.yaml" +mcpServers: + - name: SQLite MCP + command: npx + args: + - "-y" + - "mcp-sqlite" + - "/path/to/your/database.db" +``` ### How to Configure MCP Server Properties From 94561f8caf0e1234c8273dab54c1f780d9489c6b Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Wed, 1 Oct 2025 10:35:28 -0700 Subject: [PATCH 5/7] docs: clarify mcpServers directory name and add example path - Emphasize that the directory name is plural (mcpServers not mcpServer) - Add explicit example showing the correct path structure - This should help users avoid confusion when placing JSON config files Generated with [Continue](https://continue.dev) Co-Authored-By: Continue --- docs/customize/deep-dives/mcp.mdx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 9524355942f..272a5f125e7 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -63,7 +63,9 @@ For complete setup instructions, troubleshooting, and usage examples, see the [C ## Using `.mcp.json` from Claude, Cursor, Cline, etc -If you're coming from another tool that uses `.mcp.json` configuration files (like Claude Desktop, Cursor, or Cline), you can copy those JSON config files directly into your `.continue/mcpServers` directory and Continue will automatically pick them up. +If you're coming from another tool that uses `.mcp.json` configuration files (like Claude Desktop, Cursor, or Cline), you can copy those JSON config files directly into your `.continue/mcpServers/` directory (note the plural "Servers") and Continue will automatically pick them up. + +For example, place your `mcp.json` file at `.continue/mcpServers/mcp.json` in your workspace. ## How to Configure MCP Servers From ab0cb848c6e144f1421b0d3802b36d9fc941b5c2 Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Wed, 1 Oct 2025 10:51:02 -0700 Subject: [PATCH 6/7] docs: clarify MCP YAML examples need context or block metadata - Add ellipsis (...) to YAML examples to indicate they're part of a larger config file - Add explicit note about required metadata fields when creating standalone block files - This prevents confusion when users try to copy snippets directly into .continue/mcpServers/ Generated with [Continue](https://continue.dev) Co-Authored-By: Continue --- docs/customize/deep-dives/mcp.mdx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 272a5f125e7..40cfb045a23 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -77,6 +77,7 @@ block](https://hub.continue.dev/new?type=block&blockType=mcpServers) or add a lo server block to your [config file](./configuration.md): ```yaml title="config.yaml" +# ... mcpServers: - name: SQLite MCP command: npx @@ -84,8 +85,13 @@ mcpServers: - "-y" - "mcp-sqlite" - "/path/to/your/database.db" +# ... ``` + +When creating a standalone block file in `.continue/mcpServers/`, remember to include the required metadata fields (`name`, `version`, `schema`) as shown in the Quick Start example above. + + ### How to Configure MCP Server Properties MCP blocks follow the established syntax for blocks, with a few additional properties specific to MCP servers. @@ -105,10 +111,12 @@ MCP now supports remote server connections through HTTP-based transports, expand For real-time streaming communication, use the SSE transport: ```yaml +# ... mcpServers: - name: Name type: sse url: https://.... +# ... ``` #### How to Use Standard Input/Output (`stdio`) @@ -116,6 +124,7 @@ mcpServers: For local MCP servers that communicate via standard input and output: ```yaml +# ... mcpServers: - name: Name type: stdio @@ -123,6 +132,7 @@ mcpServers: args: - "@modelcontextprotocol/server-sqlite" - "/path/to/your/database.db" +# ... ``` #### How to Use Streamable HTTP Transport @@ -130,10 +140,12 @@ mcpServers: For standard HTTP-based communication with streaming capabilities: ```yaml +# ... mcpServers: - name: Name type: streamable-http url: https://.... +# ... ``` These remote transport options allow you to connect to MCP servers hosted on remote infrastructure, enabling more flexible deployment architectures and shared server resources across multiple clients. @@ -146,6 +158,7 @@ With some MCP servers you will need to use API keys or other secrets. You can le as well as access hosted secrets in the Continue Hub. To leverage Hub secrets, you can use the `inputs` property in your MCP env block instead of `secrets`. ```yaml +# ... mcpServers: - name: Supabase MCP command: npx @@ -163,4 +176,5 @@ mcpServers: - "@modelcontextprotocol/server-github" env: GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.GITHUB_PERSONAL_ACCESS_TOKEN }} +# ... ``` From 9f87311b59e66bf4d3d60ff93a00c76494e2f479 Mon Sep 17 00:00:00 2001 From: Brian 'bdougie' Douglas Date: Mon, 6 Oct 2025 15:50:53 -0700 Subject: [PATCH 7/7] Update language around mcp.json to use 'JSON MCP format' - Change heading from 'Using .mcp.json' to 'Using JSON MCP Format' - Replace references to '.mcp.json configuration files' with 'JSON MCP format configuration files' - Update example text to use 'JSON MCP config file' instead of 'mcp.json file' This makes the language more descriptive and focuses on the format rather than just the filename. Generated with [Continue](https://continue.dev) Co-Authored-By: Continue --- docs/customize/deep-dives/mcp.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 40cfb045a23..6ad5414bc30 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -60,12 +60,12 @@ You can set up an MCP server to search the Continue documentation directly from For complete setup instructions, troubleshooting, and usage examples, see the [Continue MCP Reference](/reference/continue-mcp). -## Using `.mcp.json` from Claude, Cursor, Cline, etc +## Using JSON MCP Format from Claude, Cursor, Cline, etc -If you're coming from another tool that uses `.mcp.json` configuration files (like Claude Desktop, Cursor, or Cline), you can copy those JSON config files directly into your `.continue/mcpServers/` directory (note the plural "Servers") and Continue will automatically pick them up. +If you're coming from another tool that uses JSON MCP format configuration files (like Claude Desktop, Cursor, or Cline), you can copy those JSON config files directly into your `.continue/mcpServers/` directory (note the plural "Servers") and Continue will automatically pick them up. -For example, place your `mcp.json` file at `.continue/mcpServers/mcp.json` in your workspace. +For example, place your JSON MCP config file at `.continue/mcpServers/mcp.json` in your workspace. ## How to Configure MCP Servers