mirror of
https://bitbucket.org/siakitem/my-pi.git
synced 2026-08-28 08:35:57 +00:00
33 lines
908 B
TypeScript
33 lines
908 B
TypeScript
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
import { createMcpAdapter } from "pi-mcp-adapter";
|
|
import { createExaToolApiOverride } from "./exa-tool-prefix.ts";
|
|
|
|
const EXA_TOOLS = ["web_search_exa", "web_fetch_exa", "web_search_advanced_exa"];
|
|
const EXA_MCP_URL = `https://mcp.exa.ai/mcp?tools=${EXA_TOOLS.join(",")}`;
|
|
|
|
const exaAdapter = createMcpAdapter({
|
|
config: {
|
|
settings: {
|
|
disableProxyTool: true,
|
|
scriptMode: false,
|
|
},
|
|
mcpServers: {
|
|
exa: {
|
|
url: EXA_MCP_URL,
|
|
protocolVersion: "auto",
|
|
lifecycle: "eager",
|
|
directTools: EXA_TOOLS,
|
|
includeTools: EXA_TOOLS,
|
|
toolPrefix: "none",
|
|
approveTools: false,
|
|
exposeResources: false,
|
|
},
|
|
},
|
|
},
|
|
});
|
|
|
|
/** Connect Pi to Exa while exposing every direct tool as `exa_<original-name>`. */
|
|
export default function exaExtension(pi: ExtensionAPI): void {
|
|
exaAdapter(createExaToolApiOverride(pi));
|
|
}
|