feat(mcp): add search options to Kijiji and eBay tools
This commit is contained in:
@@ -97,7 +97,23 @@ export async function handleMcpRequest(req: Request): Promise<Response> {
|
||||
error: { code: -32602, message: "query parameter is required" },
|
||||
});
|
||||
}
|
||||
const items = await fetchKijijiItems(query, args.maxItems || 5);
|
||||
const searchOptions = {
|
||||
location: args.location,
|
||||
category: args.category,
|
||||
keywords: args.keywords,
|
||||
sortBy: args.sortBy,
|
||||
sortOrder: args.sortOrder,
|
||||
maxPages: args.maxPages || 5,
|
||||
priceMin: args.priceMin,
|
||||
priceMax: args.priceMax,
|
||||
};
|
||||
const items = await fetchKijijiItems(
|
||||
query,
|
||||
1,
|
||||
"https://www.kijiji.ca",
|
||||
searchOptions,
|
||||
{}
|
||||
);
|
||||
result = items || [];
|
||||
} else if (name === "search_facebook") {
|
||||
const query = args.query;
|
||||
@@ -110,10 +126,11 @@ export async function handleMcpRequest(req: Request): Promise<Response> {
|
||||
}
|
||||
const items = await fetchFacebookItems(
|
||||
query,
|
||||
args.maxItems || 5,
|
||||
1,
|
||||
args.location || "toronto",
|
||||
25,
|
||||
args.cookiesSource
|
||||
args.maxItems || 25,
|
||||
args.cookiesSource,
|
||||
undefined
|
||||
);
|
||||
result = items || [];
|
||||
} else if (name === "search_ebay") {
|
||||
@@ -125,7 +142,7 @@ export async function handleMcpRequest(req: Request): Promise<Response> {
|
||||
error: { code: -32602, message: "query parameter is required" },
|
||||
});
|
||||
}
|
||||
const items = await fetchEbayItems(query, args.maxItems || 5, {
|
||||
const items = await fetchEbayItems(query, 1, {
|
||||
minPrice: args.minPrice,
|
||||
maxPrice: args.maxPrice,
|
||||
strictMode: args.strictMode || false,
|
||||
@@ -134,7 +151,9 @@ export async function handleMcpRequest(req: Request): Promise<Response> {
|
||||
buyItNowOnly: args.buyItNowOnly !== false,
|
||||
canadaOnly: args.canadaOnly !== false,
|
||||
});
|
||||
result = items || [];
|
||||
|
||||
const results = args.maxItems ? items.slice(0, args.maxItems) : items;
|
||||
result = results || [];
|
||||
} else {
|
||||
return Response.json({
|
||||
jsonrpc: "2.0",
|
||||
|
||||
Reference in New Issue
Block a user