開発者
Vercel AI SDK
Vercel AI SDKをcreateMCPClientを使ってstreamable HTTP経由でEdison Watchに接続する。
Vercel AI SDK は createMCPClient と組み込みのHTTPトランスポートを使ってEdisonに接続します。接続URL にはAPIキーが含まれているため、認証ヘッダーは不要です。
createMCPClient は専用の @ai-sdk/mcp パッケージ(プレフィックスなしの名前)に含まれており、ai v7 と併用します。古いコードでは ai から experimental_createMCPClient をインポートしていました。このエイリアスは後方互換性のために @ai-sdk/mcp にまだ存在しますが、createMCPClient を推奨します。
npm install ai @ai-sdk/mcp @ai-sdk/openaiimport { createMCPClient } from '@ai-sdk/mcp';
import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
const client = await createMCPClient({
transport: {
type: 'http',
url: process.env.EDISON_MCP_URL!,
},
});
try {
const tools = await client.tools();
const response = await generateText({
model: openai('gpt-5.6-luna'),
tools,
messages: [{ role: 'user', content: 'List my available tools.' }],
});
console.log(response.text);
} finally {
await client.close();
}EDISON_MCP_URL に接続URLを設定してください(例:https://mcp.edison.watch/mcp/<your-api-key>/?client=vercel-ai-sdk)。
最近のAI SDKバージョンでは、SSRFガードとしてMCP HTTPトランスポートのリダイレクト処理が厳格化されています。Edisonはエンドポイントを直接提供します(リダイレクトなし)ので、デフォルトのままで問題ありません。ただし、ゲートウェイの前に3xxリダイレクトを行うものを置く場合は、redirect: 'follow' を明示的に設定してください。
オプション:暗号化シークレットヘッダー
ゼロ知識暗号化シークレット を使用するサーバーには、トランスポートに headers を追加します。
const client = await createMCPClient({
transport: {
type: 'http',
url: process.env.EDISON_MCP_URL!,
headers: { 'x-edison-secret-key': process.env.EDISON_SECRET_KEY! },
},
});
