Sume MCP connector shows no icon? What serverInfo.icons sends
Sume's hosted MCP server sends a 32x32 PNG in serverInfo.icons. What the MCP schema says about icons, how to check it, and why some clients show a blank tile.
Sume's hosted MCP server advertises a 32x32 PNG icon in the serverInfo it returns on initialize, served from https://mcp.sume.com/icon-32.png. Whether your client draws it is the client's decision, not something you configure on the Sume side.
If you see a blank or generic tile next to the Sume connector, the server is not missing an icon. The usual causes are a client that ignores serverInfo.icons, a cached listing, or a custom connector row that uses its own artwork. This post lays out what the server sends and how to check it.
What the MCP schema allows
The MCP schema reference defines an Icon type with a required src and optional mimeType, sizes and theme. The src can be an HTTP or HTTPS URL or a base64 data: URI.
The same page says consumers must support PNG and JPEG, and should also support SVG and WebP. It adds that consumers should check that icon URLs come from the same domain as the server or a trusted domain, and take care with SVG, which can carry scripts. A PNG on the server's own origin sits inside all of that, which is why a small PNG is a safe default for a server to publish. It also keeps the first response light, since the icon is fetched by URL and is not embedded in the initialize result.
What Sume sends, read 2026-10-10
In the Sume code, the MCP server builds its icon list from its own origin. There is one entry, a PNG of 32 by 32 pixels. The same server answers /icon-32.png and /favicon.ico with a one-day cache header.
Nothing in the repository ties the icon to a theme, and the entry carries no theme field, so a client that wants a dark variant has nothing to switch to.
| Field | MCP schema | Sume server |
|---|---|---|
| src | HTTP(S) URL or data: URI | https://mcp.sume.com/icon-32.png, on the MCP origin |
| mimeType | Optional override | image/png |
| sizes | Optional list such as 48x48 | 32x32 |
| theme | Optional light or dark | Not set |
| Cache | Not specified | public, max-age=86400 on the icon and favicon routes |
Check it yourself
You do not need a client to test this. Fetch the icon URL, read the content type, and confirm the file is a PNG of the stated size. Then use the MCP inspector or your client's debug log to read the initialize result and look for serverInfo.icons.
If the file is fine and the field is present, the gap is on the client side. In that case there is nothing to change on the Sume server, and the fastest fix is usually to rename or re-add the connector so the client rereads the listing. Keep a note of the client version you tested, so that a later report is specific. Because the icon routes carry a one-day cache header, a change to the artwork on the server could take up to a day to appear in a client that honors that header, which is another reason to test with a fresh fetch rather than the cached tile.
- Request
https://mcp.sume.com/icon-32.pngand check for a 200 and animage/pngcontent type. - Read the
initializeresponse and look forserverInfo.icons. - Remove and re-add the connector, in case the client cached the first listing.
- If the client has its own icon field for custom connectors, set it there.
curl -s https://mcp.sume.com/icon-32.png -o icon.png -D - | head -n 8
file icon.pngWhat to expect from clients
Icons in serverInfo are optional for a client to display, and clients differ. Whether yours draws one is a question for that client's own documentation, which this post does not cover. Do not file a Sume bug for the second kind before you have checked the steps above.
Sign-in and tool behavior do not depend on the icon at all. Whether you connect through OAuth or an API key, the MCP overview describes the same tool set, and the OAuth and API keys page covers the choice. For client setup, see Sume MCP in VS Code.
Sources
Related posts
More in Integrations
- Systeme.io video hosting: 2 GB max, 100 MB recommended, fit a clip
Systeme.io lets you host video up to 2 GB but recommends 100 MB or less. Plan a Sume sales-page clip around that budget and trim what does not fit.
- ClickUp taskStatusUpdated webhook: start a Sume Format run
Start a Sume Format run when a ClickUp task changes status: verify X-Signature, derive the Idempotency-Key from the task, cap spend, and write the result back.
- Trello webhook HMAC-SHA1 vs Sume HMAC-SHA256 in one receiver
Can one server verify Trello and Sume webhooks? Yes, with two verifiers: Trello signs body plus callback URL with SHA-1, Sume signs timestamp.body with SHA-256.
- Vercel protection bypass in a Sume webhook URL
Sume cannot add a custom header to a webhook, but Vercel accepts the bypass secret as a query parameter. Check what Sume keeps and who can see the URL.
Written by Sume