Skip to main content
Glama

Daisys MCP Server

by daisys-ai
utils.py1.41 kB
import shutil import os from pathlib import Path from datetime import datetime class DaisysMcpError(Exception): pass def throw_mcp_error(message: str): raise DaisysMcpError(message) def is_installed(lib_name: str) -> bool: lib = shutil.which(lib_name) if lib is None: return False return True def is_file_writeable(path: Path) -> bool: if path.exists(): return os.access(path, os.W_OK) parent_dir = path.parent return os.access(parent_dir, os.W_OK) and parent_dir.exists() def make_output_file(text: str, output_path: Path, extension: str = "wav") -> Path: text = text.replace(" ", "_") output_file_name = ( f"{text[:5]}_{datetime.now().strftime('%Y%m%d_%H%M%S')}.{extension}" ) return output_path / output_file_name def make_output_path( output_directory: str | None, base_path: str | None = None ) -> Path: output_path = None if output_directory is None: output_path = Path.home() / "Desktop" elif not os.path.isabs(output_directory) and base_path: output_path = Path(os.path.expanduser(base_path)) / Path(output_directory) else: output_path = Path(os.path.expanduser(output_directory)) output_path.mkdir(parents=True, exist_ok=True) if not is_file_writeable(output_path): throw_mcp_error(f"Directory ({output_path}) is not writeable") return output_path

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/daisys-ai/daisys-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server