Skip to content

Commit 31c2d7c

Browse files
committed
fix: escape special characters in tool description for consistency
--bug=1065878@tapd-62980211 --user=刘瑞斌 【AI节点】 在工作流中,当工具描述内容过长且有换行时,AI调用执行会报错。 https://www.tapd.cn/62980211/s/1840808
1 parent ffe343d commit 31c2d7c

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

apps/common/utils/tool_code.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,8 @@ def _generate_mcp_server_code(self, _code, params, name=None, description=None):
183183
node.args.defaults = defaults
184184
func_code = ast.unparse(node)
185185
# 有些模型不支持name是中文,例如: deepseek, 其他模型未知
186-
functions.append(f"@mcp.tool(description='{name} {description}')\n{func_code}\n")
186+
escaped_desc = (name + ' ' + description).replace('\n', ' ').replace("'", " ")
187+
functions.append(f"@mcp.tool(description='{escaped_desc}')\n{func_code}\n")
187188
else:
188189
other_code.append(ast.unparse(node))
189190
# 构建完整的 MCP 服务器代码

0 commit comments

Comments
 (0)