run402-mcp
Version:
MCP server for Run402 — full-stack backend infrastructure for AI agents: Postgres, auth, storage, serverless functions and atomic deploys. Paid with x402/MPP. Includes $0.03 image generation.
125 lines • 5 kB
TypeScript
export type ProjectOperationPlane = "control" | "data" | "local";
export type ProjectOperationAuthMode = "principal" | "grant_key" | "service_key" | "project_credential" | "anon_key";
export interface ProjectOperationAuthClassification {
operation: string;
scope: "project";
plane: ProjectOperationPlane;
authModes: ProjectOperationAuthMode[];
defaultAuthMode: ProjectOperationAuthMode;
requiresProjectId: boolean;
mayUseLocalCredentialCache: boolean;
localCredentialMissCode?: "PROJECT_CREDENTIAL_NOT_FOUND";
}
export declare const PROJECT_OPERATION_AUTH_CLASSIFICATIONS: readonly [{
readonly operation: "projects.list";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: false;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "projects.get";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "projects.use";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "projects.keys";
readonly scope: "project";
readonly plane: "local";
readonly authModes: ["project_credential"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}, {
readonly operation: "projects.sql";
readonly scope: "project";
readonly plane: "data";
readonly authModes: ["service_key"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}, {
readonly operation: "projects.rest";
readonly scope: "project";
readonly plane: "data";
readonly authModes: ["anon_key", "service_key"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}, {
readonly operation: "domains.add";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key", "service_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "domains.list";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key", "service_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "domains.status";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key", "service_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "domains.delete";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["principal", "grant_key", "service_key"];
readonly defaultAuthMode: "principal";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: false;
}, {
readonly operation: "functions.*";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["service_key"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}, {
readonly operation: "assets.*";
readonly scope: "project";
readonly plane: "data";
readonly authModes: ["service_key"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}, {
readonly operation: "jobs.*";
readonly scope: "project";
readonly plane: "control";
readonly authModes: ["service_key"];
readonly defaultAuthMode: "project_credential";
readonly requiresProjectId: true;
readonly mayUseLocalCredentialCache: true;
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
}];
export declare function projectOperationAuthClassification(operation: string): ProjectOperationAuthClassification | null;
//# sourceMappingURL=project-auth-classification.d.ts.map