mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-04-27 19:17:03 +02:00
Format all non-generated files with oxfmt via `vp fmt`. Add .oxfmtignore to skip bindings/ and wasm-pack output. Add npm format script and update DEVELOPMENT.md docs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
48 lines
1.2 KiB
TypeScript
48 lines
1.2 KiB
TypeScript
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
import type { McpServerContext } from "../types.js";
|
|
import { getWorkspaceContext } from "./helpers.js";
|
|
|
|
export function registerWindowTools(server: McpServer, ctx: McpServerContext) {
|
|
server.registerTool(
|
|
"get_workspace_id",
|
|
{
|
|
title: "Get Workspace ID",
|
|
description: "Get the current workspace ID",
|
|
},
|
|
async () => {
|
|
const workspaceCtx = await getWorkspaceContext(ctx);
|
|
const workspaceId = await workspaceCtx.yaak.window.workspaceId();
|
|
|
|
return {
|
|
content: [
|
|
{
|
|
type: "text" as const,
|
|
text: workspaceId || "No workspace open",
|
|
},
|
|
],
|
|
};
|
|
},
|
|
);
|
|
|
|
server.registerTool(
|
|
"get_environment_id",
|
|
{
|
|
title: "Get Environment ID",
|
|
description: "Get the current environment ID",
|
|
},
|
|
async () => {
|
|
const workspaceCtx = await getWorkspaceContext(ctx);
|
|
const environmentId = await workspaceCtx.yaak.window.environmentId();
|
|
|
|
return {
|
|
content: [
|
|
{
|
|
type: "text" as const,
|
|
text: environmentId || "No environment selected",
|
|
},
|
|
],
|
|
};
|
|
},
|
|
);
|
|
}
|