@ayatec/ai-gateway-mcp-server 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -24,11 +24,11 @@ Web 検索、マルチモデル調査・比較など、LLM を活用した 4 つ
24
24
 
25
25
  検索対応モデルを使って最新情報を取得します。
26
26
 
27
- | パラメータ | 型 | 必須 | デフォルト | 説明 |
28
- | ------------ | ------ | ---- | ------------------ | ------------------ |
29
- | `query` | string | Yes | - | 検索クエリ |
30
- | `model` | string | No | `perplexity/sonar` | 検索対応モデル ID |
31
- | `max_tokens` | number | No | `2000` | 最大出力トークン数 |
27
+ | パラメータ | 型 | 必須 | デフォルト | 説明 |
28
+ | ------------ | ------ | ---- | ----------------------- | ------------------ |
29
+ | `query` | string | Yes | - | 検索クエリ |
30
+ | `model` | string | No | `google/gemini-3-flash` | 検索対応モデル ID |
31
+ | `max_tokens` | number | No | `2000` | 最大出力トークン数 |
32
32
 
33
33
  ### `research` -- マルチモデル調査・比較
34
34
 
@@ -65,37 +65,37 @@ Web 検索、マルチモデル調査・比較など、LLM を活用した 4 つ
65
65
 
66
66
  ### OpenAI
67
67
 
68
- | モデル ID | 入力 | 出力 | 検索 | 特徴 |
69
- | ---------------------- | ----- | ------ | ---- | ------------------------------ |
70
- | `openai/gpt-5.2` | $1.75 | $14.00 | Yes | フラッグシップ、ask デフォルト |
71
- | `openai/gpt-5.2-codex` | $1.75 | $14.00 | Yes | コード特化 |
72
- | `openai/gpt-5-mini` | $0.25 | $2.00 | Yes | バランス型 |
73
- | `openai/gpt-5-nano` | $0.05 | $0.40 | No | 最安 |
74
- | `openai/gpt-oss-120b` | $0.10 | $0.50 | No | OSS |
68
+ | モデル ID | 入力 | 出力 | 検索 | 特徴 |
69
+ | ---------------------- | ----- | ------ | ---- | -------------------------------- |
70
+ | `openai/gpt-5.2` | $1.75 | $14.00 | Yes | OpenAI 最上位、ask デフォルト |
71
+ | `openai/gpt-5.2-codex` | $1.75 | $14.00 | Yes | コード生成・解析特化 |
72
+ | `openai/gpt-5-mini` | $0.25 | $2.00 | Yes | 軽量汎用、推論・検索・コード対応 |
73
+ | `openai/gpt-5-nano` | $0.05 | $0.40 | No | 最軽量、生成専用 |
74
+ | `openai/gpt-oss-120b` | $0.10 | $0.50 | No | オープンウェイト 120B |
75
75
 
76
76
  ### Anthropic
77
77
 
78
- | モデル ID | 入力 | 出力 | 検索 | 特徴 |
79
- | ----------------------------- | ----- | ------ | ---- | ---------- |
80
- | `anthropic/claude-opus-4.6` | $5.00 | $25.00 | Yes | 最高性能 |
81
- | `anthropic/claude-sonnet-4.6` | $3.00 | $15.00 | Yes | バランス型 |
82
- | `anthropic/claude-haiku-4.5` | $1.00 | $5.00 | Yes | 高速 |
78
+ | モデル ID | 入力 | 出力 | 検索 | 特徴 |
79
+ | ----------------------------- | ----- | ------ | ---- | --------------------------------- |
80
+ | `anthropic/claude-opus-4.6` | $5.00 | $25.00 | Yes | Anthropic 最上位、1M コンテキスト |
81
+ | `anthropic/claude-sonnet-4.6` | $3.00 | $15.00 | Yes | 中位汎用、1M コンテキスト |
82
+ | `anthropic/claude-haiku-4.5` | $1.00 | $5.00 | Yes | 低レイテンシ軽量 |
83
83
 
84
84
  ### Google
85
85
 
86
- | モデル ID | 入力 | 出力 | 検索 | 特徴 |
87
- | ------------------------------- | ----- | ------ | ---- | ---------- |
88
- | `google/gemini-3-flash` | $0.50 | $3.00 | Yes | コスパ最強 |
89
- | `google/gemini-3.1-pro-preview` | $2.00 | $12.00 | Yes | 高性能 |
86
+ | モデル ID | 入力 | 出力 | 検索 | 特徴 |
87
+ | ------------------------------- | ----- | ------ | ---- | ------------------------------------------ |
88
+ | `google/gemini-3-flash` | $0.50 | $3.00 | Yes | Google Search grounding、search デフォルト |
89
+ | `google/gemini-3.1-pro-preview` | $2.00 | $12.00 | Yes | Google 上位、Gemini 3 Pro 後継 |
90
90
 
