tuui
AI-QL · AI-QL/tuui
Máy khách MCP desktop này cho phép các AI agent điều phối và tích hợp nhiều API LLM từ các nhà cung cấp khác nhau.
A desktop MCP client designed as a tool unitary utility integration, accelerating AI adoption through the Model Context Protocol (MCP) and enabling cross-vendor LLM API orchestration.
Xem trước
Bạn có thể làm gì với nó
- Thiết lập một môi trường AI playground cục bộ để thử nghiệm với các API LLM khác nhau.
- Điều phối các quy trình làm việc AI phức tạp bằng cách sử dụng nhiều LLM.
- Phát triển các ứng dụng AI tùy chỉnh tích hợp nhiều nhà cung cấp mô hình.
Kiểm tra an toàn
Không thấy dấu hiệu rủi ro trong các file đã quét.
Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.
Trích từ README
TUUI - Local AI Playground with MCP
TUUI is a desktop MCP client designed as a tool unitary utility integration, accelerating AI adoption through the Model Context Protocol (MCP) and enabling cross-vendor LLM API orchestration.
Zero accounts Full control Open source Download and Run
📜 Introduction
This repository is essentially an LLM chat desktop application based on MCP. It also represents a bold experiment in creating a complete project using AI. Many components within the project have been directly converted or generated from the prototype project through AI.
Given the considerations regarding the quality and safety of AI-generated content, this project employs strict syntax checks and naming conventions. Therefore, for any further development, please ensure that you use the linting tools I've set up to check and automatically fix syntax issues.
✨ Highlights
- ✨ Accelerate AI tool integration via MCP
- ✨ Orchestrate cross-vendor LLM APIs through dynamic configuring
- ✨ Automated application testing Support
- ✨ TypeScript support
- ✨ Multilingual support
- ✨ Basic layout manager
- ✨ Global state management through the Pinia store
- ✨ Quick support through the GitHub community and official documentation
🔥 MCP features
| Status | Feature | Category | Note |
|---|---|---|---|
| ✅ | Tools | Server | |
| ✅ | Prompts | Server | |
| ✅ | Resources | Server | |
| 🔲 | Roots | Client | This is generally only used for the Vibe Coding IDE and can typically be configured through server environment variables. |
| ✅ | Sampling | Client | |
| ✅ | Elicitation | Client | |
| ✅ | Discovery | Registry | Provides real-time MCP server discovery on the MCP registry |
| ✅ | MCPB | Extension | MCP Bundles (.mcpb) is the new name for what was previously known as Desktop Extensions (.dxt) |
🚀 Getting Started
You can quickly get started with the project through a variety of options tailored to your role and needs:
-
To
explorethe project, visit the wiki page: TUUI.com -
To
downloadand use the application directly, go to the releases page: Releases -
For
developersetup, refer to the installation guide: Getting Started (English) | 快速入门 (中文) -
To
ask the AIdirectly about the project, visit: TUUI@DeepWiki
⚙️ Core Requirements
To use MCP-related features, ensure the following preconditions are met for your environment:
-
Set up an LLM backend (e.g.,
ChatGPT,Claude,Qwenor self-hosted) that supports tool/function calling. -
For NPX/NODE-based servers: Install
Node.jsto execute JavaScript/TypeScript tools. -
For UV/UVX-based servers: Install
Pythonand theUVlibrary. -
For Docker-based servers: Install
DockerHub. -
For macOS/Linux systems: Modify the default MCP configuration (e.g., adjust CLI paths or permissions).
Refer to the MCP Server Issue documentation for guidance
For guidance on configuring the LLM, refer to the template(i.e.: Qwen):
{
"name": "Qwen",
"apiKey": "",
"url": "https://dashscope.aliyuncs.com/compatible-mode",
"path": "/v1/chat/completions",
"model": "qwen-turbo",
"modelList": ["qwen-turbo", "qwen-plus", "qwen-max"],
"maxTokensValue": "",
"mcp": true
}
The configuration accepts either a JSON object (for a single chatbot) or a JSON array (for multiple chatbots):
[
{
"name": "Openrouter && Proxy",
"apiKey": "",
"url": "https://api3.aiql.com",
"urlList": ["https://api3.aiql.com", "https://openrouter.ai/api"],
"path": "/v1/chat/completions",
"model": "openai/gpt-4.1-mini",
"modelList": [
"openai/gpt-4.1-mini",
"openai/gpt-4.1",
"anthropic/claude-sonnet-4",
"google/gemini-2.5-pro-preview"
],
"maxTokensValue": "",
"mcp": true
},
{
"name": "DeepInfra",
"apiKey": "",
"url": "https://api.deepinfra.com",
"path": "/v1/openai/chat/completions",
"model": "Qwen/Qwen3-32B",
"modelList": [
"Qwen/Qwen3-32B",
"Qwen/Qwen3-235B-A22B",
"meta-llama/Meta-Llama-3.1-70B-Instruct"
],
"mcp": true
}
]
📕 Additional Configuration
| Configuration | Description | Location | Note |
|---|---|---|---|
| LLM Endpoints | Default LLM Chatbots config | llm.json | Full config types could be found in llm.d.ts |
| MCP Servers | Default MCP servers configs | mcp.json | For configuration syntax, see MCP Servers |
| Startup Screen | Default News on Startup Screen | startup.json | |
| Popup Screen | Default Prompts on Startup Screen | popup.json |
For the decomposable package, you can also modify the default configuration of the built release:
For example, src/main/assets/config/llm.json will be located in resources/assets/config/llm.json
Once you modify or import the configurations, it will be stored in your localStorage by default.
Alternatively, you can clear all configurations from the Tray Menu by se