{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_syqczj5m5sve","handle":"mcp-recognize-image","url":"https://wellknown.network/agents/mcp-recognize-image","links":{"self":"https://wellknown.network/agents/mcp-recognize-image/record.json","html":"https://wellknown.network/agents/mcp-recognize-image","markdown":"https://wellknown.network/agents/mcp-recognize-image/record.md","api":"https://wellknown.network/api/v1/agents/mcp-recognize-image","status":"https://wellknown.network/api/v1/agents/mcp-recognize-image/status","claim":"https://wellknown.network/agents/mcp-recognize-image/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/mcp-recognize-image/claim.json","badge":"https://wellknown.network/agents/mcp-recognize-image/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/mcp-recognize-image/history","tools":"https://wellknown.network/api/v1/agents/mcp-recognize-image/tools"},"ard":{"identifier":"urn:air::server:mcp-recognize-image","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"mcp-recognize-image","summary":"MCP server that lets text-only models 'see' images via configurable vision LLM providers with priority fallback","description":"# mcp-recognize-image\n\nAn MCP (Model Context Protocol) server that gives **text-only models the ability\nto \"see\" images**. It routes image-recognition requests through configurable\nmultimodal (vision) LLM providers, with **priority-ordered automatic fallback**:\nif the top provider fails (auth / rate-limit / error / timeout), the next is tried.\n\n## Install (end users)\n\n```bash\nuvx mcp-recognize-image\n```\n\nInstall [uv](https://docs.astral.sh/uv/) first if needed:\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\nOr with pip:\n\n```bash\npip install mcp-recognize-image\n```\n\n## Configure\n\nWorks out of the box with the bundled default providers (free vision endpoints\npre-filled). You only need to set API keys for the providers you have:\n\n```bash\nexport GEMINI_API_KEY=...         # free tier: https://aistudio.google.com\nexport SILICONFLOW_API_KEY=...    # free tier: https://cloud.siliconflow.cn\nexport OPENROUTER_API_KEY=...     # free models: https://openrouter.ai\n```\n\n### Custom endpoint (zero config file)\n\nPoint it at **any** OpenAI-compatible endpoint (OpenAI, Azure OpenAI, Ollama, LM Studio,\nDeepSeek, Moonshot, …) with three env vars — no config file needed. The API key lives in\nthe env (never on disk):\n\n```bash\nexport VISION_BASE_URL=\"https://api.openai.com/v1\"\nexport VISION_API_KEY=\"sk-...\"\nexport VISION_MODEL=\"gpt-4o\"\n# optional: VISION_ADAPTER (openai_compat|gemini|anthropic, default openai_compat)\n# optional: VISION_PRIORITY (default 0 = tried first)\n```\n\nWith these set and no config file, **only** this custom provider is used. In an MCP\nclient config, put the same vars in the `env` block.\n\nConfig path resolution (only if you customize the provider list):\n\n1. `VISION_MCP_CONFIG` env var (absolute path)\n2. `~/.config/vision-mcp/config.toml`\n3. bundled `config.example.toml` (fallback — used by default)\n\nTo customize the provider list, copy the bundled example and edit (from a source\ncheckout):\n\n```bash\nmkdir -p ~/.config/vision-mcp\ncp src/vision_mcp/confi…","publisher":null,"homepage":null,"repository":null,"version":"0.3.0","license":null,"protocols":["mcp"],"tags":["mcp","model-context-protocol","vision","image-recognition","multimodal","vlm"],"pricing":null,"endpoints":[{"url":"pypi:mcp-recognize-image","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","summary":"pypi","version":"pypi","description":"pypi"}},"derived":{"capabilities":[{"slug":"media.image-understanding","name":"Image Understanding","confidence":1,"provenance":"declared"},{"slug":"ai.model-access","name":"Model Access","confidence":0.894,"provenance":"derived"}],"categories":["ai","media"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"mcp-recognize-image","registry":"pypi","observedAt":"2026-10-22T10:32:29.355Z","publishedAt":"2026-07-02T08:45:43.677055Z","latestVersion":"0.3.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"mcp-recognize-image","url":"https://pypi.org/project/mcp-recognize-image/","firstSeenAt":"2026-09-10T03:19:08.761Z","fetchedAt":"2026-10-22T10:31:21.612Z","normalizedAt":"2026-10-22T10:31:21.612Z"}]},"firstSeenAt":"2026-09-10T03:19:08.761Z","updatedAt":"2026-10-22T10:32:29.355Z"}