@tpmjs/registry-search
Search the TPMJS tool registry to find AI SDK tools. Returns tool metadata including toolId for use with registryExecuteTool.
Test @tpmjs/registry-search (registrySearchTool) with AI-powered execution
0/2000 characters
Install this tool and use it with the AI SDK
npm install @tpmjs/registry-searchpnpm add @tpmjs/registry-searchyarn add @tpmjs/registry-searchbun add @tpmjs/registry-searchdeno add npm:@tpmjs/registry-searchimport { registrySearchTool } from '@tpmjs/registry-search';import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { registrySearchTool } from '@tpmjs/registry-search';
const result = await generateText({
model: openai('gpt-4o'),
tools: { registrySearchTool },
prompt: 'Your prompt here...',
});
console.log(result.text);How AI agents can use this tool
Use when you need to find a tool for a specific task. Search returns toolIds that can be executed with registryExecuteTool.
(query: string, limit?: number) => Promise<unknown>Available configuration options
querystringSearch query (keywords, tool names, descriptions)
categorystringFilter by category (optional)
limitnumberMaximum results (1-20, default 5)
Schema extracted: 3/1/2026, 4:25:46 AM
Search the TPMJS tool registry from any AI SDK agent. Discover thousands of tools dynamically.
npm install @tpmjs/registry-search # or pnpm add @tpmjs/registry-search
import { streamText } from 'ai'; import { anthropic } from '@ai-sdk/anthropic'; import { registrySearchTool } from '@tpmjs/registry-search'; import { registryExecuteTool } from '@tpmjs/registry-execute'; const result = streamText({ model: anthropic('claude-sonnet-4-20250514'), tools: { registrySearch: registrySearchTool, registryExecute: registryExecuteTool, }, system: `You have access to the TPMJS tool registry. Use registrySearch to find tools, then registryExecute to run them.`, prompt: 'Search for web scraping tools and scrape https://example.com', }); // The agent can now: // 1. Search for tools: registrySearch({ query: "web scraping" }) // 2. Execute found tools: registryExecute({ toolId: "@firecrawl/ai-sdk::scrapeTool", params: { url: "..." } })
Search the TPMJS registry to find AI SDK tools.
| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Search query (keywords, tool names, descriptions) |
category | string | No | Filter by category |
limit | number | No | Max results (1-20, default 5) |
web-scrapingdata-processingfile-operationscommunicationdatabaseapi-integrationimage-processingtext-analysisautomationai-mlsecuritymonitoring{ "query": "web scraping", "matchCount": 3, "tools": [ { "toolId": "@firecrawl/ai-sdk::scrapeTool", "name": "scrapeTool", "package": "@firecrawl/ai-sdk", "description": "Scrape any website into clean markdown", "category": "web-scraping", "requiredEnvVars": ["FIRECRAWL_API_KEY"], "healthStatus": "HEALTHY", "qualityScore": 0.9 } ] }
requiredEnvVarsThe requiredEnvVars field tells you which API keys a tool needs to function. When executing a tool with @tpmjs/registry-execute, pass these keys in the env parameter:
// 1. Search finds a tool that needs FIRECRAWL_API_KEY const searchResult = await registrySearchTool.execute({ query: 'web scraping' }); // searchResult.tools[0].requiredEnvVars = ["FIRECRAWL_API_KEY"] // 2. Execute the tool with the required key const result = await registryExecuteTool.execute({ toolId: '@firecrawl/ai-sdk::scrapeTool', params: { url: 'https://example.com' }, env: { FIRECRAWL_API_KEY: 'fc-xxx' } // Pass required keys here });
Tools with an empty requiredEnvVars array don't need any API keys.
| Variable | Default | Description |
|---|---|---|
TPMJS_API_URL | https://tpmjs.com | Base URL for the registry API |
To use your own TPMJS registry:
export TPMJS_API_URL=https://registry.mycompany.com
MIT
Downloads/month
648
GitHub Stars
0
Quality Score