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.
62 lines • 2.22 kB
TypeScript
/**
* `r.status()` — the organization's state in one read, owned by the Node
* SDK: the active wallet (`local_label`, `server_label`, address), its rail,
* on-chain and allowance balances, the tier and its lease, the projects
* (server-side, falling back to the local key cache), the active project, and
* the API target. This is the LOCAL view — which wallet this machine acts as —
* combined with the reads that wallet can make; it never returns key material.
*
* With no local wallet the answer is the bare local state (`wallet: null`,
* the locally known projects, the active project, the target) plus the next
* command; Run402 Core targets can still report it without a wallet.
* `run402 status` is a shim over this.
*/
import type { Run402 } from "../index.js";
export interface StatusTarget {
api_base: string;
api_base_source: "env" | "profile" | "default";
kind: "cloud" | "core" | "unknown";
}
/** No local wallet: the local facts and the next command. */
export interface LocalOnlyStatus {
wallet: null;
target: StatusTarget;
projects: Array<{
project_id: string;
}>;
active_project: string | null;
hint: string;
}
/** A local wallet: the organization's state as that wallet sees it. */
export interface WalletStatus {
wallet: {
local_label: string;
server_label: string | null;
address: string;
};
rail: string;
remote_status: unknown;
next_actions: unknown;
projects_source: "remote" | "local_cache";
balances: {
on_chain_usd_micros: number | null;
on_chain_token: "USDC" | "pathUSD";
allowance_usd_micros: number | null;
held_usd_micros: number | null;
};
tier: {
name: string;
status: string;
expires: string | null;
} | null;
organization_lifecycle_state: string | null;
lease_perpetual: boolean | null;
projects: Array<Record<string, unknown> & {
project_id: string;
}>;
active_project: string | null;
target: StatusTarget;
}
export type StatusResult = LocalOnlyStatus | WalletStatus;
export declare function runStatus(r: Run402): Promise<StatusResult>;
//# sourceMappingURL=status.d.ts.map