UNPKG

navigation-equipment-manuals-mcp-server

Version:

Navigation Equipment Manuals MCP Server for create, update, delete, and search navigation equipment manuals

154 lines 5.35 kB
export function getReferenceArtifact(results) { const totalResults = results.length; return { type: "agent_acting", id: "msg_search_1744192295407_389", parentTaskId: "1311e759-917a-472f-9d14-e0dcf005773b", timestamp: 1744192295407, agent: { id: "agent_browser_researcher", name: "BROWSER", type: "researcher" }, messageType: "action", action: { tool: "search", operation: "searching", params: { query: "Search results from Navigational Equipment Manuals", searchEngine: "general" }, visual: { icon: "search", color: "#34A853" } }, content: "Search results for: Search results from Navigational Equipment Manuals", artifacts: [ { id: "artifact_search_1744192295406_875", type: "search_results", content: { query: "Search results from Navigational Equipment Manuals", totalResults: totalResults, results: results }, metadata: { searchEngine: "general", searchTimestamp: 1744192295407, responseTime: "0.70" } } ], status: "completed", originalEvent: "tool_result", sessionId: "1311e759-917a-472f-9d14-e0dcf005773b", agent_type: "browser", state: "running" }; } export function getListOfArtifacts(functionName, results) { const artifacts = []; for (let i = 0; i < results.length; i++) { const result = results[i]; const url = result.url; const title = result.title; if (url) { const artifactData = { id: `msg_browser_ghi789${i}`, parentTaskId: "task_japan_itinerary_7d8f9g", timestamp: Math.floor(Date.now()), agent: { id: "agent_siya_browser", name: "SIYA", type: "qna" }, messageType: "action", action: { tool: "browser", operation: "browsing", params: { url: title, pageTitle: `Tool response for ${functionName}`, visual: { icon: "browser", color: "#2D8CFF" }, stream: { type: "vnc", streamId: "stream_browser_1", target: "browser" } } }, content: `Viewed page: ${functionName}`, artifacts: [{ id: "artifact_webpage_1746018877304_994", type: "browser_view", content: { url: url, title: functionName, screenshot: "", textContent: `Observed output of cmd \`${functionName}\` executed:`, extractedInfo: {} }, metadata: { domainName: "example.com", visitTimestamp: Date.now(), category: "web_page" } }], status: "completed" }; const artifact = { type: "text", text: JSON.stringify(artifactData, null, 2), title: title || `Artifact ${i}`, format: "json" }; artifacts.push(artifact); } } return artifacts; } export function formatHit(hit, doc) { const hitData = { relevance_score: hit.text_match ? Math.round(hit.text_match * 1000) / 1000 : null, document_info: { name: doc.documentName || "Unknown", type: doc.documentType || "Unknown", page: doc.pageNumber || "Unknown" }, equipment_info: { maker: doc.maker || "Unknown", model: doc.model || "Unknown", type: doc.equipment || "Unknown" }, location: { chapter: doc.chapter || "", section: doc.section || "", page: doc.pageNumber || "" } }; const content = doc.originalText || doc.embText || ""; hitData.content = content; if (hit.highlights) { hitData.highlights = hit.highlights; } return hitData; } export function sanitizeFilterValue(value) { // Define a regex pattern of removable/special characters const pattern = /[()\[\]{}&|:,=]/g; const cleaned = value.replace(pattern, " ").trim(); return JSON.stringify(cleaned); // safely quoted for Typesense } export function createTextContent(text, title, format) { return { type: "text", text: text, title: title, format: format }; } //# sourceMappingURL=helpers.js.map