Next.js的即时MCP服务器
即时API v2的模型上下文协议(MCP)服务器,使用Next.js构建,可部署在Vercel上。
特性
- 即时API v2作为MCP工具的全面实施
- 支持流式HTTP和SSE传输
- 针对在Vercel上部署Fluid计算进行了优化
- 兼容任何MCP客户端(Claude、Cursor、Windsurf等)
入门指南
先决条件
- Node.js 18或更高版本
- (可选)用于SSE传输恢复的Redis
安装
# Clone the repository
git clone https://github.com/yourusername/instantly-mcp-next.git
cd instantly-mcp-next
# Install dependencies
npm install配置
创建一个 .env.local 根目录中的文件,包含以下变量:
# Instantly API Key (Required)
INSTANTLY_API_KEY=your_api_key_here
# Redis URL for SSE transport resumability (Optional)
# REDIS_URL=redis://username:password@host:port
# Set NODE_ENV to production for deployment
NODE_ENV=development
# Next.js specific (Optional)
# NEXT_PUBLIC_BASE_URL=https://your-deployed-url.vercel.app发展
# Start the development server
npm run dev访问http://localhost:3000查看服务器的运行情况。
端点
MCP服务器公开了多个端点以支持不同的客户端类型:
/api/mcp-向后兼容性的默认端点/api/sse-适用于苏格兰和南方能源公司运输客户/api/streamable-适用于流式HTTP传输客户端(建议用于新客户端)
可用工具
服务器将所有Instantly API v2端点公开为MCP工具,包括:
潜在客户
instantly_create_leadinstantly_get_leadinstantly_list_leadsinstantly_update_leadinstantly_delete_leadinstantly_merge_leadsinstantly_update_lead_interest_statusinstantly_remove_lead_from_subsequence
活动
instantly_list_campaignsinstantly_get_campaigninstantly_create_campaigninstantly_update_campaigninstantly_delete_campaigninstantly_start_campaigninstantly_stop_campaign
账户
instantly_create_accountinstantly_list_accountsinstantly_get_accountinstantly_update_accountinstantly_delete_accountinstantly_pause_accountinstantly_resume_account
分析
instantly_get_warmup_analyticsinstantly_test_account_vitalsinstantly_get_campaign_analytics
公用事业
instantly_test_connectioninstantly_mcp_info
认证
要使用服务器,您需要一个即时API密钥。此键应设置为环境变量:
INSTANTLY_API_KEY=your_api_key_here部署
部署到Vercel
- 分叉此存储库
- 创建新的Vercel项目
- 将存储库链接到您的Vercel项目
- 设置以下环境变量:
- INSTANTLY_API_KEY:您的即时API密钥 - REDIS_URL (可选):用于SSE传输可恢复性的Redis实例的URL
- 在项目设置中启用Fluid计算以获得最佳性能
- 部署项目
与客户端一起使用
要将此服务器与MCP客户端一起使用,只需将客户端指向您部署的URL:
// Example with TypeScript MCP SDK
import { Client } from "@modelcontextprotocol/sdk/client";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp";
const client = new Client({
name: "my-client",
version: "1.0.0"
});
const transport = new StreamableHTTPClientTransport(
new URL("https://your-deployed-url.vercel.app/api/streamable")
);
await client.connect(transport);
// Now you can call Instantly API tools
const campaigns = await client.callTool({
name: "instantly_list_campaigns",
arguments: { limit: 5 }
});许可证
麻省理工学院
贡献
欢迎投稿!请随时提交拉取请求。
