Server Cards moved
The finalized Server Cards guide now has a stable documentation location.
Server Cards reached final extension status. Use the stable Server Cards guide. This page remains available so existing documentation links do not break.
import { MCP_SERVER_CARD_REVISION, MCP_SERVER_CARD_SCHEMA, mcp } from '@mwillbanks/elysia-mcp-adapter'
mcp({
server: { name: 'com.example/service', version: 'build-42' },
extensions: {
serverCard: {
version: MCP_SERVER_CARD_REVISION,
card: {
$schema: MCP_SERVER_CARD_SCHEMA,
name: 'com.example/service',
description: 'Example service',
version: 'build-42',
remotes: [{ type: 'streamable-http', url: 'https://api.example.com/mcp' }]
}
}
}
})The endpoint returns application/mcp-server-card+json, Access-Control-Allow-Origin: *, a stable ETag, and Cache-Control. Matching If-None-Match requests return 304.
Keep the card name and version consistent with live serverInfo. This consistency is advisory; runtime values are authoritative after connection. Exact non-semver version strings are valid. Version ranges are invalid.
Serve the public card endpoint over HTTPS with TLS 1.2 or later in production. The application host or a configured TLS-terminating proxy enforces transport security. The adapter does not infer transport security from forwarded headers. Remote metadata URLs require HTTPS in production; environment: 'development' permits loopback HTTP.
Cards are advisory. Do not include authorization values, embedded secrets, private topology, tools, resources, or prompts. The adapter never fetches a card automatically.