Content
# Tool List
A VSCode plugin that supports AI conversation and MCP (Model Context Protocol) access.
## Features
- ✅ Support for multiple AI model configurations (OpenAI API format)
- ✅ Configurable API address, key, model name, and other parameters
- ✅ **🔧 Advanced configuration support**: Customizable HTTP request headers and request bodies
- ✅ **🌐 Wide compatibility**: Support for Claude, domestic API, and other services
- ✅ **🚀 Streaming response**: Real-time viewing of AI response process, similar to ChatGPT experience
- ✅ Beautiful conversation interface with history support
- ✅ MCP server connection support
- ✅ Real-time viewing of MCP server status and tool list
- ✅ Shortcut key support (Ctrl+Alt+A)
## Installation
1. Clone this repository locally
2. Open the project in VSCode
3. Run `npm install` to install dependencies
4. Run `npm run build` to compile TypeScript code and vscode page code
5. Press F5 to start debugging mode
## Configuration
Search for "AI Chat" in VSCode settings to configure:
### Basic Configuration
- `aiChat.apiBaseUrl`: AI model API base address (default: `https://api.openai.com/v1`)
- `aiChat.apiKey`: API key (needs manual configuration)
- `aiChat.modelName`: Model name (default: `gpt-3.5-turbo`)
- `aiChat.systemRole`: **AI assistant role setting** (optional), will be added as a system message at the beginning of the conversation, e.g.: You are now a development expert
### 🔧 Advanced Configuration
- `aiChat.customHeaders`: **Custom HTTP request headers** (JSON format), support different authentication methods
- `aiChat.customBodyFields`: **Custom request body fields** (JSON format), can add model-specific parameters
- `aiChat.overrideDefaultBody`: **Override default request body**, for services with completely different API formats
> 💡 **Detailed configuration guide**:
> - Check [CONFIG_GUIDE.md](./CONFIG_GUIDE.md) to learn how to configure various AI services
> - Check [STREAM_GUIDE.md](./STREAM_GUIDE.md) to learn about streaming response usage
### MCP Configuration
`aiChat.mcpServers`: MCP server configuration list (JSON array format), now using multi-line text box input.
Example configuration (input directly in the settings interface):
```json
[
{
"name": "memory",
"type": "stdio",
"stdio": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
],
"env": {
"MEMORY_FILE_PATH": "${workspaceFolder}/memory.jsonl"
}
}
}
]
```
**Note**:
- Now using multi-line text box input, no need for outer quotes
- Each server needs to specify `type` (stdio, sse, or websocket)
- For stdio-type servers, use `stdio` object to contain command and parameters
## Usage
### Open AI Conversation
- Find the **AI conversation assistant** icon 💬 in the left activity bar and click
- Use shortcut key `Ctrl+Alt+A` (Mac: `Cmd+Alt+A`)
- Or search for "Open AI conversation" in the command panel
### Sidebar Features
- **Conversation area**: Display complete conversation history with AI assistant
- **Input box**: Enter message at the bottom, press Enter to send
- **Toolbar buttons**:
- Configuration: Open settings page to configure API parameters
- Clear: Clear all conversation history records
### Agent Mode and MCP Management
**Agent mode**:
- Find the "Agent mode" switch at the top of the conversation interface
- After enabling, AI can use file operation tools to read and modify code
- After enabling Agent mode, the list of available MCP servers will be displayed
**MCP server management**:
- **Manual connection mode**: MCP server will not connect automatically, avoid startup delay
- **On-demand connection**: Click "Connect all" button to connect all servers, or click each server's "Connect" button separately
- **Real-time status**: Display server connection status (connected/disconnected)
- **Flexible selection**: Only connected servers can be selected and used
- **Dynamic tool integration**: AI will automatically discover all tools of connected MCP servers
- **Intelligent tool naming**: MCP tools will be provided to AI in the format of `server_name_tool_name`
- **Status feedback**: Connection operations will have real-time status prompts
**Other MCP commands**:
- List MCP servers: Search for "List MCP servers" in the command panel
- Reconnect MCP servers: Search for "Reconnect MCP servers" in the command panel
- View MCP output: Search for "Show MCP output" in the command panel
### Other Features
- Configuration settings: Search for "Configure AI settings" in the command panel
- Clear history: Search for "Clear conversation history" in the command panel
### Role Configuration
Configure `aiChat.systemRole` in VSCode settings to set AI assistant role:
- **Development expert**: Provide professional programming suggestions and code analysis
- **Product manager**: Provide demand analysis suggestions from a product perspective
- **Data analyst**: Perform data interpretation and insight analysis
- **Teacher**: Explain concepts in a simple and easy-to-understand way
- **Creative writing assistant**: Provide creative and writing suggestions
After setting, AI assistant will respond to all conversations with the specified role.
## Development
### Project Structure
```
src/
├── extension.ts # Plugin entry
├── aiService.ts # AI service class
├── aiChatProvider.ts # Chat interface provider
└── mcpManager.ts # MCP manager
```
### Compilation and Debugging
- `npm run compile`: Compile TypeScript
- `npm run watch`: Monitor file changes and automatically compile
- Press F5 to start VSCode debugging instance
## Precautions
1. Ensure API key is correctly configured
2. MCP server needs to be implemented according to specifications, otherwise connection may fail
3. When using MCP function for the first time, it is recommended to view the output panel to understand connection status
4. Conversation history will be saved in VSCode's global state
## Dependencies
- `@modelcontextprotocol/sdk`: MCP SDK
- `vscode`: VSCode extension API
## License
MIT License
MCP Config
Below is the configuration for this MCP Server. You can copy it directly to Cursor or other MCP clients.
mcp.json
Connection Info
You Might Also Like
everything-claude-code
Complete Claude Code configuration collection - agents, skills, hooks,...
markitdown
MarkItDown-MCP is a lightweight server for converting URIs to Markdown.
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.
servers
Model Context Protocol Servers
servers
Model Context Protocol Servers
Time
A Model Context Protocol server for time and timezone conversions.