diff --git a/mcp-server/index.ts b/mcp-server/index.ts index 814e8a5..d809fa2 100644 --- a/mcp-server/index.ts +++ b/mcp-server/index.ts @@ -151,7 +151,9 @@ server.tool( }, async ({ question, sql_filter, dataset, id_column, top_k }) => { const body: any = { - question, index_name: "workers_500k_v1", filter_dataset: dataset, id_column, top_k, generate: true, + // Index must share an id-space with filter_dataset (default ethereal_workers, 10K) + // → ethereal_workers_v1. workers_500k_v1 (50K, different workers) misaligned. + question, index_name: "ethereal_workers_v1", filter_dataset: dataset, id_column, top_k, generate: true, use_playbook_memory: true, }; if (sql_filter) body.sql_filter = sql_filter; @@ -185,7 +187,8 @@ server.tool( if (city) filter += ` AND city = '${city}'`; const r = await api("POST", "/vectors/hybrid", { question: `Find the best ${role} workers with relevant skills and certifications`, - index_name: "workers_500k_v1", sql_filter: filter, + // ethereal_workers_v1 aligns with filter_dataset ethereal_workers (same 10K ids). + index_name: "ethereal_workers_v1", sql_filter: filter, filter_dataset: "ethereal_workers", id_column: "worker_id", top_k: headcount * 2, generate: false, use_playbook_memory: true, @@ -556,7 +559,8 @@ async function main() { if (b.city) filter += ` AND city = '${b.city}'`; return ok(await api("POST", "/vectors/hybrid", { question: `Best ${b.role} workers with relevant skills`, - index_name: b.index || "workers_500k_v1", sql_filter: filter, + // Align default index with the ethereal_workers dataset (see /search fix). + index_name: b.index || "ethereal_workers_v1", sql_filter: filter, filter_dataset: b.dataset || "ethereal_workers", id_column: "worker_id", top_k: (b.headcount || 5) * 2, generate: false, use_playbook_memory: true,