AI工作流服务器
一种混合服务器,同时支持Express HTTP API和MCP(模型上下文协议)服务器功能。
特性
- 快速HTTP API:用于工作流处理的传统REST端点
- MCP服务器:用于AI工具集成的模型上下文协议服务器
- 工作流处理:从文字记录中提取财产信息和期限
安装
npm install配置
复制 env.sample 到 .env 并填写你的秘密:
cp env.sample .env所需的环境变量:
OPENAI_API_KEY:您的OpenAI API密钥PORT:服务器端口(默认值:3000)ENABLE_MCP_HTTP:设置为“true”以在Express服务器中启用MCP HTTP支持(可选)OPENAI_AGENTS_DISABLE_TRACING:设置为“1”以禁用OpenAI代理SDK跟踪导出(避免[non-fatal] Tracing: server error 503, retrying.日志)
用法
Express服务器(HTTP API)
启动Express服务器:
npm run dev # Development mode
npm run build # Build for production
npm start # Production mode服务器将在上运行 http://localhost:3000 (或您配置的端口)。
部署为Docker镜像(Docker注册表)
1) 在本地构建图像
运行终端(从 ai-workflow-server/):
docker build -t ai-workflow-server:latest .2) 在本地运行容器
服务器需要环境变量(请参见 env.sample).至少你?I通常需要:
OPENAI_API_KEYPORT(可选;默认值为3000)MYSQL_HOST,MYSQL_USER,MYSQL_PASSWORD,MYSQL_DATABASE(房产搜索工具所需)
运行终端:
docker run --rm -p 3000:3000 \
-e OPENAI_API_KEY=YOUR_OPENAI_KEY \
-e PORT=3000 \
-e MYSQL_HOST=YOUR_DB_HOST \
-e MYSQL_USER=YOUR_DB_USER \
-e MYSQL_PASSWORD=YOUR_DB_PASSWORD \
-e MYSQL_DATABASE=YOUR_DB_NAME \
ai-workflow-server:latest3) 标记+推送到注册表
Docker Hub
docker login
docker tag ai-workflow-server:latest /ai-workflow-server:latest
docker push /ai-workflow-server:latestGitHub容器注册表(GHCR)
docker login ghcr.io
docker tag ai-workflow-server:latest ghcr.io//ai-workflow-server:latest
docker push ghcr.io//ai-workflow-server:latestAWS ECR(高级)
创建一个ECR仓库,登录,然后标记+推送:
# login command varies by region/account; AWS CLI typically provides it:
# aws ecr get-login-password --region | docker login --username AWS --password-stdin .dkr.ecr..amazonaws.com
docker tag ai-workflow-server:latest .dkr.ecr..amazonaws.com/ai-workflow-server:latest
docker push .dkr.ecr..amazonaws.com/ai-workflow-server:latest端点
GET /-健康检查POST /process-带有文本输入的流程工作流
{
"input_as_text": "Today I worked on property ABC123 from 2:30 to 3:15 fixing issues"
}MCP服务器(stdio传输)
启动独立MCP服务器:
npm run dev:mcp # Development mode
npm run build # Build first
npm run start:mcp # Production modeMCP服务器通过stdio(stdin/stdout)进行通信,这是MCP服务器的标准工作方式。
MCP工具
- 运行工作流:通过AI工作流处理文本输入
- 输入: input_as_text (string)-描述在物业完成的工作的记录或文本 - 输出:JSON,包含提取的属性信息和持续时间
- 提取属性信息:从文本转录中提取属性名称和持续时间
- 输入: transcript (string)-描述物业工作的文字记录 - 输出:提取的属性信息
使用MCP服务器和MCP客户端
要将此MCP服务器与MCP客户端(如Claude Desktop)一起使用,请将其添加到您的MCP配置中:
{
"mcpServers": {
"ai-workflow": {
"command": "node",
"args": ["/path/to/ai-workflow-server/dist/mcp-server.js"]
}
}
}建筑
src/server.ts-具有可选MCP HTTP支持的Express HTTP服务器src/mcp-server.ts-使用stdio传输的独立MCP服务器src/workflow.ts-处理文本的核心工作流逻辑src/types.ts-TypeScript类型定义
发展
# Install dependencies
npm install
# Run Express server in development
npm run dev
# Run MCP server in development
npm run dev:mcp
# Build for production
npm run build备注
- MCP服务器使用stdio传输,这是MCP协议的标准
- Express服务器可以选择启用MCP HTTP支持,但建议MCP使用stdio
- 两台服务器共享相同的工作流处理逻辑
- 使用Zod模式注册工具以实现类型安全