91
91
  ### Perplexity
92
92
 
93
- | モデル ID | 入力 | 出力 | 検索 | 特徴 |
94
- | -------------------------------- | ----- | ------ | ---- | --------------------------------- |
95
- | `perplexity/sonar` | $1.00 | $1.00 | Yes | ネイティブ検索、search デフォルト |
96
- | `perplexity/sonar-pro` | $3.00 | $15.00 | Yes | 高精度検索 |
97
- | `perplexity/sonar-reasoning-pro` | $2.00 | $8.00 | Yes | 推論+高精度検索 |
98
- | `perplexity/sonar-deep-research` | $2.00 | $8.00 | Yes | エージェント型マルチ検索調査 |
93
+ | モデル ID | 入力 | 出力 | 検索 | 特徴 |
94
+ | -------------------------------- | ----- | ------ | ---- | -------------------------------- |
95
+ | `perplexity/sonar` | $1.00 | $1.00 | Yes | 検索ネイティブ、低レイテンシ |
96
+ | `perplexity/sonar-pro` | $3.00 | $15.00 | Yes | 高精度検索 |
97
+ | `perplexity/sonar-reasoning-pro` | $2.00 | $8.00 | Yes | 推論+高精度検索 |
98
+ | `perplexity/sonar-deep-research` | $2.00 | $8.00 | Yes | エージェント型マルチステップ調査 |
99
99
 
100
100
  > 価格は 1M トークンあたり(USD)
101
101
 
@@ -196,7 +196,7 @@ pnpm dev:tool ask --question "TypeScriptの利点は?"
196
196
  # ask(モデル指定)
197
197
  pnpm dev:tool ask --question "Rustとは?" --model "anthropic/claude-sonnet-4.6"
198
198
 
199
- # search(デフォルト: perplexity/sonar
199
+ # search(デフォルト: google/gemini-3-flash
200
200
  pnpm dev:tool search --query "Vercel AI SDK 最新情報"
201
201
 
202
202
  # research(4モデル並列検索→統合、デフォルト)
@@ -1,4 +1,4 @@
1
- import type { ModelId, ToolResponse } from '../types/index.js';
1
+ import type { ModelId, Source, ToolResponse } from '../types/index.js';
2
2
  /** テキスト生成の共通オプション */
