【AI】mcp项目实战开发记录 - 踩坑mcp.json配置文件
针对场景:Qoder连接local mcp server的mcp.json文件配置,即stdio方式启动。
{
  "mcpServers": {
    "your-mcp-identifier": {
      "command": "uv",
      "args": [
	  "--directory", 
	  "D:/usr/username/your-project-name/src/mcp_server",
	  "run",
	  "server.py"
	  ]
    }
  }
}
注意⚠️:
- command是你使用来启动项目的工具,我用的uv
- --directory,是指定项目的目录,我这里是绝对路径,看args的第二个元素,可以看出这里是进入到了server.py的父级目录了
- run和server.py代表我实际上要运行的是server文件,可以看成是启动文件,与main一个作用。
为了更好的理解,我把项目的结构截图出来(重点的目录用黄色高亮显示):

为什么说这会是我的踩坑项目呢:
- 
网上很多的配置文件command都是用的npx或者远程mcp服务的连接。而我看的qoder官方文档里,并没有提到uv命令启动的本地mcp服务的连接配置。 
 ![image]() 
- 
我参考别人用了uv命令启动的配置文件写法,我发现是类似这样的: "mcpServers": { "your-mcp-identifier": { "command": "uv", "args": [ "run", "server.py" ] } }由于在项目终端运行时,我进入到server.py文件目录下时,运行uv run server.py是可以成功启动服务的。所以我理所应当的任务,这个写法是用来启动服务的,于是我把绝对路径写在了配置文件里,类似这样: "mcpServers": { "your-mcp-identifier": { "command": "uv", "args": [ "run", "absolute_path/server.py" ] } }但这样写,qoder也是显示连接不成功。在翻了很多配置文件的写法后,我发现有一种启动命令用npx的写法是在启动前加入了--directory,于是我死马当活马医,command是uv不变,在args里面的前两位元素加入了--directory和父级的绝对目录。这样配置以后,qoder才显示连接成功。 
 
                    
                     
                    
                 
                    
                

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号