@blueforge-studio/worldforge-sdk

WorldForge Studio SDK — typed REST client, offline world tools, realtime (SSE + realm) and MCP wrappers for the GAS world API

Package Info

Latest Version0.1.0
LicenseUNLICENSED
Keywords-
Repository-
Author-
Homepage-
Bugs-

Versions

VersionPublished
0.1.02026-09-26

Per-version supply chain

VersionSigSBOMAtt
0.1.0

Click a version to view its details.

Supply chain

Nothing recorded for 0.1.0. Versions published before the registry began writing provenance have none, and signatures and SBOMs are attached by the publisher.

Dependencies

Loading dependency graph...

README

@blueforge-studio/worldforge-sdk

TypeScript/ESM SDK for the WorldForge Studio API: a typed REST client, offline world-document tools, realtime (SSE + realm WebSocket) and an MCP client.

Proprietary — see LICENSE (the repo's terms; this is not open source). Published to the BlueForge registry (packr).

Install

# one-time scope mapping (anonymous reads are allowed)
echo '@blueforge-studio:registry=https://api.packr.blueforge.studio' >> ~/.npmrc

pnpm add @blueforge-studio/worldforge-sdk

Four entrypoints

ImportWhat
@blueforge-studio/worldforge-sdkcreateClient — typed REST resources (worlds, atlas, regions, wiki, packs, proposals, print-shops, collab), WorldForgeApiError, raw escape hatch
…/offlineWorld-document tools: safeParseWorld, runMigrations, lore CRUD, calendar helpers, WORLD_SCHEMA_VERSION
…/realtimeSSE live view (openWorldStream / watchWorld) and the realm Yjs WebSocket (openRealmProvider, readRoot)
…/mcpcreateMcpClient over the server's /mcp streamable-HTTP endpoint

30-second example

import { createClient } from '@blueforge-studio/worldforge-sdk';
import { safeParseWorld, runMigrations } from '@blueforge-studio/worldforge-sdk/offline';

const client = createClient({ baseUrl: 'https://api.worldforge.blueforge.studio', apiKey: process.env.WORLDFORGE_API_KEY! });

const worlds = await client.worlds.list();
const detail = await client.worlds.get(worlds[0]!.id);
const parsed = safeParseWorld(detail.json);
if (parsed.ok) console.log(runMigrations(parsed.data).world.schemaVersion);

Guides

Full guides live in the repo's docs/sdk/ (and on the site under /docs/sdk): quickstart, authentication (keys vs JWTs, scope table, API-key limits), resources, offline tools, realtime, MCP, and troubleshooting/versioning.

Support

Issues and the API reference: blueforge-studio/world-map-editor on forge-git. The server's route reference is docs/api/ in the same repo.