3
3
  export interface GenerateOptions {
4
4
  modelId: ModelId;
@@ -13,6 +13,8 @@ export interface GenerateResult {
13
13
  response: ToolResponse;
14
14
  durationMs: number;
15
15
  isError?: boolean;
16
+ /** 検索結果から抽出したソース情報(useSearch: true の場合のみ) */
17
+ sources?: Source[];
16
18
  }
17
19
  /** テキスト生成してMCPレスポンスを返す */
18
20
  export declare function generate(options: GenerateOptions): Promise<GenerateResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiC/D,qBAAqB;AACrB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,0BAA0B;AAC1B,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CA8DhF;AAED,6BAA6B;AAC7B,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,eAAe,EAAE,GAC7B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,EAAE,CAAC,CA8BzD"}
1
+ {"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkFvE,qBAAqB;AACrB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,0BAA0B;AAC1B,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAmEhF;AAED,6BAA6B;AAC7B,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,eAAe,EAAE,GAC7B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,EAAE,CAAC,CA8BzD"}
@@ -1,43 +1,77 @@
1
1
  import { generateText } from 'ai';
2
2
  import { resolveModel, gateway } from '../providers/index.js';
3
- import { getModel } from './model-registry.js';
4
3
  /** 検索ツールを構築(Gateway の perplexitySearch を全プロバイダーで統一使用) */
5
4
  function buildSearchTools() {
6
5
  return { perplexity_search: gateway.tools.perplexitySearch() };
7
6
  }
8
- /** ツール結果から検索スニペットを抽出 */
9
- function extractSearchResults(steps) {
7
+ /** AI SDK の Source 型からプロジェクトの Source 型に変換 */
8
+ function convertAISdkSources(sdkSources) {
9
+ return sdkSources
10
+ .filter((s) => s.sourceType === 'url')
11
+ .map((s) => ({ title: s.title, url: s.url }));
12
+ }
13
+ /** ツール結果からソース情報を抽出(perplexitySearchツール経由のモデル用) */
14
+ function extractSourcesFromToolResults(steps) {
15
+ const sources = [];
10
16
  for (const step of steps) {
11
17
  const toolResults = step.toolResults;
12
18
  if (!toolResults)
13
19
  continue;
14
20
  for (const tr of toolResults) {
15
21
  if (tr.output && Array.isArray(tr.output.results)) {
16
- const formatted = tr.output.results
17
- .map((r) => {
18
- const parts = [];
19
- if (r.title)
20
- parts.push(`**${r.title}**`);
21
- if (r.url)
22
- parts.push(r.url);
23
- if (r.snippet)
24
- parts.push(r.snippet);
25
- return parts.join('\n');
26
- })
27
- .filter(Boolean)
28
- .join('\n\n---\n\n');
29
- if (formatted)
30
- return formatted;
22
+ for (const r of tr.output.results) {
23
+ if (r.url || r.title) {
24
+ sources.push({ title: r.title, url: r.url, snippet: r.snippet });
25
+ }
26
+ }
31
27
  }
32
28
  }
33
29
  }
34
- return null;
30
+ return sources;
31
+ }
32
+ /**
33
+ * generateText 結果からソース情報を統合抽出
34
+ * - result.sources: AI SDK標準フィールド(Perplexity等のネイティブ検索プロバイダーが使用)
35
+ * - steps[].toolResults: perplexitySearchツール経由のモデル(Gemini, Claude, GPT等)が使用
36
+ */
37
+ function collectSources(sdkSources, steps) {
38
+ const fromSdk = convertAISdkSources(sdkSources);
39
+ const fromTools = extractSourcesFromToolResults(steps);
40
+ // 重複排除(URL基準)
41
+ const seen = new Set();
42
+ const merged = [];
43
+ for (const s of [...fromSdk, ...fromTools]) {
44
+ const key = s.url ?? s.title ?? '';
45
+ if (!seen.has(key)) {
46
+ seen.add(key);
47
+ merged.push(s);
48
+ }
49
+ }
50
+ return merged;
51
+ }
52
+ /** ツール結果から検索スニペットをフォーマット済み文字列として抽出 */
53
+ function extractSearchResults(steps) {
54
+ const sources = extractSourcesFromToolResults(steps);
55
+ if (sources.length === 0)
56
+ return null;
57
+ const formatted = sources
58
+ .map((r) => {
59
+ const parts = [];
60
+ if (r.title)
61
+ parts.push(`**${r.title}**`);
62
+ if (r.url)
63
+ parts.push(r.url);
64
+ if (r.snippet)
65
+ parts.push(r.snippet);
66
+ return parts.join('\n');
67
+ })
68
+ .filter(Boolean)
69
+ .join('\n\n---\n\n');
70
+ return formatted || null;
35
71
  }
36
72
  /** テキスト生成してMCPレスポンスを返す */
37
73
  export async function generate(options) {
38
- const modelDef = getModel(options.modelId);
39
74
  const model = resolveModel(options.modelId);
40
- const maxTokens = options.maxTokens ?? modelDef.maxOutputTokens;
41
75
  const startTime = Date.now();
42
76
  try {
43
77
  const tools = options.useSearch ? buildSearchTools() : undefined;
@@ -45,12 +79,14 @@ export async function generate(options) {
45
79
  model,
46
80
  system: options.system,
47
81
  prompt: options.prompt,
48
- maxOutputTokens: maxTokens,
82
+ ...(options.maxTokens ? { maxOutputTokens: options.maxTokens } : {}),
49
83
  tools,
50
84
  // ツール使用を強制し、モデルが検索をスキップするのを防ぐ
51
85
  ...(tools ? { toolChoice: 'required' } : {}),
52
86
  });
53
87
  let text = result.text;
88
+ // ソース情報を統合抽出(AI SDK標準フィールド + ツール結果)
89
+ const sources = collectSources(result.sources ?? [], result.steps ?? []);
54
90
  // provider-executed tool(perplexitySearch)では、Gateway が検索を実行し
55
91
  // ツール結果を返すが、モデルがテキスト生成せずに終了する(finishReason=tool-calls)
56
92
  // その場合、検索結果をプロンプトに埋め込んで再度テキスト生成を行う
@@ -63,7 +99,7 @@ export async function generate(options) {
63
99
  'You are a helpful assistant. Summarize the search results accurately and concisely.',
64
100
  prompt: `Based on the following search results, answer the user's question: "${options.prompt}"\n\n` +
65
101
  `Search results:\n${searchResults}`,
66
- maxOutputTokens: maxTokens,
102
+ ...(options.maxTokens ? { maxOutputTokens: options.maxTokens } : {}),
67
103
  });
68
104
  text = followUp.text;
69
105
  }
@@ -74,6 +110,7 @@ export async function generate(options) {
74
110
  return {
75
111
  response: { content: [{ type: 'text', text }] },
76
112
  durationMs,
113
+ ...(sources.length > 0 ? { sources } : {}),
77
114
  };
78
115
  }
79
116
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/lib/gateway.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ const models = [
14
14
  },
15
15
  maxOutputTokens: 128000,
16
16
  releasedAt: '2025-12-11',
17
- note: 'フラッグシップ、askデフォルト',
17
+ note: 'OpenAI最上位、askデフォルト',
18
18
  },
