sce-tools-mcp
Version:
SCE Tools MCP Server with full Python CLI feature parity - Model Context Protocol server for SCE (Spark Creative Editor) game development
59 lines (58 loc) • 1.71 kB
TypeScript
/**
* SCE认证服务 - 完整实现Python login_sce.py功能
*/
import type { AuthState, CreateProjectResult, Environment } from '../types/index.js';
export declare class AuthService {
private authState;
private configService?;
constructor(configService?: any);
/**
* 从TapCode环境变量获取token(仅在TAPCODE_MODE=true时使用)
* 对应Python: get_tapcode_token()
*/
getTapCodeToken(): string;
/**
* 从SCE_TAP_TOKEN环境变量或yaml配置文件获取token(在非TAPCODE_MODE环境中使用)
*/
getSceTapToken(env: Environment): string;
/**
* 智能获取token - 根据环境自动选择正确的token来源
*/
getToken(env: Environment): string;
/**
* 检查是否有可用的token - 根据环境智能判断
*/
hasToken(env?: Environment): boolean;
/**
* 登录SCE平台
* 对应Python: SceState.login()
*/
login(env?: Environment, token?: string): Promise<void>;
/**
* 构建SCE API请求头
* 对应Python: SceState.build_sce_headers()
*/
buildSceHeaders(body?: Buffer): Record<string, string>;
/**
* 申请SCE项目
* 对应Python: SceState.call_create_project()
*/
callCreateProject(env: Environment): Promise<CreateProjectResult>;
/**
* 上传项目包
* 对应Python: SceState.call_upload_package()
*/
callUploadPackage(zipFilePath: string, packageName: string): Promise<any>;
/**
* 获取当前认证状态
*/
getAuthState(): AuthState | null;
/**
* 检查是否已认证
*/
isAuthenticated(): boolean;
/**
* 重置认证状态
*/
reset(): void;
}