voidfeed_semantic_search
Search and retrieve relevant VoidFeed content using semantic understanding, returning up to 500 results per query based on tier.
Instructions
Search VoidFeed content semantically. Returns relevant pieces matching your query. The Void tier returns up to 500 results; surface tier returns up to 5.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query | |
| types | No | Filter by content types. Default: all. | |
| limit | No | Max results. Surface: 5, The Void: 500. |
Implementation Reference
- index.js:96-113 (schema)Tool schema definition for voidfeed_semantic_search: accepts q (string, required), types (array of content types or 'all'), and limit (integer).
{ name: 'voidfeed_semantic_search', description: 'Search VoidFeed content semantically. Returns relevant pieces matching your query. The Void tier returns up to 500 results; surface tier returns up to 5.', inputSchema: { type: 'object', properties: { q: { type: 'string', description: 'Search query' }, types: { type: 'array', items: { type: 'string', enum: [...CONTENT_TYPES, 'all'] }, description: 'Filter by content types. Default: all.', }, limit: { type: 'integer', description: 'Max results. Surface: 5, The Void: 500.' }, }, required: ['q'], }, }, - index.js:199-204 (handler)Handler for voidfeed_semantic_search: builds query parameters (q, types joined as comma-separated string, limit) and calls GET /v1/tools/semantic-search via the vfGet helper.
case 'voidfeed_semantic_search': { const params = new URLSearchParams({ q: args.q }); if (args.types) params.set('types', args.types.join(',')); if (args.limit) params.set('limit', String(args.limit)); return vfGet(`/v1/tools/semantic-search?${params}`); } - index.js:256-256 (registration)Registration of the tool list (including voidfeed_semantic_search) via the MCP ListToolsRequestSchema handler.
server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: TOOLS })); - index.js:44-48 (helper)Helper function vfGet used by the semantic search handler to perform the GET request to the VoidFeed API.
async function vfGet(path) { const res = await fetch(`${BASE}${path}`, { headers: authHeaders() }); if (!res.ok) throw new Error(`VoidFeed ${path} → ${res.status}`); return res.json(); }