@toolsdk.ai/registry 1.0.147 → 1.0.149

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
@@ -45,7 +45,12 @@
45
45
  - ➕ I want to **submit my MCP Server** → [Contribution Guide](#contribute-your-mcp-server)
46
46
 
47
47
  > [!IMPORTANT]
48
- > **Highlights**: Federated search across 4521+ servers & official registry One-line integration with `Vercel AI SDK` / `LangChain` • Sandbox + OAuth 2.1 built-in • Get featured on [ToolSDK.ai](https://toolsdk.ai)
48
+ > **Pro Tip**: If a server is marked as `validated: true`, you can use it instantly with **Vercel AI SDK**:
49
+ >
50
+ > ```ts
51
+ > const tool = await toolSDK.package('<packageName>', { ...env }).getAISDKTool('<toolKey>');
52
+ > ```
53
+ > **Want validation?** Ask AI: *"Analyze the `make build` target in the Makefile and the scripts it invokes, and determine how an MCP server gets marked as `validated: true`."*
49
54
 
50
55
  ## Getting Started
51
56
 
@@ -63,8 +68,7 @@ Start the registry immediately with default settings:
63
68
  docker compose up -d
64
69
  ```
65
70
 
66
- > [!TIP]
67
- > **Did this save you time?** Give us a [**Star on GitHub**](https://github.com/toolsdk-ai/toolsdk-mcp-registry) — it helps others discover this registry!
71
+ *Did this save you time? Give us a [**Star on GitHub**](https://github.com/toolsdk-ai/toolsdk-mcp-registry) — it helps others discover this registry!*
68
72
 
69
73
  **Configuration:**
70
74
  - Set `MCP_SANDBOX_PROVIDER=LOCAL` in `.env` file if you want to disable the sandbox (not recommended for production).
@@ -243,9 +247,7 @@ Template: `const tool = await toolSDK.package('<packageName>', { ...env }).getAI
243
247
  import { ToolSDKApiClient } from 'toolsdk/api';
244
248
 
245
249
  const toolSDK = new ToolSDKApiClient({ apiKey: process.env.TOOLSDK_AI_API_KEY });
246
-
247
250
  const searchMCP = await toolSDK.package('@toolsdk.ai/tavily-mcp', { TAVILY_API_KEY: process.env.TAVILY_API_KEY });
248
-
249
251
  const searchTool = await searchMCP.getAISDKTool('tavily-search');
250
252
 
251
253
  // const completion = await generateText({
@@ -6,7 +6,7 @@
6
6
  * 2. Callback: Exchange code for tokens + Notify caller
7
7
  * 3. Refresh: Refresh access token
8
8
  */
9
- import { getServerPort } from "../../shared/config/environment";
9
+ import { getRegistryBaseUrl } from "../../shared/config/environment";
10
10
  import { createErrorResponse, createResponse } from "../../shared/utils/response-util";
11
11
  import { repository } from "../package/package-handler";
12
12
  import { oauthSessionStore } from "./oauth-session";
@@ -15,10 +15,8 @@ import { buildAuthorizationUrl, discoverAuthServerMetadata, discoverProtectedRes
15
15
  * Get the Registry's OAuth callback URL
16
16
  */
17
17
  function getRegistryCallbackUrl() {
18
- const port = getServerPort();
19
- const host = process.env.REGISTRY_HOST || `localhost:${port}`;
20
- const protocol = process.env.REGISTRY_PROTOCOL || "http";
21
- return `${protocol}://${host}/api/v1/oauth/callback`;
18
+ const baseUrl = getRegistryBaseUrl();
19
+ return `${baseUrl}/api/v1/oauth/callback`;
22
20
  }
23
21
  /**
24
22
  * Get MCP Server URL from package configuration
@@ -16,4 +16,5 @@ export declare function getMeiliSearchConfig(): {
16
16
  apiKey: string | null;
17
17
  };
18
18
  export declare function getServerPort(): number;
19
+ export declare function getRegistryBaseUrl(): string;
19
20
  export declare function isSearchEnabled(): boolean;
@@ -41,6 +41,14 @@ export function getServerPort() {
41
41
  const port = process.env.PORT || process.env.MCP_SERVER_PORT;
42
42
  return port ? parseInt(port, 10) : 3003;
43
43
  }
44
+ export function getRegistryBaseUrl() {
45
+ const baseUrl = process.env.REGISTRY_BASE_URL;
46
+ if (baseUrl) {
47
+ return baseUrl.replace(/\/$/, "");
48
+ }
49
+ const port = getServerPort();
50
+ return `http://localhost:${port}`;
51
+ }
44
52
  export function isSearchEnabled() {
45
53
  return process.env.ENABLE_SEARCH === "true";
46
54
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolsdk.ai/registry",
3
- "version": "1.0.147",
3
+ "version": "1.0.149",
4
4
  "description": "An Open, Structured, and Standard Registry for MCP Servers and Packages.",
5
5
  "keywords": [
6
6
  "mcp",