Skip to content

接入MCP成功后,发送请求报错 #150

@yumuysl

Description

@yumuysl

问题描述

使用deepcode-cli接入vociebox的mcp后,输入提示词但报错Request failed: 400 Invalid 'tools[7].function.name': string does not match pattern. Expected a string that matches the pattern '^[a-zA-Z0-9_-]+$'.

复现步骤

  • 安装voicebox
  • 给deepcode-cli配置voicebox的MCP
{
  "env": {
    "MODEL": "deepseek-v4-pro",
    "BASE_URL": "https://api.deepseek.com",
    "API_KEY": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxx"
  },
  "thinkingEnabled": true,
  "reasoningEffort": "max",
  "mcpServers": {
    "voicebox": {
      "command": "D:\\voicebox\\voicebox-mcp.exe",
      "env": {
        "VOICEBOX_CLIENT_ID": "deepcode-cli"
      }
    }
  }
}
  • 终端进入deepcode,使用/mcp可以成功看到mcp服务已经Ready,✓ voicebox Ready (4 tools, 0 prompts, 0 resources),且只有voicebox一个mcp
  • 重启deepcode,输入提示词“你好“
  • 报错equest failed: 400 Invalid 'tools[7].function.name': string does not match pattern. Expected a string that matches the pattern '^[a-zA-Z0-9_-]+$'.

关于voicebox的MCP

  • 支持HTTP MCP客户端包括claude code、cursor、vs code等,但deepcode-cli中配置失败,deepcode-cli不支持下面格式的MCP
{
  "mcpServers": {
    "voicebox": {
      "url": "http://127.0.0.1:17493/mcp",
      "headers": {
        "X-Voicebox-Client-Id": "claude-code"
      }
    }
  }
}
  • 可以使用适用于仅启动 stdio 进程的客户端。deepcode-cli支持此模式
{
  "mcpServers": {
    "voicebox": {
      "command": "C:\\Program Files\\Voicebox\\voicebox-mcp.exe",
      "env": {
        "VOICEBOX_CLIENT_ID": "claude-code"
      }
    }
  }
}

系统和版本

  • win11系统
  • deepcode-cli: 0.1.26
  • voicebox: 0.5.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions