在你的stdio MCP服务器中使用的console.log
当使用stdio传输开发MCP(模型上下文协议)服务器时,console.log会干扰协议通信。
例如,在你的MCP服务器代码中调用console.log时,通常会在MCP检查器npx @modelcontextprotocol/inspector中看到以下错误:
来自MCP服务器的错误:SyntaxError: JSON中的位置0处意外标记S
这个包修补了控制台方法(log、warn、error、debug),并将日志重定向到单独的终端。
https://github.com/user-attachments/assets/33ff367e-74b4-48e8-9f04-0bcafbad5e00
在你希望查看日志的终端中启动日志记录器:
npx mcps-logger
在你的MCP服务器中安装日志记录器:
npm install mcps-logger
将其添加到你的MCP服务器入口文件中:
import "mcps-logger/console";
或者如果你只想在开发模式下使用:
if (process.env.NODE_ENV !== "production") {
import("mcps-logger/console");
}