anthropics / anthropics/claude-ai-mcp
Support icons field from MCP serverInfo for custom connectors
- Linguagem predominante
- Sem dados de linguagem
- Estrelas
- 471
- Forks
- 76
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
### Problem Statement
## Problem
Custom connectors in Claude.ai always display a generic globe icon, even when the MCP server provides an `icons` field in the `serverInfo` of the `initialize` response — as defined by the
MCP spec (SEP-973, spec version `2025-11-25`).
There is no documented mechanism to set a custom icon for a remote MCP server connector in Claude.ai.
## Current behavior
All custom connectors show the same generic globe icon regardless of server configuration.
## Expected behavior
Claude.ai should read the `icons` array from the MCP `initialize` response's `serverInfo` and display the server's icon in the connectors list.
## Server configuration (working correctly)
```javascript
const server = new McpServer({
name: "XYZ",
version: "1.0.0",
icons: [
{
src: "data:image/png;base64,iVBORw0KGgo...",
mimeType: "image/png",
sizes: ["128x128"],
},
],
});
The icons field is part of the ImplementationSchema in the MCP SDK (@modelcontextprotocol/sdk ^1.27.0) and is correctly included in the initialize response.
Context
- The MCP spec supports icons in Implementation since version 2025-11-25 (SEP-973)
- Claude Desktop does render icons for local Desktop Extensions via mcpb manifests (modelcontextprotocol/mcpb#154, fixed Feb 2026)
- The official Anthropic documentation on building custom connectors does not mention any icon mechanism
- Other clients (HasMCP, HolmesGPT) have implemented icons support from serverInfo
### Proposed Solution
Proposal
Support at least one of these approaches for custom connector icons:
1. Read icons from serverInfo in the MCP initialize response (preferred — already in the spec, data URIs avoid external fetches)
2. Fetch favicon from the server's domain (/favicon.ico or /favicon.png)
3. Use Google Favicon Service based on the server's hostname
Option 1 is the most reliable as it doesn't depend on external services or DNS/crawling.
### Alternatives Considered
What I've tried
1. icons field with URL (src: "https://mcp.example.com/favicon.png") — not displayed
2. icons field with data URI (src: "data:image/png;base64,...") — not displayed
3. Serving favicon at /favicon.ico and /favicon.png — not fetched by Claude.ai
4. HTML root page with for Google Favicon discovery — not used
### Area
MCP Connector (adding/managing servers)
### Priority
Medium - Would be helpful
### Additional Context
_No response_
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Avaliação
Esta issue ainda não foi avaliada.