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:
@@ -10,6 +10,7 @@
|
|||||||
"homepage": "https://github.com",
|
"homepage": "https://github.com",
|
||||||
"repository": "https://github.com/anthropics/mcp-servers",
|
"repository": "https://github.com/anthropics/mcp-servers",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"icon": "https://github.githubassets.com/favicons/favicon.svg",
|
||||||
"keywords": ["github", "git", "code", "issues", "pull-requests"]
|
"keywords": ["github", "git", "code", "issues", "pull-requests"]
|
||||||
},
|
},
|
||||||
"install": [
|
"install": [
|
||||||
|
|||||||
@@ -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",
|
"version": "0.1",
|
||||||
"server": {
|
"server": {
|
||||||
"name": "ironlicensing",
|
"name": "ironlicensing",
|
||||||
@@ -10,6 +10,7 @@
|
|||||||
"homepage": "https://www.ironlicensing.com",
|
"homepage": "https://www.ironlicensing.com",
|
||||||
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
|
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"icon": "https://www.ironlicensing.com/favicon.svg",
|
||||||
"keywords": ["licensing", "saas", "product-management", "analytics", "tiers", "features"]
|
"keywords": ["licensing", "saas", "product-management", "analytics", "tiers", "features"]
|
||||||
},
|
},
|
||||||
"install": [
|
"install": [
|
||||||
|
|||||||
@@ -55,6 +55,11 @@
|
|||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "SPDX license identifier"
|
"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": {
|
"keywords": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": { "type": "string" },
|
"items": { "type": "string" },
|
||||||
|
|||||||
4
spec.md
4
spec.md
@@ -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",
|
"homepage": "string (optional) — URL to project homepage",
|
||||||
"repository": "string (optional) — URL to source repository",
|
"repository": "string (optional) — URL to source repository",
|
||||||
"license": "string (optional) — SPDX license identifier",
|
"license": "string (optional) — SPDX license identifier",
|
||||||
|
"icon": "string (optional) — URL to the server's icon (square, PNG or SVG)",
|
||||||
"keywords": ["string (optional) — discovery tags"]
|
"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`).
|
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)
|
#### `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.
|
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",
|
"homepage": "https://www.ironlicensing.com",
|
||||||
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
|
"repository": "https://git.marketally.com/IronServices/ironlicensing-mcp",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"icon": "https://www.ironlicensing.com/favicon.svg",
|
||||||
"keywords": ["licensing", "saas", "product-management", "analytics"]
|
"keywords": ["licensing", "saas", "product-management", "analytics"]
|
||||||
},
|
},
|
||||||
"install": [
|
"install": [
|
||||||
|
|||||||
Reference in New Issue
Block a user