Server definition
- Hash
- sha256:95a165d3c53b6ea9fba5a36fea223acf70db3e37ed02fcc435e31e6a0c70c1d4
- What it is
- What a remote MCP server returned when asked what it offers: 3 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Generate a NEW icon in the Lucide grammar for a concept that doesn't exist yet. Grab-first: returns mode='grab' with matches when a strong existing icon covers the prompt. Otherwise runs the lint + critique + repair loop and returns lint-scored candidates. Subject to quota (errors carry error.code='quota_exceeded').",
"inputSchema": {
"properties": {
"prompt": {
"description": "the concept, e.g. 'portafilter'",
"type": "string"
}
},
"required": [
"prompt"
],
"type": "object"
},
"name": "generate_icon",
"outputSchema": {
"oneOf": [
{
"properties": {
"candidates": {
"items": {
"properties": {
"body": {
"description": "inner SVG body in the 24x24 Lucide grammar (stroke-2, no fills)",
"type": "string"
},
"name": {
"type": "string"
},
"pass": {
"type": "boolean"
},
"rounds": {
"description": "repair rounds used",
"type": "number"
},
"score": {
"description": "grammar lint score, 0-100",
"type": "number"
},
"violations": {
"items": {
"type": "object"
},
"type": "array"
},
"visionNote": {
"type": "string"
},
"visionVerdict": {
"type": "string"
}
},
"required": [
"name",
"body",
"score",
"pass",
"rounds"
],
"type": "object"
},
"type": "array"
},
"createdAt": {
"type": "string"
},
"id": {
"description": "generation record id (mode=generated); bench at /gen/{id}, record kept 90 days",
"type": "string"
},
"matches": {
"items": {
"properties": {
"license": {
"type": "string"
},
"score": {
"type": "number"
},
"slug": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"slug",
"score",
"source",
"license"
],
"type": "object"
},
"type": "array"
},
"mode": {
"description": "grab = strong existing matches, no generation ran",
"enum": [
"grab",
"generated"
],
"type": "string"
},
"modelCalls": {
"type": "number"
},
"ms": {
"type": "number"
},
"prompt": {
"type": "string"
},
"provenance": {
"description": "{ attribution, license: 'yours', source: 'generated' }",
"type": "object"
},
"quota": {
"description": "{ used, limit } after this call",
"type": "object"
},
"reason": {
"type": "string"
}
},
"required": [
"mode",
"matches"
],
"type": "object"
},
{
"properties": {
"error": {
"properties": {
"code": {
"enum": [
"prompt_too_short",
"quota_exceeded",
"internal"
],
"type": "string"
},
"message": {
"type": "string"
},
"quota": {
"description": "present on quota_exceeded: { used, limit, tier }",
"type": "object"
}
},
"required": [
"code",
"message"
],
"type": "object"
}
},
"required": [
"error"
],
"type": "object"
}
]
}
},
{
"description": "Fetch one icon by slug. format='svg' (default) returns the SVG document; 'jsx' returns a lucide-react-compatible TSX component; 'motion' returns a TSX component with a stroke-draw entrance.",
"inputSchema": {
"properties": {
"format": {
"enum": [
"svg",
"jsx",
"motion"
],
"type": "string"
},
"slug": {
"type": "string"
}
},
"required": [
"slug"
],
"type": "object"
},
"name": "get_icon",
"outputSchema": {
"oneOf": [
{
"properties": {
"content": {
"description": "SVG document (format=svg) or TSX component source (jsx/motion)",
"type": "string"
},
"format": {
"enum": [
"svg",
"jsx",
"motion"
],
"type": "string"
},
"license": {
"type": "string"
},
"slug": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": [
"slug",
"format",
"source",
"license",
"content"
],
"type": "object"
},
{
"properties": {
"error": {
"properties": {
"code": {
"enum": [
"unknown_icon"
],
"type": "string"
},
"message": {
"type": "string"
},
"quota": {
"description": "present on quota_exceeded: { used, limit, tier }",
"type": "object"
}
},
"required": [
"code",
"message"
],
"type": "object"
}
},
"required": [
"error"
],
"type": "object"
}
]
}
},
{
"description": "Search the iconlab corpus (Lucide static + lucide-animated variants) by concept. Returns scored matches with slugs, sources and licenses.",
"inputSchema": {
"properties": {
"limit": {
"description": "max results, 1-50 (default 12)",
"type": "number"
},
"query": {
"description": "concept, e.g. 'drum' or 'vector database'",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search_icons",
"outputSchema": {
"properties": {
"query": {
"type": "string"
},
"results": {
"items": {
"properties": {
"animatedVariant": {
"description": "an animated variant exists for this slug",
"type": "boolean"
},
"license": {
"description": "SPDX id of the source set",
"type": "string"
},
"score": {
"description": "relevance, 0-1",
"type": "number"
},
"slug": {
"type": "string"
},
"source": {
"description": "lucide | lucide-animated",
"type": "string"
}
},
"required": [
"slug",
"score",
"source",
"license",
"animatedVariant"
],
"type": "object"
},
"type": "array"
},
"total": {
"description": "matches found (counting stops at limit+1, so total may read limit+1 when truncated)",
"type": "number"
},
"truncated": {
"description": "true when more matches exist beyond `results`",
"type": "boolean"
}
},
"required": [
"query",
"total",
"truncated",
"results"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:95a165d3c53b6ea9fba5a36fea223acf70db3e37ed02fcc435e31e6a0c70c1d4 | sha256sum