@wonderwhy-er/desktop-commander
Version:
MCP server for terminal operations and file editing
72 lines (71 loc) • 2.02 kB
JavaScript
import { z } from "zod";
console.error("Loading schemas.ts");
// Config tools schemas
export const GetConfigArgsSchema = z.object({});
export const SetConfigValueArgsSchema = z.object({
key: z.string(),
value: z.any(),
});
// Empty schemas
export const ListProcessesArgsSchema = z.object({});
// Terminal tools schemas
export const ExecuteCommandArgsSchema = z.object({
command: z.string(),
timeout_ms: z.number().optional(),
shell: z.string().optional(),
});
export const ReadOutputArgsSchema = z.object({
pid: z.number(),
});
export const ForceTerminateArgsSchema = z.object({
pid: z.number(),
});
export const ListSessionsArgsSchema = z.object({});
export const KillProcessArgsSchema = z.object({
pid: z.number(),
});
// Filesystem tools schemas
export const ReadFileArgsSchema = z.object({
path: z.string(),
isUrl: z.boolean().optional().default(false),
});
export const ReadMultipleFilesArgsSchema = z.object({
paths: z.array(z.string()),
});
export const WriteFileArgsSchema = z.object({
path: z.string(),
content: z.string(),
});
export const CreateDirectoryArgsSchema = z.object({
path: z.string(),
});
export const ListDirectoryArgsSchema = z.object({
path: z.string(),
});
export const MoveFileArgsSchema = z.object({
source: z.string(),
destination: z.string(),
});
export const SearchFilesArgsSchema = z.object({
path: z.string(),
pattern: z.string(),
timeoutMs: z.number().optional(),
});
export const GetFileInfoArgsSchema = z.object({
path: z.string(),
});
// Search tools schema
export const SearchCodeArgsSchema = z.object({
path: z.string(),
pattern: z.string(),
filePattern: z.string().optional(),
ignoreCase: z.boolean().optional(),
maxResults: z.number().optional(),
includeHidden: z.boolean().optional(),
contextLines: z.number().optional(),
timeoutMs: z.number().optional(),
});
// Edit tools schemas
export const EditBlockArgsSchema = z.object({
blockContent: z.string(),
});