feat(spec): add icon field to MCP manifest spec

Add optional icon field to server metadata for displaying server icons in clients. Update JSON schema with URI format validation. Add documentation explaining icon should be square PNG/SVG with fallback behavior. Update examples with icon URLs
This commit is contained in:
2026-04-04 18:10:53 -04:00
parent 8ffa9b306d
commit cd20854242
4 changed files with 12 additions and 1 deletions

View File

@@ -10,6 +10,7 @@
"homepage": "https://github.com",
"repository": "https://github.com/anthropics/mcp-servers",
"license": "MIT",
"icon": "https://github.githubassets.com/favicons/favicon.svg",
"keywords": ["github", "git", "code", "issues", "pull-requests"]
},
"install": [

View File

@@ -1,5 +1,5 @@
{
"$schema": "https://mcp-manifest.org/schema/v0.1.json",
"$schema": "https://mcp-manifest.dev/schema/v0.1.json",
"version": "0.1",
"server": {
"name": "ironlicensing",
@@ -10,6 +10,7 @@
"homepage": "https://www.ironlicensing.com",
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
"license": "MIT",
"icon": "https://www.ironlicensing.com/favicon.svg",
"keywords": ["licensing", "saas", "product-management", "analytics", "tiers", "features"]
},
"install": [

View File

@@ -55,6 +55,11 @@
"type": "string",
"description": "SPDX license identifier"
},
"icon": {
"type": "string",
"format": "uri",
"description": "URL to the server's icon (square, PNG or SVG recommended). Clients SHOULD fall back to a default MCP icon when absent."
},
"keywords": {
"type": "array",
"items": { "type": "string" },

View File

@@ -45,6 +45,7 @@ The manifest MUST be named `mcp-manifest.json` and SHOULD be placed at the root
"homepage": "string (optional) — URL to project homepage",
"repository": "string (optional) — URL to source repository",
"license": "string (optional) — SPDX license identifier",
"icon": "string (optional) — URL to the server's icon (square, PNG or SVG)",
"keywords": ["string (optional) — discovery tags"]
},
@@ -92,6 +93,8 @@ The manifest MUST be named `mcp-manifest.json` and SHOULD be placed at the root
Metadata about the MCP server. The `name` field is the canonical identifier used in client configuration (e.g., the key in `mcpServers`).
The `icon` field is a URL to the server's icon (square, PNG or SVG recommended, minimum 64x64). Clients SHOULD display this icon alongside the server name. When absent, clients SHOULD fall back to a default MCP icon.
#### `install` (required, array)
One or more installation methods, ordered by `priority` (lower = preferred). Clients SHOULD present the highest-priority method that matches the user's environment.
@@ -163,6 +166,7 @@ A pre-built template for the client's MCP server configuration entry. Variables
"homepage": "https://www.ironlicensing.com",
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
"license": "MIT",
"icon": "https://www.ironlicensing.com/favicon.svg",
"keywords": ["licensing", "saas", "product-management", "analytics"]
},
"install": [