Server definition
- Hash
- sha256:40415b2eaf4d38e912e538d748a6ee7a4a76e360aca5237eaa4055170bf95693
- What it is
- What a remote MCP server returned when asked what it offers: 2 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Generate an event pack: a Luma-style event card with .ics + RSVP QR, and an identity badge per attendee with a deterministic avatar and vCard-encoded QR. Use when the user describes an event and the people attending (meetup, conference, wedding, hackathon, dinner) and wants shareable cards. Do NOT use to render a single downloadable PNG of one badge — use render-badge-png for that. Output is deterministic: the same attendee name + style always yields the same avatar.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"accentHex": {
"description": "Hex color for accent (e.g. '#ef4444'). Defaults to indigo.",
"type": "string"
},
"attendees": {
"description": "Attendees to generate identity badges for",
"items": {
"additionalProperties": false,
"properties": {
"address": {
"description": "Postal/contact address as freeform text",
"type": "string"
},
"company": {
"description": "Company / organization name",
"type": "string"
},
"email": {
"description": "Email address, e.g. '[email protected]'",
"type": "string"
},
"gender": {
"description": "Optional gender hint to make the avatar read more clearly: 'm' (no earrings, may have a beard), 'f' (no beard, may have earrings), or 'x'/omit for neutral. Only affects the lorelei & notionists styles. Infer from the name when the user clearly implies it, otherwise omit.",
"enum": [
"m",
"f",
"x"
],
"type": "string"
},
"linkedin": {
"description": "LinkedIn profile, e.g. 'linkedin.com/in/lenabauer'",
"type": "string"
},
"name": {
"description": "Attendee full name",
"type": "string"
},
"phone": {
"description": "Phone number, e.g. '+49 30 1234567'",
"type": "string"
},
"role": {
"description": "Short role label (e.g. 'Host', 'Judge', 'Hacker')",
"type": "string"
},
"website": {
"description": "Personal or company website, e.g. 'acme.io'",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"avatarStyle": {
"description": "Avatar style for the whole crew. 'notionists' = Notion-style sketch (default, friendly meetups), 'lorelei' = monochrome line art (calm/professional), 'bottts' = colorful robots (hackathons / playful trading-card vibe), 'shapes' = abstract geometric (anonymous voting / ballots).",
"enum": [
"notionists",
"lorelei",
"bottts",
"shapes"
],
"type": "string"
},
"dateISO": {
"description": "Event start time as ISO 8601 string (UTC or with offset)",
"type": "string"
},
"durationHours": {
"description": "Event duration in hours (default 3)",
"type": "number"
},
"rsvpUrl": {
"description": "URL to encode in the event RSVP QR code",
"type": "string"
},
"title": {
"description": "Event title",
"type": "string"
},
"venue": {
"description": "Venue / location text",
"type": "string"
}
},
"required": [
"title",
"dateISO",
"attendees"
],
"type": "object"
},
"name": "generate-lineup",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"badges": {
"description": "One identity badge per attendee",
"items": {
"additionalProperties": false,
"properties": {
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"avatarSvg": {
"type": "string"
},
"company": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"gender": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"linkedin": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"phone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"role": {
"type": "string"
},
"vcardQrSvg": {
"type": "string"
},
"website": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"role",
"gender",
"email",
"phone",
"company",
"website",
"linkedin",
"address",
"avatarSvg",
"vcardQrSvg"
],
"type": "object"
},
"type": "array"
},
"event": {
"additionalProperties": false,
"description": "Event card data (title, date, venue, accent, RSVP QR, .ics)",
"properties": {
"accentHex": {
"type": "string"
},
"avatarStyle": {
"type": "string"
},
"dateISO": {
"type": "string"
},
"icsString": {
"type": "string"
},
"qrSvg": {
"type": "string"
},
"rsvpUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"title": {
"type": "string"
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"title",
"dateISO",
"venue",
"accentHex",
"rsvpUrl",
"avatarStyle",
"icsString",
"qrSvg"
],
"type": "object"
}
},
"required": [
"event",
"badges"
],
"type": "object"
}
},
{
"description": "Render a single identity badge as a shareable PNG (avatar + name + role + vCard QR) composed with Satori. Use when the user clicks download on one badge, or asks for a single saveable/printable badge image. Do NOT use to build the whole event view — use generate-lineup for that. Match avatarStyle/gender/accentHex to the badge shown in the Lineup so the PNG looks identical.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"accentHex": {
"description": "Accent hex color",
"type": "string"
},
"avatarStyle": {
"description": "Avatar style (same options as generate-lineup). Match the event's style.",
"enum": [
"notionists",
"lorelei",
"bottts",
"shapes"
],
"type": "string"
},
"eventTitle": {
"description": "Event title (printed on the badge)",
"type": "string"
},
"gender": {
"description": "Gender hint (same as generate-lineup). Match the badge.",
"enum": [
"m",
"f",
"x"
],
"type": "string"
},
"name": {
"description": "Attendee full name",
"type": "string"
},
"role": {
"description": "Role label",
"type": "string"
},
"seed": {
"description": "Avatar seed override (defaults to name). Used when the user re-rolled this face.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "render-badge-png",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"pngDataUrl": {
"description": "The rendered badge as a base64 PNG data URL",
"type": "string"
}
},
"required": [
"pngDataUrl"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:40415b2eaf4d38e912e538d748a6ee7a4a76e360aca5237eaa4055170bf95693 | sha256sum