xiaozhi-client  by shenjingnan

AI client for seamless AI service integration

Created 8 months ago
258 stars

Top 98.1% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

This project provides the xiaozhi-client, a bridge application enabling integration between Xiaozhi AI services and various clients or servers using the MCP (Meta Communication Protocol). It targets developers and users needing to connect AI models, particularly those from xiaozhi.me or compatible self-hosted backends, to applications like Cursor or Cherry Studio, or to manage distributed AI services. The client offers flexible deployment options and configuration management, simplifying the integration of AI capabilities into diverse software environments.

How It Works

The xiaozhi-client acts as an MCP server, abstracting the underlying Xiaozhi AI backend. It supports connecting to official Xiaozhi endpoints or custom, self-hosted open-source servers using standard MCP or RPC communication. Key architectural choices include dynamic control over tool visibility to prevent server overload from excessive tools and the ability to aggregate multiple MCP servers. A web-based interface allows for remote configuration, enabling deployment on one device and management from another.

Quick Start & Requirements

  • Primary Install/Run:
    • Local: Requires Node.js 22 (LTS) and pnpm. Install globally (pnpm install -g xiaozhi-client), create a project (xiaozhi create <app-name>), install dependencies (pnpm install), configure endpoint (xiaozhi config set mcpEndpoint "<endpoint>"), and start (xiaozhi start).
    • Docker: Pre-built images available. Requires Docker and a Xiaozhi endpoint address. Use provided start.sh scripts (via curl | bash) or docker-compose for setup and execution.
  • Prerequisites: Node.js 22 (LTS), pnpm, Docker (for Docker method).
  • Documentation: xiaozhi-client.shenjingnan.com

Highlighted Details

  • Supports multiple Xiaozhi endpoints and MCP server aggregation.
  • Dynamic tool visibility control for MCP servers.
  • Web-based UI for remote IP/port configuration.
  • Integration with ModelScope remote MCP services.
  • Project templating and background execution support.

Maintenance & Community

The README lists contributors but provides no further details on community channels (e.g., Discord, Slack), roadmap, or project governance.

Licensing & Compatibility

The license type is not specified in the provided README. This lack of information presents a significant adoption blocker, particularly for commercial use or integration into closed-source projects. Compatibility is primarily defined by adherence to the MCP protocol.

Limitations & Caveats

The absence of a specified open-source license is the primary limitation, hindering clear understanding of usage rights. The project relies on specific versions of Node.js (22 LTS) and pnpm, which may require environment management. Details regarding performance benchmarks, specific client compatibility beyond examples, or potential bugs are not provided.

Health Check
Last Commit

23 hours ago

Responsiveness

Inactive

Pull Requests (30d)
642
Issues (30d)
572
Star History
17 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.