diff --git a/.cursor/mcp.json b/.cursor/mcp.json new file mode 100644 index 0000000..fc309ec --- /dev/null +++ b/.cursor/mcp.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://raw.githubusercontent.com/modelcontextprotocol/modelcontextprotocol/refs/heads/main/schema/2025-03-26/schema.json", + + "mcpServers": { + "rush-mcp-server": { + "command": "node", + "args": [ + "./common/scripts/install-run.js", + "@rushstack/mcp-server@0.2.1", + "mcp-server", + "." + ] + } + } +} diff --git a/common/autoinstallers/rush-mcp/package.json b/common/autoinstallers/rush-mcp/package.json new file mode 100644 index 0000000..00470bf --- /dev/null +++ b/common/autoinstallers/rush-mcp/package.json @@ -0,0 +1,8 @@ +{ + "name": "rush-mcp", + "version": "1.0.0", + "private": true, + "dependencies": { + "rush-mcp-example-plugin": "file:../../../../rushstack/build-tests/rush-mcp-example-plugin/" + } +} diff --git a/common/config/rush-mcp/rush-mcp-example-plugin.json b/common/config/rush-mcp/rush-mcp-example-plugin.json new file mode 100644 index 0000000..8d794e8 --- /dev/null +++ b/common/config/rush-mcp/rush-mcp-example-plugin.json @@ -0,0 +1,61 @@ +/** + * Example config file for the "rush-mcp-example-plugin" demo plugin. + * + * This config file is located at: /common/config/rush-mcp/plugin-configs/rush-mcp-example-plugin.json + */ +{ + "$schema": "rush-mcp-example-plugin.schema.json", + + "capitalsByState": { + "alabama": "montgomery", + "alaska": "juneau", + "arizona": "phoenix", + "arkansas": "little rock", + "california": "sacramento", + "colorado": "denver", + "connecticut": "hartford", + "delaware": "dover", + "florida": "tallahassee", + "georgia": "atlanta", + "hawaii": "honolulu", + "idaho": "boise", + "illinois": "springfield", + "indiana": "indianapolis", + "iowa": "des moines", + "kansas": "topeka", + "kentucky": "frankfort", + "louisiana": "baton rouge", + "maine": "augusta", + "maryland": "annapolis", + "massachusetts": "boston", + "michigan": "lansing", + "minnesota": "saint paul", + "mississippi": "jackson", + "missouri": "jefferson city", + "montana": "helena", + "nebraska": "lincoln", + "nevada": "carson city", + "new hampshire": "concord", + "new jersey": "trenton", + "new mexico": "santa fe", + "new york": "albany", + "north carolina": "raleigh", + "north dakota": "bismarck", + "ohio": "columbus", + "oklahoma": "oklahoma city", + "oregon": "salem", + "pennsylvania": "harrisburg", + "rhode island": "providence", + "south carolina": "columbia", + "south dakota": "pierre", + "tennessee": "nashville", + "texas": "austin", + "utah": "salt lake city", + "vermont": "montpelier", + "virginia": "richmond", + "washington": "olympia", + "west virginia": "charleston", + "wisconsin": "madison", + "wyoming": "cheyenne" + } +} diff --git a/common/config/rush-mcp/rush-mcp.json b/common/config/rush-mcp/rush-mcp.json new file mode 100644 index 0000000..8d532b6 --- /dev/null +++ b/common/config/rush-mcp/rush-mcp.json @@ -0,0 +1,24 @@ +/** + * This file configures the behavior of `@rushstack/mcp-server` for a given monorepo. + * Its file path: /common/config/rush-mcp/rush-mcp.json + */ +{ + /** + * The list of plugins that `@rushstack/mcp-server` should load when processing this monorepo. + */ + "mcpPlugins": [ + { + /** + * The name of an NPM package that appears in the package.json "dependencies" for the autoinstaller. + */ + "packageName": "rush-mcp-example-plugin", + + /** + * The name of a Rush autoinstaller with this package as its dependency. + * The `@rushstack/mcp-server` will automatically ensure this folder is installed + * before attempting to load the plugin. + */ + "autoinstaller": "rush-mcp" + } + ] +}