Integration App MCP Server 是一个 Model Context Protocol (MCP) 服务器,它为 Integration.app 膜状物上的连接集成提供工具。
这里是我们官方的 AI Agent 示例,展示了如何在您的应用程序中使用此 MCP 服务器。
git clone https://github.com/integration-app/mcp-server.git
cd mcp-server
npm install
npm run build
要运行本地开发服务器,请执行以下操作:
npm run dev
服务器将在 http://localhost:3000 上运行 ⚡️
# 在测试模式下启动服务器
npm run start:test
# 然后运行测试
npm test
将您自己的 MCP 服务器实例部署到您选择的任何云托管服务上。
项目包括一个 Dockerfile,用于轻松容器化部署。
docker build -t integration-app-mcp-server .
docker run -p 3000:3000 integration-app-mcp-server
此 MCP 服务器支持两种传输方式:
| 传输方式 | 终点 | 状态 |
|---|---|---|
| SSE (服务器发送事件) | /sse | 🔴 已弃用 — 自 2024 年 11 月 5 日起在 MCP 规范中被弃用 |
| HTTP (可流式传输 HTTP) | /mcp | 🟢 推荐 — 替代 SSE 并支持双向流式传输 |
通过查询或 Authorization 头提供 Integration.app 访问令牌:
?token=ACCESS_TOKEN
Authorization: Bearer ACCESS_TOKEN
SSE (已弃用)
await client.connect(
new SSEClientTransport(
new URL(
`https://<HOSTED_MCP_SERVER_URL>/sse`
),
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
)
);
可流式传输 HTTP (推荐)
await client.connect(
new StreamableHTTPClientTransport(
new URL(`https://<HOSTED_MCP_SERVER_URL>/mcp`),
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
)
);
默认情况下,MCP 服务器以 静态模式 运行,这意味着它会返回所有可用工具(动作)给所有连接的集成。
在 动态模式 (?mode=dynamic) 下,服务器只会返回一个工具:enable-tools。您可以使用这个工具来选择性地启用您实际需要的工具。
在动态模式下,您的实现应该确定哪些工具对用户的查询最相关。一旦确定了它们,提示 LLM 调用带有适当列表的 enable-tools 工具。
想看看这在实践中是如何工作的吗?请查看我们的 AI Agent 示例。
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
const client = new Client({
name: 'example-integration-app-mcp-client',
version: '1.0.0',
});
const transport = new StreamableHTTPClientTransport(
new URL(`https://<HOSTED_MCP_SERVER_URL>/mcp?mode=dynamic`),
{
requestInit: {
headers: {
Authorization: `Bearer ${ACCESS_TOKEN}`,
},
},
}
);
await client.connect(transport);
await client.callTool({
name: 'enable-tools',
arguments: {
tools: ['gmail-send-email', 'gmail-read-email'],
},
});
在静态模式下,MCP 服务器从与提供的令牌关联的所有活动连接中获取工具。
您可以选择仅获取特定集成的工具,通过传递 apps 查询参数:/mcp?apps=google-calendar,google-docs
MCP 服务器(仅限可流式传输 HTTP 传输)支持持久聊天会话。在请求中包含 x-chat-id 头以自动跟踪该特定聊天的会话。这是一个我们额外提供的实验性功能,除了标准的 MCP 会话之外。
开始新的聊天会话:
POST /mcp
Authorization: Bearer YOUR_ACCESS_TOKEN
x-chat-id: my-awesome-chat-123
检索您的聊天会话:
GET /mcp/sessions
Authorization: Bearer YOUR_ACCESS_TOKEN
响应:
{
"my-awesome-chat-123": "session-uuid-1",
"another-chat-456": "session-uuid-2"
}
此功能允许您在同一会话中进行对话。请查看我们的 AI Agent 示例 以了解这在实践中是如何工作的。
要使用此服务器与 Cursor 一起工作,请更新 ~/.cursor/mcp.json 文件:
{
"mcpServers": {
"integration-app": {
"url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}"
}
}
}
重新启动 Cursor 以使更改生效。
要使用此服务器与 Claude 一起工作,请更新配置文件(设置 > 开发者 > 编辑配置):
{
"mcpServers": {
"integration-app": {
"url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}"
}
}
}