19
19
  {
20
20
  id: 'openai/gpt-5.2-codex',
@@ -44,7 +44,7 @@ const models = [
44
44
  },
45
45
  maxOutputTokens: 128000,
46
46
  releasedAt: '2025-08-07',
47
- note: 'バランス型',
47
+ note: '軽量汎用、推論・検索・コード対応',
48
48
  },
49
49
  {
50
50
  id: 'openai/gpt-5-nano',
@@ -55,7 +55,7 @@ const models = [
55
55
  pricing: { input: 0.05, cachedInput: 0.0125, output: 0.4 },
56
56
  maxOutputTokens: 128000,
57
57
  releasedAt: '2025-08-07',
58
- note: '最安',
58
+ note: '最軽量、生成専用',
59
59
  },
60
60
  {
61
61
  id: 'openai/gpt-oss-120b',
@@ -83,7 +83,7 @@ const models = [
83
83
  },
84
84
  maxOutputTokens: 128000,
85
85
  releasedAt: '2026-02-05',
86
- note: '最高性能',
86
+ note: 'Anthropic最上位、1Mコンテキスト',
87
87
  },
88
88
  {
89
89
  id: 'anthropic/claude-sonnet-4.6',
@@ -99,7 +99,7 @@ const models = [
99
99
  },
100
100
  maxOutputTokens: 128000,
101
101
  releasedAt: '2026-02-17',
102
- note: 'バランス型',
102
+ note: '中位汎用、1Mコンテキスト',
103
103
  },
104
104
  {
105
105
  id: 'anthropic/claude-haiku-4.5',
@@ -115,7 +115,7 @@ const models = [
115
115
  },
116
116
  maxOutputTokens: 64000,
117
117
  releasedAt: '2025-10-15',
118
- note: '高速',
118
+ note: '低レイテンシ軽量',
119
119
  },
120
120
  // --- Google ---
121
121
  {
@@ -132,7 +132,7 @@ const models = [
132
132
  },
133
133
  maxOutputTokens: 8192,
134
134
  releasedAt: '2025-12-17',
135
- note: 'コスパ最強',
135
+ note: 'Google Search grounding対応、1Mコンテキスト、searchデフォルト',
136
136
  },
137
137
  {
138
138
  id: 'google/gemini-3.1-pro-preview',
@@ -148,7 +148,7 @@ const models = [
148
148
  },
149
149
  maxOutputTokens: 65536,
150
150
  releasedAt: '2026-02-19',
151
- note: '高性能、Gemini 3 Proの後継',
151
+ note: 'Google上位、Gemini 3 Proの後継',
152
152
  },
153
153
  // --- Perplexity ---
154
154
  {
@@ -165,7 +165,7 @@ const models = [
165
165
  },
166
166
  maxOutputTokens: 16384,
167
167
  releasedAt: '2025-01-21',
168
- note: 'ネイティブ検索、searchデフォルト',
168
+ note: '検索ネイティブ、低レイテンシ',
169
169
  },
170
170
  {
171
171
  id: 'perplexity/sonar-pro',
@@ -1 +1 @@
1
- {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../src/lib/model-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../src/lib/model-registry.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare const askSchema: z.ZodObject<{
4
4
  question: z.ZodString;
5
5
  model: z.ZodDefault<z.ZodOptional<z.ZodString>>;
6
6
  context: z.ZodOptional<z.ZodString>;
7
- max_tokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
7
+ max_tokens: z.ZodOptional<z.ZodNumber>;
8
8
  }, z.core.$strip>;
9
9
  export declare function askHandler(args: z.infer<typeof askSchema>, _extra?: unknown): Promise<ToolResponse>;
10
10
  export declare const askTool: {
@@ -14,7 +14,7 @@ export declare const askTool: {
14
14
  question: z.ZodString;
15
15
  model: z.ZodDefault<z.ZodOptional<z.ZodString>>;
16
16
  context: z.ZodOptional<z.ZodString>;
17
- max_tokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
17
+ max_tokens: z.ZodOptional<z.ZodNumber>;
18
18
  };
19
19
  };
20
20
  //# sourceMappingURL=ask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../src/tools/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,eAAO,MAAM,SAAS;;;;;iBAyBpB,CAAC;AAEH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,EAC/B,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAmBvB;AAED,eAAO,MAAM,OAAO;;;;;;;;;CAKnB,CAAC"}
1
+ {"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../src/tools/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,eAAO,MAAM,SAAS;;;;;iBAwBpB,CAAC;AAEH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,EAC/B,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAmBvB;AAED,eAAO,MAAM,OAAO;;;;;;;;;CAKnB,CAAC"}
package/dist/tools/ask.js CHANGED
@@ -20,8 +20,7 @@ export const askSchema = z.object({
20
20
  .int()
21
21
  .positive()
22
22
  .optional()
23
- .default(4000)
24
- .describe('Max output tokens (default: 4000). Guide: 500-1000 for short answers, 2000-4000 for explanations, 8000+ for detailed analysis. Reasoning models (e.g. sonar-reasoning-pro) use tokens internally for thinking, so set 2x-3x higher than expected output length'),
23
+ .describe('Max output tokens. If set, output is hard-truncated at this limit (may cut off mid-response). Omit to let the model decide output length naturally. Only set when you need strict cost control. Reasoning models use tokens internally, so set 2x-3x higher than expected visible output'),
25
24
  });
26
25
  export async function askHandler(args, _extra) {
27
26
  const modelId = args.model;
@@ -1 +1 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/tools/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,iFAAiF,CAAC;IAC9F,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,gBAAgB,CAAC;SACzB,QAAQ,CACP,2FAA2F,CAC5F;IACH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;IACzF,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,gQAAgQ,CACjQ;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAA+B,EAC/B,MAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAe,CAAC;IAErC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,OAAO,EAAE,EAAE,CAAC;YAC9D,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEpF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;QAC5B,OAAO,EAAE,OAAkB;QAC3B,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,UAAU;KAC3B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,KAAK;IACX,WAAW,EACT,sZAAsZ;IACxZ,YAAY,EAAE,SAAS,CAAC,KAAK;CAC9B,CAAC"}
1
+ {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/tools/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,iFAAiF,CAAC;IAC9F,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,gBAAgB,CAAC;SACzB,QAAQ,CACP,2FAA2F,CAC5F;IACH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;IACzF,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,0RAA0R,CAC3R;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAA+B,EAC/B,MAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAe,CAAC;IAErC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,OAAO,EAAE,EAAE,CAAC;YAC9D,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEpF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;QAC5B,OAAO,EAAE,OAAkB;QAC3B,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,UAAU;KAC3B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,KAAK;IACX,WAAW,EACT,sZAAsZ;IACxZ,YAAY,EAAE,SAAS,CAAC,KAAK;CAC9B,CAAC"}
@@ -11,6 +11,7 @@ export declare const researchSchema: z.ZodObject<{
11
11
  synthesis_model: z.ZodOptional<z.ZodString>;
12
12
  max_tokens: z.ZodOptional<z.ZodNumber>;
13
13
  synthesis_max_tokens: z.ZodOptional<z.ZodNumber>;
14
+ include_sources: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
14
15
  }, z.core.$strip>;
15
16
  export declare function researchHandler(args: z.infer<typeof researchSchema>, _extra?: unknown): Promise<ToolResponse>;
16
17
  export declare const researchTool: {
@@ -27,6 +28,7 @@ export declare const researchTool: {
27
28
  synthesis_model: z.ZodOptional<z.ZodString>;
28
29
  max_tokens: z.ZodOptional<z.ZodNumber>;
29
30
  synthesis_max_tokens: z.ZodOptional<z.ZodNumber>;
31
+ include_sources: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
30
32
  };
31
33
  };
32
34
  //# sourceMappingURL=research.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"research.d.ts","sourceRoot":"","sources":["../../src/tools/research.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiB/D,eAAO,MAAM,cAAc;;;;;;;;;;;iBA+CzB,CAAC;AAEH,wBAAsB,eAAe,CACnC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,EACpC,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAqHvB;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAKxB,CAAC"}
1
+ {"version":3,"file":"research.d.ts","sourceRoot":"","sources":["../../src/tools/research.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkB/D,eAAO,MAAM,cAAc;;;;;;;;;;;;iBAsDzB,CAAC;AAEH,wBAAsB,eAAe,CACnC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,EACpC,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAkIvB;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;CAKxB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { generate, generateParallel } from '../lib/gateway.js';
3
3
  import { isValidModelId, getAllModelIds, getSearchCapableModels, getModel, } from '../lib/model-registry.js';
4
+ import { formatSources } from './search.js';
4
5
  // modeごとのデフォルトモデル
5
6
  const DEFAULT_SEARCH_MODELS = [
6
7
  'perplexity/sonar',
@@ -43,19 +44,24 @@ export const researchSchema = z.object({
43
44
  .int()
44
45
  .positive()
45
46
  .optional()
46
- .describe('Max output tokens per model in query phase (default: search=2000, ask=4000). Total fed to synthesis = models × max_tokens. Reasoning models use tokens for internal thinking, so their visible output may be shorter'),
47
+ .describe('Max output tokens per model in query phase. If set, output is hard-truncated at this limit (may cut off mid-response). Omit to let models decide output length naturally. Only set when you need strict cost control. Reasoning models use tokens internally, so set 2x-3x higher than expected visible output'),
47
48
  synthesis_max_tokens: z
48
49
  .number()
49
50
  .int()
50
51
  .positive()
51
52
  .optional()
52
- .describe('Max output tokens for synthesis. Defaults to max_tokens × multiplier (search: ×3, ask: ×2)'),
53
+ .describe('Max output tokens for synthesis. Omit to let the model decide naturally. Only set when you need strict cost control'),
54
+ include_sources: z
55
+ .boolean()
56
+ .optional()
57
+ .default(false)
58
+ .describe('Include source URLs in the response. When true, appends source links from search results. Only effective in search mode'),
53
59
  });
54
60
  export async function researchHandler(args, _extra) {
55
61
  const useSearch = args.mode === 'search';
56
62
  // モード別デフォルト解決
57
63
  const modelIds = args.models ?? (useSearch ? DEFAULT_SEARCH_MODELS : DEFAULT_ASK_MODELS);
58
- const maxTokens = args.max_tokens ?? (useSearch ? 2000 : 4000);
64
+ const maxTokens = args.max_tokens;
59
65
  // モデルIDバリデーション
60
66
  const invalidModels = modelIds.filter((m) => !isValidModelId(m));
61
67
  if (invalidModels.length > 0) {
@@ -105,7 +111,8 @@ export async function researchHandler(args, _extra) {
105
111
  const modelDef = getModel(r.modelId);
106
112
  const latency = `${(r.result.durationMs / 1000).toFixed(1)}s`;
107
113
  const cost = `$${modelDef.pricing.input}/$${modelDef.pricing.output} per 1M tokens`;
108
- return `## ${r.modelId}\n**Latency**: ${latency} | **Pricing**: ${cost}\n\n${text}`;
114
+ const sourcesSection = args.include_sources && r.result.sources?.length ? formatSources(r.result.sources) : '';
115
+ return `## ${r.modelId}\n**Latency**: ${latency} | **Pricing**: ${cost}\n\n${text}${sourcesSection}`;
109
116
  })
110
117
  .join('\n\n---\n\n');
111
118
  const header = `# Multi-Model ${args.mode === 'search' ? 'Search' : 'Q&A'}\n\n` +
@@ -128,9 +135,8 @@ export async function researchHandler(args, _extra) {
128
135
  isError: true,
129
136
  };
130
137
  }
131
- // synthesis倍率: searchモード×3、askモード×2
132
- const synthesisMult = useSearch ? 3 : 2;
133
- const synthesisMaxTokens = args.synthesis_max_tokens ?? maxTokens * synthesisMult;
138
+ // synthesis_max_tokens: 明示指定があればそれを使用、なければ未指定(モデルに任せる)
139
+ const synthesisMaxTokens = args.synthesis_max_tokens;
134
140
  const synthesisPrompt = `The following are responses about "${args.query}" from ${modelIds.length} different AI models:\n\n` +
135
141
  `${sourceTexts}\n\n` +
136
142
  `---\n\n` +
@@ -147,6 +153,17 @@ export async function researchHandler(args, _extra) {
147
153
  'into accurate, comprehensive reports.',
148
154
  maxTokens: synthesisMaxTokens,
149
155
  });
156
+ // 統合レスポンスにソース情報を付加
157
+ if (args.include_sources) {
158
+ const allSources = results.flatMap((r) => r.result.sources ?? []);
159
+ if (allSources.length > 0) {
160
+ const text = synthesisResult.response.content[0]?.text ?? '';
161
+ const sourcesSection = formatSources(allSources);
162
+ return {
163
+ content: [{ type: 'text', text: text + sourcesSection }],
164
+ };
165
+ }
166
+ }
150
167
  return synthesisResult.response;
151
168
  }
152
169
  export const researchTool = {
@@ -1 +1 @@
1
- {"version":3,"file":"research.js","sourceRoot":"","sources":["../../src/tools/research.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"research.js","sourceRoot":"","sources":["../../src/tools/research.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
1
  import { z } from 'zod';
2
- import type { ToolResponse } from '../types/index.js';
2
+ import type { Source, ToolResponse } from '../types/index.js';
3
3
  export declare const searchSchema: z.ZodObject<{
4
4
  query: z.ZodString;
5
5
  model: z.ZodDefault<z.ZodOptional<z.ZodString>>;
6
- max_tokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
6
+ max_tokens: z.ZodOptional<z.ZodNumber>;
7
+ include_sources: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
8
  }, z.core.$strip>;
9
+ /** ソース情報をMarkdown形式にフォーマット */
10
+ export declare function formatSources(sources: Source[]): string;
8
11
  export declare function searchHandler(args: z.infer<typeof searchSchema>, _extra?: unknown): Promise<ToolResponse>;
9
12
  export declare const searchTool: {
10
13
  name: string;
@@ -12,7 +15,8 @@ export declare const searchTool: {
12
15
  paramsSchema: {
13
16
  query: z.ZodString;
14
17
  model: z.ZodDefault<z.ZodOptional<z.ZodString>>;
15
- max_tokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
18
+ max_tokens: z.ZodOptional<z.ZodNumber>;
19
+ include_sources: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
16
20
  };
17
21
  };
18
22
  //# sourceMappingURL=search.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,eAAO,MAAM,YAAY;;;;iBAuBvB,CAAC;AAEH,wBAAsB,aAAa,CACjC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAClC,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAuCvB;AAED,eAAO,MAAM,UAAU;;;;;;;;CAKtB,CAAC"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAW,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEvE,eAAO,MAAM,YAAY;;;;;iBA6BvB,CAAC;AAEH,8BAA8B;AAC9B,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAavD;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EAClC,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,CAAC,CAgDvB;AAED,eAAO,MAAM,UAAU;;;;;;;;;CAKtB,CAAC"}
@@ -9,16 +9,34 @@ export const searchSchema = z.object({
9
9
  model: z
10
10
  .string()
11
11
  .optional()
12
- .default('perplexity/sonar')
12
+ .default('google/gemini-3-flash')
13
13
  .describe("Search-capable model, e.g. 'perplexity/sonar-pro', 'google/gemini-3-flash'. Must support web search"),
14
14
  max_tokens: z
15
15
  .number()
16
16
  .int()
17
17
  .positive()
18
18
  .optional()
19
- .default(2000)
20
- .describe('Max output tokens (default: 2000). 1000-2000 for quick lookups, 4000+ for comprehensive summaries. Reasoning models consume tokens internally, so set higher when using sonar-reasoning-pro'),
19
+ .describe('Max output tokens. If set, output is hard-truncated at this limit (may cut off mid-response). Omit to let the model decide output length naturally. Only set when you need strict cost control. Reasoning models consume tokens internally, so set 2x-3x higher than expected visible output'),
20
+ include_sources: z
21
+ .boolean()
22
+ .optional()
23
+ .default(false)
24
+ .describe('Include source URLs in the response. When true, appends a Sources section with links at the end'),
21
25
  });
26
+ /** ソース情報をMarkdown形式にフォーマット */
27
+ export function formatSources(sources) {
28
+ const uniqueSources = sources.filter((s, i, arr) => s.url && arr.findIndex((x) => x.url === s.url) === i);
29
+ if (uniqueSources.length === 0)
30
+ return '';
31
+ const lines = uniqueSources.map((s) => {
32
+ if (s.title && s.url)
33
+ return `- [${s.title}](${s.url})`;
34
+ if (s.url)
35
+ return `- ${s.url}`;
36
+ return `- ${s.title}`;
37
+ });
38
+ return `\n\n---\n\n**Sources**\n${lines.join('\n')}`;
39
+ }
22
40
  export async function searchHandler(args, _extra) {
23
41
  const modelId = args.model;
24
42
  if (!isValidModelId(modelId)) {
@@ -51,11 +69,19 @@ export async function searchHandler(args, _extra) {
51
69
  maxTokens: args.max_tokens,
52
70
  useSearch: true,
53
71
  });
72
+ // ソース情報を付加
73
+ if (args.include_sources && result.sources?.length) {
74
+ const text = result.response.content[0]?.text ?? '';
75
+ const sourcesSection = formatSources(result.sources);
76
+ return {
77
+ content: [{ type: 'text', text: text + sourcesSection }],
78
+ };
79
+ }
54
80
  return result.response;
55
81
  }
56
82
  export const searchTool = {
57
83
  name: 'search',
58
- description: 'Quick web search with a single model. For multi-source research, use the research tool instead. Default: perplexity/sonar (search-native, $1/$1, no input inflation). For higher quality: perplexity/sonar-pro. Also supports openai/anthropic/google native search.',
84
+ description: 'Quick web search with a single model. For multi-source research, use the research tool instead. Default: google/gemini-3-flash (Google Search grounding, $0.50/$3.00, no input inflation). For higher quality: perplexity/sonar-pro. Also supports openai/anthropic/perplexity native search.',
59
85
  paramsSchema: searchSchema.shape,
60
86
  };
61
87
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,4JAA4J,CAC7J;IACH,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,kBAAkB,CAAC;SAC3B,QAAQ,CACP,qGAAqG,CACtG;IACH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,6LAA6L,CAC9L;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAkC,EAClC,MAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAe,CAAC;IAErC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,OAAO,EAAE,EAAE,CAAC;YAC9D,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,eAAe;IACf,MAAM,YAAY,GAAG,sBAAsB,EAAE,CAAC;IAC9C,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACjE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,SAAS,OAAO,uDAAuD,SAAS,EAAE;iBACzF;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GACV,yFAAyF;QACzF,qCAAqC,CAAC;IAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;QAC5B,OAAO,EAAE,OAAkB;QAC3B,MAAM,EAAE,IAAI,CAAC,KAAK;QAClB,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,UAAU;QAC1B,SAAS,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,QAAQ;IACd,WAAW,EACT,sQAAsQ;IACxQ,YAAY,EAAE,YAAY,CAAC,KAAK;CACjC,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,11 @@ export interface ModelDefinition {
30
30
  releasedAt?: string;
31
31
  note?: string;
32
32
  }
33
+ export interface Source {
34
+ title?: string;
35
+ url?: string;
36
+ snippet?: string;
37
+ }
33
38
  export interface ToolResponse {
34
39
  [key: string]: unknown;
35
40
  content: Array<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,YAAY,CAAC;AAG1E,MAAM,MAAM,OAAO,GAEf,gBAAgB,GAChB,sBAAsB,GACtB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GAErB,2BAA2B,GAC3B,6BAA6B,GAC7B,4BAA4B,GAE5B,uBAAuB,GACvB,+BAA+B,GAE/B,kBAAkB,GAClB,sBAAsB,GACtB,gCAAgC,GAChC,gCAAgC,CAAC;AAGrC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAGD,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAGlF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,GAAG,aAAa,GAAG,UAAU,CAAC;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,iBAAiB,CAAC;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,YAAY,CAAC;AAG1E,MAAM,MAAM,OAAO,GAEf,gBAAgB,GAChB,sBAAsB,GACtB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GAErB,2BAA2B,GAC3B,6BAA6B,GAC7B,4BAA4B,GAE5B,uBAAuB,GACvB,+BAA+B,GAE/B,kBAAkB,GAClB,sBAAsB,GACtB,gCAAgC,GAChC,gCAAgC,CAAC;AAGrC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAGD,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAGlF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,GAAG,aAAa,GAAG,UAAU,CAAC;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,iBAAiB,CAAC;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ayatec/ai-gateway-mcp-server",
3
- "version": "0.2.1",
3
+ "version": "0.4.0",
4
4
  "description": "MCP server for multi-model AI access via Vercel AI Gateway",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",