Tool Search Proxy MCP
An MCP server that allows models to search and call tools from a large catalog without loading all definitions. It exposes five tools: search_tools, describe_tool, call_read_tool, call_read_tools, and call_write_tool. This reduces token usage by 97% on 500 tools and validates input schemas before upstream calls.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Search for tools matching a natural language query
- Describe tool input schemas and capabilities
- Call read-only tools in parallel batches
- Call write tools with approval checks
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0
{
"transport": "stdio",
"identifier": "ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0",
"registryType": "oci",
"environmentVariables": [
{
"name": "MCP_TRANSPORT",
"value": "stdio",
"isRequired": true,
"description": "stdio: MCP on standard input and output. Upstream requests then carry no token, so this suits only an upstream that needs no authentication"
},
{
"name": "TOOLSEARCH_UPSTREAM",
"isRequired": true,
"description": "Streamable HTTP URL of an MCP server that needs no authentication"
},
{
"name": "TOOLSEARCH_EMBEDDER",
"choices": [
"builtin",
"none"
],
"default": "none",
"description": "builtin for semantic search, which needs the model in a volume at /model (see docs/deploy.md); none for lexical search only"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"tool-search-proxy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT=<YOUR_MCP_TRANSPORT>",
"-e",
"TOOLSEARCH_UPSTREAM=<YOUR_TOOLSEARCH_UPSTREAM>",
"-e",
"TOOLSEARCH_EMBEDDER=<YOUR_TOOLSEARCH_EMBEDDER>",
"ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0"
],
"env": {
"MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>",
"TOOLSEARCH_UPSTREAM": "<YOUR_TOOLSEARCH_UPSTREAM>",
"TOOLSEARCH_EMBEDDER": "<YOUR_TOOLSEARCH_EMBEDDER>"
}
}
}
}Cline
{
"mcpServers": {
"tool-search-proxy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT=<YOUR_MCP_TRANSPORT>",
"-e",
"TOOLSEARCH_UPSTREAM=<YOUR_TOOLSEARCH_UPSTREAM>",
"-e",
"TOOLSEARCH_EMBEDDER=<YOUR_TOOLSEARCH_EMBEDDER>",
"ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0"
],
"env": {
"MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>",
"TOOLSEARCH_UPSTREAM": "<YOUR_TOOLSEARCH_UPSTREAM>",
"TOOLSEARCH_EMBEDDER": "<YOUR_TOOLSEARCH_EMBEDDER>"
}
}
}
}VS Code
{
"servers": {
"tool-search-proxy-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT=<YOUR_MCP_TRANSPORT>",
"-e",
"TOOLSEARCH_UPSTREAM=<YOUR_TOOLSEARCH_UPSTREAM>",
"-e",
"TOOLSEARCH_EMBEDDER=<YOUR_TOOLSEARCH_EMBEDDER>",
"ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0"
],
"env": {
"MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>",
"TOOLSEARCH_UPSTREAM": "<YOUR_TOOLSEARCH_UPSTREAM>",
"TOOLSEARCH_EMBEDDER": "<YOUR_TOOLSEARCH_EMBEDDER>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"tool-search-proxy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT=<YOUR_MCP_TRANSPORT>",
"-e",
"TOOLSEARCH_UPSTREAM=<YOUR_TOOLSEARCH_UPSTREAM>",
"-e",
"TOOLSEARCH_EMBEDDER=<YOUR_TOOLSEARCH_EMBEDDER>",
"ghcr.io/datolabs-io/mcp-toolsearch-proxy:0.9.0"
],
"env": {
"MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>",
"TOOLSEARCH_UPSTREAM": "<YOUR_TOOLSEARCH_UPSTREAM>",
"TOOLSEARCH_EMBEDDER": "<YOUR_TOOLSEARCH_EMBEDDER>"
}
}
}
}Let your agent find its tools
Find servers like Tool Search Proxy MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.