diff --git a/README.md b/README.md index fd6cdc3..60b5823 100644 --- a/README.md +++ b/README.md @@ -1,62 +1,76 @@ -# đ VSC as MCP - -**đ Supercharge your AI coding assistants with VS Code's powerful language intelligence!** - -A Visual Studio Code extension that exposes an MCP (Model Context Protocol) server, giving AI tools like Claude, Cursor, and others direct access to VS Code's semantic code understanding capabilities - go-to-definition, find references, completions, diagnostics, and so much more! +
+
+
+ Supercharge your AI coding assistants with VS Code's powerful language intelligence! +
+ + + + --- -[](LICENSE) -[](https://github.com/CodingWithCalvin/VSC-MCPServer/actions/workflows/build.yml) - -[](https://marketplace.visualstudio.com/items?itemName=CodingWithCalvin.VSC-MCPServer) -[](https://marketplace.visualstudio.com/items?itemName=CodingWithCalvin.VSC-MCPServer) -[](https://marketplace.visualstudio.com/items?itemName=CodingWithCalvin.VSC-MCPServer) -[](https://marketplace.visualstudio.com/items?itemName=CodingWithCalvin.VSC-MCPServer) - ---- +A Visual Studio Code extension that exposes an MCP (Model Context Protocol) server, giving AI tools like Claude, Cursor, and others direct access to VS Code's semantic code understanding capabilities - go-to-definition, find references, completions, diagnostics, and so much more! -## ⨠Features +## Features -- **đ§ Full Language Intelligence** - Access VS Code's language server features via MCP tools -- **đ Workspace Aware** - Works on individual files or full project contexts -- **đ URI Protocol Handler** - Launch VS Code via `vscode://codingwithcalvin.mcp/...` -- **⥠Auto-start** - MCP server starts automatically when VS Code launches -- **đ Secure by Default** - Binds only to localhost, no external access +- **Full Language Intelligence** - Access VS Code's language server features via MCP tools +- **Workspace Aware** - Works on individual files or full project contexts +- **URI Protocol Handler** - Launch VS Code via `vscode://codingwithcalvin.mcp/...` +- **Auto-start** - MCP server starts automatically when VS Code launches +- **Secure by Default** - Binds only to localhost, no external access ---- - -## đ ī¸ Available Tools +## Available Tools | Tool | Description | |------|-------------| -| đ `vscode_open_folder` | Open a workspace folder | -| đ `vscode_get_open_folders` | Get currently open workspace folder(s) | -| đˇī¸ `vscode_document_symbols` | Get all symbols in a document | -| đ `vscode_workspace_symbols` | Search symbols across the workspace | -| đ¯ `vscode_go_to_definition` | Find symbol definitions | -| đ `vscode_find_references` | Find all references to a symbol | -| đĄ `vscode_hover_info` | Get type info and documentation | -| â ī¸ `vscode_diagnostics` | Get errors and warnings | -| đ `vscode_call_hierarchy` | Get incoming/outgoing calls | -| âī¸ `vscode_completions` | Get code completions at a position | -| đ `vscode_signature_help` | Get function signature help | -| đī¸ `vscode_type_hierarchy` | Get type hierarchy information | -| đ§ `vscode_code_actions` | Get available code actions/quick fixes | -| đ¨ `vscode_format_document` | Format an entire document | -| âī¸ `vscode_format_range` | Format a specific range | -| đĻ `vscode_organize_imports` | Organize imports in a document | -| âī¸ `vscode_rename_symbol` | Rename a symbol across the workspace | -| đ `vscode_workspace_file_search` | Search for files by pattern | -| đ `vscode_workspace_text_search` | Search for text across files | - ---- - -## đĻ Installation - -### From VS Code Marketplace - -[](https://marketplace.visualstudio.com/items?itemName=CodingWithCalvin.VSC-MCPServer) +| `vscode_open_folder` | Open a workspace folder | +| `vscode_get_open_folders` | Get currently open workspace folder(s) | +| `vscode_document_symbols` | Get all symbols in a document | +| `vscode_workspace_symbols` | Search symbols across the workspace | +| `vscode_go_to_definition` | Find symbol definitions | +| `vscode_find_references` | Find all references to a symbol | +| `vscode_hover_info` | Get type info and documentation | +| `vscode_diagnostics` | Get errors and warnings | +| `vscode_call_hierarchy` | Get incoming/outgoing calls | +| `vscode_completions` | Get code completions at a position | +| `vscode_signature_help` | Get function signature help | +| `vscode_type_hierarchy` | Get type hierarchy information | +| `vscode_code_actions` | Get available code actions/quick fixes | +| `vscode_format_document` | Format an entire document | +| `vscode_format_range` | Format a specific range | +| `vscode_organize_imports` | Organize imports in a document | +| `vscode_rename_symbol` | Rename a symbol across the workspace | +| `vscode_workspace_file_search` | Search for files by pattern | +| `vscode_workspace_text_search` | Search for text across files | + +## Installation + +### VS Code Marketplace 1. Open VS Code 2. Go to **Extensions** (Ctrl+Shift+X) @@ -71,9 +85,7 @@ Download the latest `.vsix` from the [Releases](https://github.com/CodingWithCal code --install-extension CodingWithCalvin.VSC-MCPServer.vsix ``` ---- - -## đ¯ Usage +## Usage The MCP server starts automatically when VS Code launches! Just configure your AI tool to connect: @@ -102,71 +114,58 @@ vscode://codingwithcalvin.mcp/start?port=4000 # Start on specific port vscode://codingwithcalvin.mcp/open?folder=/path/to/dir # Open folder and start ``` ---- - -## âī¸ Configuration +## Configuration | Setting | Default | Description | |---------|---------|-------------| -| `codingwithcalvin.mcp.autoStart` | `true` | đ Auto-start server on VS Code launch | -| `codingwithcalvin.mcp.port` | `4000` | đ MCP server port | -| `codingwithcalvin.mcp.bindAddress` | `127.0.0.1` | đ Bind address (localhost only) | +| `codingwithcalvin.mcp.autoStart` | `true` | Auto-start server on VS Code launch | +| `codingwithcalvin.mcp.port` | `4000` | MCP server port | +| `codingwithcalvin.mcp.bindAddress` | `127.0.0.1` | Bind address (localhost only) | ---- - -## đģ Commands +## Commands Access these from the Command Palette (Ctrl+Shift+P): -- **âļī¸ MCP Server: Start** - Start the MCP server -- **âšī¸ MCP Server: Stop** - Stop the MCP server -- **đ MCP Server: Restart** - Restart the MCP server -- **đ MCP Server: Show Available Tools** - View all available MCP tools - ---- - -## đ Security - -- đ **Localhost Only** - Binds only to `127.0.0.1` -- đĄī¸ **DNS Rebinding Protection** - Validates Host header -- â **Same-machine Trusted** - No authentication required for local access +- **MCP Server: Start** - Start the MCP server +- **MCP Server: Stop** - Stop the MCP server +- **MCP Server: Restart** - Restart the MCP server +- **MCP Server: Show Available Tools** - View all available MCP tools ---- +## Security -## đ Requirements +- **Localhost Only** - Binds only to `127.0.0.1` +- **DNS Rebinding Protection** - Validates Host header +- **Same-machine Trusted** - No authentication required for local access -- đģ Visual Studio Code 1.85.0 or later -- đĸ Node.js (bundled with VS Code) +## Requirements ---- +- Visual Studio Code 1.85.0 or later +- Node.js (bundled with VS Code) -## đ¤ Contributing +## Contributing -Contributions are welcome! Whether it's bug reports, feature requests, or pull requests - all feedback helps make this extension better. đĒ +Contributions are welcome! Whether it's bug reports, feature requests, or pull requests - all feedback helps make this extension better. ### Development Setup -1. đ´ Clone the repository -2. đĻ Run `npm install` -3. đ¨ Run `npm run build` -4. âļī¸ Press F5 to launch the Extension Development Host +1. Clone the repository +2. Run `npm install` +3. Run `npm run build` +4. Press F5 to launch the Extension Development Host ---- - -## đ License +## License -This project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details. +This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. --- -## đĨ Contributors +## Contributors -[](https://github.com/CalvinAllen) --- -**â If you find VSC as MCP useful, please consider giving it a star! â** - -*Made with â¤ī¸ for the VS Code community by Coding With Calvin* ++ Made with â¤ī¸ by Coding With Calvin +