Jinero

AI-agent design tools: fonts, font recognition, palettes, color naming, contrast, code, SVG, CSS.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
97%
Vollständigkeit des Schemas
97%
Qualität der Benennung
95%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
90%
Einhaltung des Protokolls
100%

Befunde (1)

  • LOWTool 'get_font_download_url' suggests web access but openWorldHint=falsein get_font_download_url

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~2,646Tokens (Tool-Definitionen)
~1.1 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.07% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "jinero": {
      "url": "https://jinero.online/mcp"
    }
  }
}

Remote-Endpunkte

https://jinero.online/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (15)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢search_fonts(name, category, langs, style, variable, ...)

Search the free font catalog by name, category, style tags, language coverage, variable/monospace flags and style count. Returns a paginated list of families.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Fuzzy name match.",
      "type": "string"
    },
    "category": {
      "description": "Comma-separated categories, e.g. 'serif,sans'.",
      "type": "string"
    },
    "langs": {
      "description": "Comma-separated language codes, e.g. 'latin,cyrillic' — ALL must be supported.",
      "type": "string"
    },
    "style": {
      "description": "Comma-separated style tags, e.g. 'handwriting,condensed' — ALL must match. One of: handwriting, script, display, slab, rounded, condensed, expanded, stencil, pixel, blackletter, outline, retro.",
      "type": "string"
    },
    "variable": {
      "description": "Only variable fonts.",
      "type": "boolean"
    },
    "monospace": {
      "description": "Only monospace fonts.",
      "type": "boolean"
    },
    "styles_min": {
      "description": "Minimum number of styles.",
      "type": "integer"
    },
    "styles_max": {
      "description": "Maximum number of styles.",
      "type": "integer"
    },
    "order": {
      "description": "Sort field, default 'likes'.",
      "enum": [
        "likes",
        "downloads",
        "views",
        "name",
        "created_at"
      ],
      "type": "string"
    },
    "sort": {
      "description": "Sort direction.",
      "enum": [
        "asc",
        "desc"
      ],
      "type": "string"
    },
    "per_page": {
      "description": "Results per page (default 24).",
      "minimum": 1,
      "maximum": 100,
      "type": "integer"
    },
    "page": {
      "description": "Page number.",
      "minimum": 1,
      "type": "integer"
    }
  }
}
🟢recognize_font(image_url, image_base64, top_k)

Identify which font is used in an image. Powered by our OWN CNN embedding model, trained on the jinero font catalog — it matches fonts by visual shape/style, so it needs NO OCR and NO text (works for Latin and Cyrillic). Send a tight crop of one line of text as either image_url (public URL) or image_base64 (base64/data-URI, e.g. a local screenshot). The image is processed in memory and deleted immediately — never stored. Returns the most visually similar font families with scores. Typically 0.3-1.7 s (an OCR-assisted rerank of top candidates engages when retrieval is uncertain). Rate limit: 5 calls/min per IP (model inference is compute-heavy).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "image_url": {
      "description": "Public URL of an image — a tight crop of one line of text. Provide either this or image_base64. Recognition is by visual shape (no OCR/text needed); Latin & Cyrillic supported.",
      "type": "string"
    },
    "image_base64": {
      "description": "Base64-encoded image (raw base64 or a data:image/...;base64 URI), max 8 MB decoded — use this to send a local file/screenshot without hosting it. Provide either this or image_url.",
      "type": "string"
    },
    "top_k": {
      "description": "Number of font matches to return (3–20, default 8).",
      "minimum": 3,
      "maximum": 20,
      "type": "integer"
    }
  }
}
🟢get_font(slug)

Get full metadata for one font family by slug: styles, weights, axes, license, subsets and download/CSS URLs.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Family slug, e.g. 'inter', 'playfair-display'.",
      "type": "string"
    }
  },
  "required": [
    "slug"
  ]
}
🟢get_font_files(slug)

List every font file (weight/italic/format + direct woff2/ttf URL) for a family — handy for building custom @font-face rules.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Family slug, e.g. 'inter'.",
      "type": "string"
    }
  },
  "required": [
    "slug"
  ]
}
🟢get_fonts_css(family, display)

Generate ready-to-use @font-face CSS for a family spec (Google-Fonts-compatible), e.g. "inter:wght@400,700" or a variable range "inter:[email protected]". Returns CSS text.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "family": {
      "description": "Family spec, e.g. \"inter:wght@400,700\" or \"inter:[email protected]\".",
      "type": "string"
    },
    "display": {
      "description": "font-display value (default swap).",
      "enum": [
        "swap",
        "auto",
        "block",
        "fallback",
        "optional"
      ],
      "type": "string"
    }
  },
  "required": [
    "family"
  ]
}
🟢get_font_download_url(slug)

Return the direct ZIP download URL for a font family (all styles + a ready fonts.css). Does NOT download — hand the URL to the user or fetch it separately.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Family slug, e.g. 'inter'.",
      "type": "string"
    }
  },
  "required": [
    "slug"
  ]
}
🟢check_contrast(fg, bg)

Check the WCAG contrast ratio between a foreground and background color, with AA/AAA pass/fail for normal and large text.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "fg": {
      "description": "Foreground color (hex, rgb(), or hsl()).",
      "type": "string"
    },
    "bg": {
      "description": "Background color (hex, rgb(), or hsl()).",
      "type": "string"
    }
  },
  "required": [
    "fg",
    "bg"
  ]
}
🟢get_color_shades(hex, step, limit)

Generate tints and shades for a base color (lighter/darker steps) with hex values.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hex": {
      "description": "Base color in hex, rgb(), or hsl().",
      "type": "string"
    },
    "step": {
      "description": "Step percentage (default 10).",
      "enum": [
        "5",
        "10",
        "20",
        "25"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Cap on tints/shades (default fills to ~100%).",
      "minimum": 1,
      "maximum": 20,
      "type": "integer"
    }
  },
  "required": [
    "hex"
  ]
}
🟢name_color(hex)

