Public
Like2
mcp-registry-spec-sdk
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
- Server schema version updated: SDK now uses server.json schema version 2025-12-11
- getServerByName() deprecated: The
getServerByName()method is now deprecated and will emit a console warning. Users should migrate to explicit version methods (getServerVersion(),listServerVersions()) - Transport types updated: New transport schemas (
StdioTransport,StreamableHttpTransport,SseTransport) have been added andTransportSchemais now a discriminated union
- API version support: Client now supports both
/v0/(development) and/v0.1/(stable) API versions. Constructor accepts optionalapiVersionparameter ('v0' | 'v0.1'), defaults to 'v0' - New server version methods:
getServerVersion(serverName, version)- Get a specific versionlistServerVersions(serverName)- List all available versionsgetServerByName()now calls/versions/latestendpoint internally
- Package schema enhancements: The
versionfield inPackageSchemais now optional (aligns with official registry) - New transport types:
StdioTransportSchema- Standard IO transport (type: 'stdio')StreamableHttpTransportSchema- HTTP transport with streaming supportSseTransportSchema- Server-Sent Events transport
- URL template variables: Remote transport now supports optional
variablesproperty for URL templating with{curly_braces}syntax - Icon schema: New
IconSchemafor server icons withsrc(required),mimeType,sizes, andtheme(all optional) - Additional schemas from official registry:
ResponseMetaSchema- API response metadata (status, publishedAt, updatedAt, isLatest)ServerMetaSchema- Server metadata in list responsesServerJSONSchema- Alias for ServerDetail (input format)ServerListResponseSchema- List operations responseVersionBodySchema- Version endpoint responsesSignatureTokenExchangeInputSchema- DNS/HTTP signature exchangeOIDCTokenExchangeInputBodySchema- Google OIDC (admin-only)GitHubTokenExchangeInputBodySchema- GitHub authGitHubOIDCTokenExchangeInputBodySchema- GitHub OIDC authMetadataSchema- Pagination metadata
- New admin endpoint:
PUT /servers/{serverName}/versions/{version}for updating server versions
Migrate from getServerByName():
// Old (deprecated - emits warning)
const server = await client.server.getServerByName("my-server");
// New - use explicit version
const latest = await client.server.getServerVersion("my-server", "latest");
const specific = await client.server.getServerVersion("my-server", "1.0.0");
Use stable v0.1 API in production:
// Default (v0 - development)
const clientDev = new MCPRegistryClient();
// Production (v0.1 - stable)
const clientProd = new MCPRegistryClient("https://registry.modelcontextprotocol.io", "v0.1");
Update server.json $schema:
{ "$schema": "https://raw.githubusercontent.com/modelcontextprotocol/registry/main/docs/reference/server-json/server.schema.json" }
- All endpoint URLs now use URL encoding for server names and versions (
encodeURIComponent()) - All namespace classes (Auth, Server, Publish, Admin, Health, Ping) respect the configured API version
- TypeScript types are derived from Zod schemas for runtime validation
- Backward compatibility maintained where practical
- Added tests for server listing functionality
- Updated RegistryExtensionsSchema and RemoteSchema to make some fields optional
- Updated package version to 0.2.0s
ServerResponseandServerResponseSchemaare now properly typed.
- Added re-exports for every schema constant in index.ts, so consumers can import schemas statically from the root entry.
- Rebuilt the package; the generated d.ts now includes these named schema exports and the build completed at version 0.1.2.