MCPcopy
hub / github.com/codedogQBY/ReadAny / buildProviderModelsUrl

Function buildProviderModelsUrl

packages/core/src/utils/api.ts:313–339  ·  view source on GitHub ↗
(
  providerId: string,
  baseUrl?: string,
  apiKey?: string,
  exactRequestUrl = false,
)

Source from the content-addressed store, hash-verified

311}
312
313export function buildProviderModelsUrl(
314 providerId: string,
315 baseUrl?: string,
316 apiKey?: string,
317 exactRequestUrl = false,
318): string {
319 const rawBaseUrl = ensureUrlProtocol((baseUrl || getDefaultBaseUrl(providerId) || "").trim());
320 if (!rawBaseUrl) return "";
321
322 if (exactRequestUrl && providerSupportsExactRequestUrl(providerId)) {
323 return "";
324 }
325
326 switch (providerId) {
327 case "google": {
328 const resolvedBaseUrl = resolveProviderBaseUrl(providerId, baseUrl, exactRequestUrl);
329 const keyQuery = apiKey ? `?key=${encodeURIComponent(apiKey)}` : "";
330 return `${resolvedBaseUrl}/v1beta/models${keyQuery}`;
331 }
332 case "ollama":
333 return `${trimApiUrl(rawBaseUrl)}/api/tags`;
334 default: {
335 const resolvedBaseUrl = resolveProviderBaseUrl(providerId, baseUrl, exactRequestUrl);
336 return `${resolvedBaseUrl}/models`;
337 }
338 }
339}
340
341export function buildOpenAICompatibleUrl(
342 baseUrl?: string,

Callers 15

fetchOpenAIModelsFunction · 0.90
fetchAnthropicModelsFunction · 0.90
fetchGoogleModelsFunction · 0.90
fetchDeepSeekModelsFunction · 0.90
fetchOllamaModelsFunction · 0.90
fetchLMStudioModelsFunction · 0.90
api.test.tsFile · 0.90
fetchOpenAIModelsFunction · 0.90
fetchAnthropicModelsFunction · 0.90
fetchGoogleModelsFunction · 0.90
fetchDeepSeekModelsFunction · 0.90
fetchOllamaModelsFunction · 0.90

Calls 5

ensureUrlProtocolFunction · 0.85
getDefaultBaseUrlFunction · 0.85
resolveProviderBaseUrlFunction · 0.85
trimApiUrlFunction · 0.85

Tested by

no test coverage detected