From 36f1501f7c86b068636c131c3064fa835beb69b0 Mon Sep 17 00:00:00 2001 From: Alejandro Ponce Date: Fri, 15 May 2026 16:59:20 +0300 Subject: [PATCH] chore: remove mcp-optimizer registry entry Deprecated in #1167; removing the entry now. Co-Authored-By: Claude Opus 4.7 (1M context) Signed-off-by: Alejandro Ponce --- .../toolhive/servers/mcp-optimizer/icon.svg | 33 ---- .../servers/mcp-optimizer/server.json | 160 ------------------ 2 files changed, 193 deletions(-) delete mode 100644 registries/toolhive/servers/mcp-optimizer/icon.svg delete mode 100644 registries/toolhive/servers/mcp-optimizer/server.json diff --git a/registries/toolhive/servers/mcp-optimizer/icon.svg b/registries/toolhive/servers/mcp-optimizer/icon.svg deleted file mode 100644 index 996943ba8..000000000 --- a/registries/toolhive/servers/mcp-optimizer/icon.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/registries/toolhive/servers/mcp-optimizer/server.json b/registries/toolhive/servers/mcp-optimizer/server.json deleted file mode 100644 index 91f8a9b17..000000000 --- a/registries/toolhive/servers/mcp-optimizer/server.json +++ /dev/null @@ -1,160 +0,0 @@ -{ - "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json", - "_meta": { - "io.modelcontextprotocol.registry/publisher-provided": { - "io.github.stacklok": { - "ghcr.io/stackloklabs/mcp-optimizer:0.3.0": { - "metadata": { - "last_updated": "2026-04-09T11:08:37Z", - "stars": 10 - }, - "overview": "## MCP Optimizer\n\nMCP Optimizer is an intelligent intermediary MCP server that acts as a unified gateway in front of all ToolHive-managed MCP servers. Instead of configuring your AI client with every individual MCP server, you point it at MCP Optimizer and it handles semantic tool discovery and routing automatically. It exposes a single MCP endpoint that aggregates tools from all running servers, intelligently routing each LLM request to the most appropriate tool regardless of which underlying server provides it.\n\nKey capabilities include group-based filtering to scope tool discovery to specific ToolHive groups (e.g. production vs staging environments), connection resilience with configurable exponential backoff retry logic, and support for both Docker and Kubernetes runtime modes. MCP Optimizer is particularly useful for managing large numbers of MCP tools, addressing the common problem of LLMs being overwhelmed by too many available tools.", - "permissions": { - "network": { - "outbound": {} - } - }, - "provenance": { - "cert_issuer": "https://token.actions.githubusercontent.com", - "repository_uri": "https://github.com/StacklokLabs/mcp-optimizer", - "runner_environment": "github-hosted", - "signer_identity": "/.github/workflows/release.yml", - "sigstore_url": "tuf-repo-cdn.sigstore.dev" - }, - "status": "Deprecated", - "tags": [ - "mcp", - "proxy", - "gateway", - "intelligent" - ], - "tier": "Official", - "tool_definitions": [ - { - "annotations": {}, - "description": "\nExecute a specific tool with the provided parameters.\n\nUse this function to:\n- Run a tool after identifying it with find_tool()\n- Execute operations that require specific MCP server functionality\n- Perform actions that go beyond your built-in capabilities\n\nArgs:\n server_name: The name of the MCP server that provides the tool\n (obtain this from find_tool() results - it's the mcp_server_name field)\n tool_name: The name of the tool to execute\n (obtain this from find_tool() results - it's the tool's name field)\n parameters: Dictionary of arguments required by the tool\n (structure must match the tool's schema from find_tool())\n\nReturns:\n CallToolResult: The output from the tool execution, which may include:\n - Success/failure status\n - Result data or content\n - Error messages if execution failed\n\nImportant: Always use find_tool() first to get the correct server_name and tool_name\n and parameter schema before calling this function.\n", - "inputSchema": { - "properties": { - "parameters": { - "additionalProperties": true, - "title": "Parameters", - "type": "object" - }, - "server_name": { - "title": "Server Name", - "type": "string" - }, - "tool_name": { - "title": "Tool Name", - "type": "string" - } - }, - "required": [ - "server_name", - "tool_name", - "parameters" - ], - "type": "object" - }, - "name": "call_tool" - }, - { - "annotations": {}, - "description": "\nFind and return tools from RUNNING servers that can help accomplish the user's request.\n\nThis searches only currently running MCP servers. If no relevant tools are found,\nuse search_registry() to discover tools from servers available in the registry.\n\nUse this function when you need to:\n- Discover what tools are available for a specific task\n- Find the right tool(s) before attempting to solve a problem\n- Check if required functionality exists in the current environment\n\nArgs:\n tool_description: Description of the task or capability needed\n (e.g., \"web search\", \"analyze CSV file\", \"send an email\")\n tool_keywords: Space-separated keywords of the task or capability needed.\n These will be used for BM25 text search on available tools.\n (e.g. \"list issues github\", \"SQL query postgres\", \"Grafana requests slow\").\n\nReturns:\n dict: A dictionary containing:\n - tools: List of available tools matching the query, including:\n * Tool names and descriptions\n * Server names (in the mcp_server_name field)\n * Required parameters and schemas\n * Usage examples where applicable\n - token_metrics: Token efficiency metrics showing:\n * baseline_tokens: Total tokens for all running server tools\n * returned_tokens: Total tokens for returned/filtered tools\n * tokens_saved: Number of tokens saved by filtering\n * savings_percentage: Percentage of tokens saved (0-100)\n\nExample:\n1) User query: \"Find good restaurants in San Jose, California\"\nThis query requires web search. Call find_tool with tool_description=\"search the web\".\n\n2) User query: \"Get details of an issue in stacklok/toolhive github repository\"\nThis query requires fetching issue details from github. Call find_tool with\ntool_description=\"Get issue details from GitHub\".\n", - "inputSchema": { - "properties": { - "tool_description": { - "title": "Tool Description", - "type": "string" - }, - "tool_keywords": { - "title": "Tool Keywords", - "type": "string" - } - }, - "required": [ - "tool_description", - "tool_keywords" - ], - "type": "object" - }, - "name": "find_tool" - }, - { - "annotations": {}, - "description": "\nList all available tools across all MCP servers.\n\nUse this function when you need to:\n- See all tools available in the current environment\n- Browse the complete catalog of available tools\n- Get an overview of all capabilities without filtering\n\nReturns:\n list[ToolWithServer]: All available tools, including:\n - Tool names and descriptions\n - Server names (in the mcp_server_name field)\n - Required parameters and schemas\n - Usage examples where applicable\n", - "inputSchema": { - "properties": {}, - "required": [], - "type": "object" - }, - "name": "list_tools" - } - ], - "tools": [ - "call_tool", - "find_tool", - "list_tools" - ] - } - } - } - }, - "description": "MCP server that acts as an intelligent intermediary between AI clients and multiple MCP servers", - "icons": [ - { - "mimeType": "image/svg+xml", - "sizes": [ - "any" - ], - "src": "https://raw.githubusercontent.com/stacklok/toolhive-registry/main/registries/toolhive/servers/mcp-optimizer/icon.svg" - } - ], - "name": "io.github.stacklok/mcp-optimizer", - "packages": [ - { - "environmentVariables": [ - { - "description": "Comma-separated list of ToolHive group names to filter tool lookups (default: no filtering)", - "name": "ALLOWED_GROUPS" - }, - { - "description": "Number of tools to return from find_tool (default: 8)", - "name": "MAX_TOOLS_TO_RETURN" - }, - { - "description": "Distance threshold for tool similarity (default: 1.0)", - "name": "TOOL_DISTANCE_THRESHOLD" - }, - { - "description": "Maximum number of tokens to return from call_tool (default: no limit)", - "name": "MAX_TOOL_RESPONSE_TOKENS" - }, - { - "description": "Polling interval for running MCP servers (default: 60 seconds)", - "name": "WORKLOAD_POLLING_INTERVAL" - }, - { - "description": "Polling interval for ToolHive registry (default: 24 hours)", - "name": "REGISTRY_POLLING_INTERVAL" - }, - { - "description": "Runtime mode for MCP servers (docker or k8s, default: docker)", - "name": "RUNTIME_MODE" - } - ], - "identifier": "ghcr.io/stackloklabs/mcp-optimizer:0.3.0", - "registryType": "oci", - "transport": { - "type": "streamable-http", - "url": "http://localhost:9900" - } - } - ], - "repository": { - "source": "github", - "url": "https://github.com/StacklokLabs/mcp-optimizer" - }, - "title": "MCP Optimizer", - "version": "1.0.0" -}