MCP常见问题

本文列举您通过Function AI部署和使用MCP服务过程中可能遇到的问题及解决方案。

如何获取MCP服务的访问地址?

Function AI控制台的项目页面,单击目标MCP服务所在的项目名称,在服务详情页面,选择服务测试页签,您可以查看服务的访问地址。

image

MCP服务部署成功了,但是访问失败怎么办?

您可以通过查看MCP服务的日志排查具体启动失败原因。

image

MCP访问失败一般都是用户MCP代码或者配置问题导致的函数启动失败,常见的原因如下:

  1. 启动命令配置错误

    例如,您选择了Java运行时,并配置启动命令为java -jar ./target/mcp-server-1.0-SNAPSHOT.jar,但实际代码包的目录结构中没有target目录,需根据实际调整启动参数中的代码包目录。

  2. 构建时未将依赖文件一起打包到代码中

    例如,您选择了Python运行时,构建命令配置了pip install -r requirements.txt,此时依赖不会下载到代码构建的目录下,需修改构建命令为pip install -r requirements.txt -t .

  3. SSEMCP服务监听端口配置错误

    例如,MCP代码中的监听端口配置的是8080,而MCP服务配置的端口是9000。

  4. MCP的协议类型配置错误

    例如,您的代码为STDIOMCP代码,但是MCP服务配置的传输类型为SSE。

  5. 鉴权信息配置错误

    MCP服务开启了鉴权时,MCP Client需要透传鉴权header,具体JSON配置如下:

    {
    	"headers": {
    		"Authorization": "Bearer $TOKEN"
    	}
    }

    其中,Bearer Token的值可以在服务测试页面获取。

    image