企业MCP网桥
企业MCP Bridge与Redmine和ServiceNow合作,是一个用于通过LLM(OpenAI)管理任务和事故的桌面应用程序和MCP服务器的混合项目。
使用Mastra框架配置代理,并使用FastMCP提供MCP服务器功能。
🚀 安装过程
1.安装相关性
在项目根目录中执行以下命令:。
npm install2.设置环境变量
项目根目录 .env 请创建文件并设置所需的信息。.env.example 中所述修改相应参数的值。
cp .env.example .env设定项目
OPENAI_API_KEY:OpenAI的API密钥REDMINE_URL:Redmine的基本URLREDMINE_API_KEY:Redmine API密钥SNOW_INSTANCE:服务节点实例名称SNOW_USER:服务Now用户名SNOW_PASS:服务Now密码
3.启动应用程序
执行以下脚本可启动前端和台式机。 另外,在应用程序启动时,MCP服务器也会在后台自动启动。
./scripts/start-all.sh🛠 项目配置
src/mcp/:实现MCP服务器和LLM代理
- server.ts:快速MCP服务器(快速传输) - hono-server.ts:可流HTTP传输 - llm.ts:定义Mastra代理和工具
src/api/:每个外部服务(Redmine,ServiceNow)的客户端实现scripts/:实用程序脚本
🔌 MCP服务器的启动模式
该项目通过两种传输提供MCP服务器。
STDIO模式与可流HTTP模式的区别
| 比较项目 | STDIO(FastMCP) | Streamable HTTP(Hono) |
|---|
|通信方式|进程的stdin/stdout|HTTP(port3000)| |连接范围|仅限本地|也可以通过网络| 服务器启动|客户端自动启动|需要事先手动启动| \[主要用途\]远程客户端Web |
STDIO机制:
- 客户机,如Claude Desktop
config.json的,之command中描述的场景,使用下列步骤创建明细表,以便在概念设计中分析体量的周长 - 进程在stdin/stdout中交换JSON-RPC消息
- 无需预先启动服务器(客户端每次启动)
流式HTTP的工作原理:
npm run mcp:http必须先启动服务器- 客户机
http://localhost:3000/mcp用HTTP开机自检发送请求 - 多个客户端可以同时连接到同一服务器
启动STDIO模式
npm run mcp设置Claude Desktop/Claude Code(claude_desktop_config.json):
{
"mcpServers": {
"enterprise-mcp": {
"command": "node",
"args": ["--env-file=.env", "--import=tsx/esm", "src/mcp/server.ts"],
"cwd": "/path/to/this/project"
}
}
}启动可流HTTP模式
npm run mcp:http预先配置Claude Desktop/Claude Code npm run mcp:http 中所述的工具,调整墙的布局和几何形状
{
"mcpServers": {
"enterprise-mcp-http": {
"url": "http://localhost:3000/mcp"
}
}
}🔍 在MCP检验器中确认动作
STDIO模式
检查器将自动启动stdio服务器。不需要预先启动。
npm run inspect浏览器打开后 传输类型:STDIO 保持 连接 按钮关闭对话框。
可流HTTP模式
需要两步。 检验器不会自动启动服务器,需要预启动。
# ① 別ターミナルで Hono サーバーを起動(起動したままにする)
npm run mcp:http
# ② Inspector を起動
npm run inspect:http浏览器打开后请设定以下内容 连接 按钮关闭对话框。
- 将条目添加到文档注册表
Streamable HTTP更改为 - URL";
http://localhost:3000/mcp的双曲正切值
⚠️ 关于Git的注意事项
包括机密信息(API密钥等) .env 文件已从Git跟踪对象中排除。 如果添加了新的环境变量,请确保 .env.example 中描述的相应参数的值。