Get the closest human-readable name for one or more colors. Pass a single hex or several comma-separated (e.g. "#3b82f6,#000,#ff7f50"); returns each input with its nearest color name, the reference hex, an exact-match flag and the perceptual distance.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hex": {
      "description": "A hex color, or several comma-separated (e.g. \"#3b82f6,#000,#ff7f50\"). Up to 100 at once.",
      "type": "string"
    }
  },
  "required": [
    "hex"
  ]
}
🟢extract_colors(image_url, image_base64, count, mode)

Extract a dominant-color palette from an image. Send either a public image_url or image_base64 (base64/data-URI, e.g. a local screenshot). The image is processed in memory and never stored. Each color comes back with its hex, rgb, hsl, share of the image, and the closest human color name — a named palette in one call. Rate limit: 10 calls/min per IP.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "image_url": {
      "description": "Public URL of the image to pull the palette from. Provide either this or image_base64.",
      "type": "string"
    },
    "image_base64": {
      "description": "Base64-encoded image (raw base64 or a data:image/...;base64 URI), max 10 MB decoded — use this to send a local file/screenshot without hosting it. Provide either this or image_url.",
      "type": "string"
    },
    "count": {
      "description": "How many colors to return (2–16, default 8).",
      "type": "integer"
    },
    "mode": {
      "description": "Palette mode: \"balanced\" (default), \"vibrant\", or \"muted\".",
      "type": "string"
    }
  }
}
🟢search_palettes(name, tone, temperature, mood, harmony, ...)

Search the color-palette catalog by name, tone, temperature, mood, harmony, exact color count and tags. Returns a paginated list.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Fuzzy name match.",
      "type": "string"
    },
    "tone": {
      "description": "Overall tone.",
      "enum": [
        "light",
        "dark",
        "mixed"
      ],
      "type": "string"
    },
    "temperature": {
      "description": "Color temperature.",
      "enum": [
        "warm",
        "cool",
        "neutral"
      ],
      "type": "string"
    },
    "mood": {
      "description": "e.g. pastel, muted, earthy, vibrant, monochrome.",
      "type": "string"
    },
    "harmony": {
      "description": "e.g. analogous, complementary, triadic, monochromatic, split-complementary, tetradic.",
      "type": "string"
    },
    "color_count": {
      "description": "Exact number of colors.",
      "minimum": 2,
      "maximum": 10,
      "type": "integer"
    },
    "tags": {
      "description": "Tag slugs — ALL must match (AND).",
      "type": "array"
    },
    "order": {
      "description": "Sort order (default newest).",
      "enum": [
        "newest",
        "popular",
        "name"
      ],
      "type": "string"
    },
    "per_page": {
      "description": "Results per page (default 24).",
      "minimum": 1,
      "maximum": 100,
      "type": "integer"
    },
    "page": {
      "description": "Page number.",
      "minimum": 1,
      "type": "integer"
    }
  }
}
🟢get_palette(id)

Get one color palette by id: its colors (hex), name/derived title, mood, harmony, temperature and tags.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Palette id.",
      "type": "integer"
    }
  },
  "required": [
    "id"
  ]
}
🟢minify_code(code, type, mode, keep_license)

Minify or beautify JS, CSS, HTML, SVG, JSON or XML text. Set type=auto to sniff the language. The code is only parsed and re-printed — never executed and never stored. Rate limit: 30 calls/min per IP.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "code": {
      "description": "Source code to transform.",
      "type": "string"
    },
    "type": {
      "description": "Source language, or 'auto' to sniff.",
      "enum": [
        "js",
        "css",
        "html",
        "svg",
        "json",
        "xml",
        "auto"
      ],
      "type": "string"
    },
    "mode": {
      "description": "Default minify.",
      "enum": [
        "minify",
        "beautify"
      ],
      "type": "string"
    },
    "keep_license": {
      "description": "Preserve /*! ... */ license comments when minifying.",
      "type": "boolean"
    }
  },
  "required": [
    "code",
    "type"
  ]
}
🟢detect_code(code)

Detect the language/format of a code snippet. Static analysis only — the snippet is never executed and never stored.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "code": {
      "description": "Snippet to inspect. Max 200,000 chars.",
      "type": "string"
    }
  },
  "required": [
    "code"
  ]
}
🟢convert_code(code, from, to, options)

Convert code between text formats (e.g. JSON↔YAML, CSS↔SCSS). Pure text transformation: the source is parsed and re-serialized, never executed and never stored. Use list_code_converters for valid from/to ids and per-converter options. Rate limit: 30 calls/min per IP.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "code": {
      "description": "Source code to convert.",
      "type": "string"
    },
    "from": {
      "description": "Source format id (see list_code_converters).",
      "type": "string"
    },
    "to": {
      "description": "Target format id.",
      "type": "string"
    },
    "options": {
      "description": "Per-converter options (see optionsSchema in list_code_converters).",
      "type": "object"
    }
  },
  "required": [
    "code",
    "from",
    "to"
  ]
}

Empfohlene Prompts

search_research
Search for information about [topic] using Jinero
Erwartete Tools: search_fonts
find_specific
Find [specific item] using Jinero
Erwartete Tools: search_fonts
retrieve_data
Get details about [item] from Jinero
Erwartete Tools: get_font
fetch_info
Fetch [information type] using Jinero
Erwartete Tools: get_font
research_workflow
Search for [topic], then get detailed information about the top results using Jinero
Erwartete Tools: search_fontsget_font

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet15 Tools
verifiziertVersion nicht aufgezeichnet15 Tools