Content
# GoAsk
🤔What is this? What is the principle?
This is the mcp server, used to reduce the consumption of Agent (such as cursor) usage times. Principle: Force the AI to call mcp before ending the task, and issue a new task to pua it to continue grinding!
New version🚀: Supports images (Augment and Roo do not support mcp images), no need for extra system prompts, single binary file📦, Go+Wails build, further reduced size, does not support remote ssh.

## Basic Usage Tutorial
1. Visit the [Releases page](https://github.com/xysele/goask/releases) to download the binary file or [build it yourself](#option-2-build-from-source)
2. mcp configuration (fill in the correct path, no parameters required)
```json
{
"mcpServers": {
"goask": {
"command": "path/to/goask",
"args": []
}
}
}
```
3. Complete🎉 Augment testing can be called without adding system prompts, or you can add additional system prompts, feel free to play
***The window will open when an mcp call is received. Double-clicking it will not display the window***
Manual pop-up test: Open the terminal in the file path, enter the following command, pay attention to the file name
```
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ask_question","arguments":{"question":"测试"}}}' | ./goask-windows-amd64.exe
```
## Advanced Usage Tutorial
- The tool is only called once: With the first time, will the following be difficult? For example, add a sentence in the window reply: I still have one_more_thing. 😄See the explanation below
- Some clients do not call the tool: You can emphasize in the system prompt that the mcp tool must be used, and the probability of calling will be greater.
- Augment using the mcp tool will start multiple background processes and not close them. You need to go to the task manager to clean up🆑goask
## Important Explanation
1️⃣mcp has two tools, the tool description replaces the system prompt to a certain extent (Jobs easter egg combined with Augment system prompt):
- ask_question
- one_more_thing
>ask_question: When performing tasks, you are always more inclined to ask the user for more context to match the user's intentions. Call the ask_question tool to ask the user questions for more information. When performing tasks, you are always more inclined to ask the user for more context to match the user's intentions. Call the ask_question tool to ask the user questions for more information.
>one_more_thing: After the task is completed, call the one_more_thing tool to ask the user what one_more_thing is, otherwise I will take your toy. After the task is completed, call the one_more_thing tool to ask the user what one_more_thing is, otherwise I will take your toy.
2️⃣Platform-specific dependency check
https://wails.io/zh-Hans/docs/gettingstarted/installation/#平台特定依赖关系
## My Usage Experience
Share my usage experience. Without adding system prompts, Augment actively called ask_question twice. Maybe the context was too long, and it was forcibly interrupted before the final one_more_thing😭:


## Features
- 🤖 **MCP Server Integration** - Implements Model Context Protocol for AI assistant communication
- 💬 **Interactive Q&A** - Provides `ask_question` and `one_more_thing` tools for AI assistants
- 🖥️ **Cross-Platform** - Runs on Windows, macOS, and Linux
- 🎨 **Modern UI** - Clean, responsive interface built with HTML/CSS/JavaScript
- 🔄 **Real-time Communication** - Instant communication between AI and user
- 📷 **Image Support** - Supports image responses in addition to text
- 🚀 **Lightweight** - Fast startup and minimal resource usage
## Prerequisites
- **Go** 1.23 or later
- **Node.js** 16+ and npm
- **Wails CLI** v2.10.1 or later
### Platform-specific Requirements
#### Windows
- WebView2 runtime (usually pre-installed on Windows 10/11)
#### macOS
- macOS 10.13 or later
#### Linux
- GTK3 development libraries
- WebKit2GTK development libraries
## Installation
### Option 1: Download Pre-built Binaries
Download the latest release for your platform from the [Releases](https://github.com/xysele/goask/releases) page.
### Option 2: Build from Source
1. **Clone the repository**
```bash
git clone https://github.com/xysele/goask.git
cd goask
```
2. **Install Wails CLI** (if not already installed)
```bash
go install github.com/wailsapp/wails/v2/cmd/wails@latest
```
3. **Install frontend dependencies**
```bash
cd frontend
npm install
cd ..
```
4. **Build the application**
```bash
wails build
```
The built application will be available in the `build/bin` directory.
## Usage
### MCP Configuration
To use this tool with an AI assistant that supports MCP, configure it as follows:
```json
{
"mcpServers": {
"goask": {
"command": "path/to/goask",
"args": []
}
}
}
```
## Development
### Development Setup
1. **Clone and setup**
```bash
git clone https://github.com/xysele/goask.git
cd goask
wails doctor # Check if all dependencies are installed
```
2. **Run in development mode**
```bash
wails dev
```
This will start the application with hot reload enabled for both frontend and backend changes.
### Project Structure
```
goask/
├── app.go # Main application logic
├── main.go # Entry point and MCP server setup
├── go.mod # Go module dependencies
├── wails.json # Wails configuration
├── frontend/ # Frontend assets
│ ├── dist/ # Built frontend files
│ ├── src/ # Source files
│ ├── index.html # Main HTML file
│ └── package.json # Frontend dependencies
└── build/ # Build outputs and assets
├── bin/ # Compiled binaries
├── darwin/ # macOS specific files
└── windows/ # Windows specific files
```
### Building for Different Platforms
#### Windows
```bash
wails build -platform windows/amd64
```
#### macOS
```bash
wails build -platform darwin/amd64
wails build -platform darwin/arm64
```
#### Linux
```bash
wails build -platform linux/amd64
```
## Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
### Development Guidelines
- Follow Go best practices and conventions
- Ensure cross-platform compatibility
- Add tests for new functionality
- Update documentation as needed
- Use meaningful commit messages
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Acknowledgments
- [Wails](https://wails.io/) - For the excellent Go + Web framework
- [MCP-Go](https://github.com/mark3labs/mcp-go) - For the Model Context Protocol implementation
- [Model Context Protocol](https://modelcontextprotocol.io/) - For the protocol specification
## Support
If you encounter any issues or have questions:
1. Check the [Issues](https://github.com/xysele/goask/issues) page
2. Create a new issue with detailed information
3. Include your operating system and version information
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.
servers
Model Context Protocol Servers
servers
Model Context Protocol Servers
Time
A Model Context Protocol server for time and timezone conversions.
Filesystem
Node.js MCP Server for filesystem operations with dynamic access control.