VoxMesh

VoxMesh

Enables voice-first interactions with AI agents and MCP tools, supporting speech input/output, STT/TTS, and a provider-independent agent core.

Category
访问服务器

README

VoxMesh

VoxMesh is a platform-independent, voice-first AI agent gateway.

The project is designed to connect speech input, speech-to-text, an AI agent, MCP tools, text-to-speech, and voice output while keeping the Agent Core independent of hardware, operating systems, and AI providers.

Project Status

VoxMesh has an initial Mock Mode vertical slice for development and architecture validation. It includes:

  • a pnpm and TypeScript monorepo
  • a Fastify server and React Web Console
  • first-run administrator password setup and session authentication
  • SQLite conversation and log persistence
  • provider-independent Agent Core contracts
  • deterministic Mock LLM and Mock MCP tool execution
  • browser Mock Voice recording with Mock STT and generated WAV response
  • selectable Composed and Mock Native Multimodal voice pipeline modes
  • Dashboard, Chat, Conversations, and Logs pages
  • Settings page for password rotation and Mock/Azure OpenAI configuration
  • write-only Azure OpenAI API key handling and connection testing
  • generic OpenAI-compatible LLM configuration, including Alibaba Cloud Model Studio
  • English and Simplified Chinese Web Console localization
  • browser-language detection and persisted language selection
  • Light, Dark, and System appearance modes
  • persisted appearance selection with live operating-system synchronization
  • feature-oriented, single-purpose React components
  • React Testing Library behavioral tests for every current UI component
  • TanStack Router with Browser History and deep-linkable pages
  • TanStack Query for remote server state and cache invalidation
  • TanStack Form for complex Settings workflows
  • unit, integration, and Playwright end-to-end tests

Azure Speech, generic external MCP transports, physical audio, and deployment packaging remain planned work.

The architecture is designed for:

  • macOS, Linux, and Windows development
  • Linux amd64 and arm64 deployment
  • Docker Compose and native systemd deployment
  • Mock Mode without hardware or external service credentials

Requirements

  • Node.js 22.12 or later
  • pnpm 10.27

Quick Start

pnpm install
pnpm build
pnpm --filter @voxmesh/server start

Open http://127.0.0.1:3000, create the first administrator password, sign in, and use Chat. Enter Check the light status to exercise the Mock LLM -> Mock MCP -> Mock LLM flow.

The Chat page also provides Start recording, Stop recording, and Play response controls. In Mock Mode, recorded audio is validated, transcribed to a deterministic test phrase, processed through Agent Core and Mock MCP, and returned with a generated test WAV.

Use Settings to change the administrator password or switch Chat between Mock and Azure OpenAI. Azure OpenAI requires an HTTPS endpoint, deployment name, API version, and API key. The API key is stored in the local SQLite database, is never returned to the browser, and is protected by host filesystem permissions.

The LLM provider can also use an OpenAI-compatible API. For Alibaba Cloud Model Studio, configure the region/workspace base URL, API key, and model name such as qwen-plus.

Alibaba Cloud speech uses the dedicated Alibaba Cloud Model Studio STT/TTS provider, not the OpenAI-compatible Audio API. Configure the workspace WebSocket endpoint, API key, realtime ASR or TTS model, language, and voice independently for STT and TTS.

Use the language selector on setup, login, or Settings to switch between English and Simplified Chinese. The preference is stored in the browser and applies immediately.

Use the appearance selector in Settings to choose Light, Dark, or System. System is the default and follows live operating-system theme changes.

For frontend and backend development with automatic reload:

pnpm dev

The Web Console is available at http://127.0.0.1:5173 and proxies API requests to the server on port 3000.

Web Console pages use stable URLs such as /dashboard, /chat, /conversations, /conversations/<id>, /logs, and /settings. Direct loading, refresh, and browser back or forward navigation are supported.

Configuration

Copy .env.example values into your environment or process manager:

Variable Default Description
VOXMESH_HOST 127.0.0.1 Server listen address
VOXMESH_PORT 3000 Server listen port
VOXMESH_DATABASE_PATH ./data/voxmesh.sqlite SQLite database path
VOXMESH_SESSION_TTL_SECONDS 86400 Administrator session lifetime
VOXMESH_COOKIE_SECURE false Require HTTPS for the session cookie

The first administrator password must contain at least 10 characters. Passwords are stored as salted scrypt hashes. Session cookies are HttpOnly and SameSite=Strict.

Changing the administrator password revokes every active session. Azure OpenAI settings take effect on the next Chat request. The connection-test action sends a small request to the configured deployment and may incur provider usage costs.

Validation

pnpm format:check
pnpm lint
pnpm typecheck
pnpm test:unit
pnpm test:integration
pnpm build
pnpm test:e2e

Run every required check with:

pnpm validate

Playwright MCP

The repository-level .mcp.json configures Playwright MCP for browser investigation through structured accessibility snapshots. Copilot CLI and Claude Code discover this file from the repository root after workspace trust is approved.

The server uses the latest official package release and isolated browser sessions so cookies and login state are not retained between MCP sessions. Restart the MCP client after changing the configuration.

Default tests and Mock Mode require no AI credentials, external MCP servers, or audio hardware.

Workspace

apps/server           Fastify API, authentication, and composition root
apps/web              React and Vite Web Console
apps/web/src/features Feature-oriented pages, forms, and settings components
apps/web/src/components Shared layout components
apps/web/src/router.tsx Typed TanStack Router route tree and guards
apps/web/src/query.ts Typed TanStack Query keys and query options
packages/agent-core   Provider-independent agent runtime and mocks
packages/shared       Runtime schemas and shared contracts
packages/storage      SQLite storage adapter
tests/e2e             Browser end-to-end tests

Documentation

Coding Agent Instructions

Development Policy

Before implementing a functional change:

  1. Discuss and confirm its behavior, scope, risks, acceptance criteria, and testing requirements.
  2. Create a dedicated branch from the latest main; never edit or push directly to main.
  3. Keep all repository content and code comments in English.
  4. Add complete unit, integration where applicable, and end-to-end tests.
  5. Add English developer documentation and useful JSDoc or reasoning comments for public contracts, configuration, architecture, security constraints, and non-obvious behavior.
  6. Run all applicable format, lint, type-check, test, and production-build checks.
  7. Use Conventional Commit-style commit messages and PR titles, and split unrelated changes into focused commits.
  8. Obtain separate explicit approval before committing, pushing, creating a pull request, merging, or releasing.

See Development Rules for the complete mandatory policy.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选