| name | mcp-capability-declarator |
| description | Generate MCP capability declarations from tool and resource inventory with proper versioning and feature flags. |
| allowed-tools | Read, Write, Edit, Bash, Glob, Grep |
| graph | {"domains":["domain:software-engineering"],"specializations":["specialization:cli-mcp-development"],"skillAreas":["skill-area:mcp-server-implementation","skill-area:mcp-tool-design"],"roles":["role:backend-engineer","role:platform-engineer"],"workflows":["workflow:feature-development"],"topics":["topic:developer-experience"]} |
MCP Capability Declarator
Generate MCP capability declarations from tool/resource inventory.
Capabilities
- Generate capability declarations from inventory
- Create initialization options
- Set up feature flags
- Implement capability negotiation
- Document server capabilities
- Generate capability tests
Usage
Invoke this skill when you need to:
- Declare MCP server capabilities
- Generate initialization options
- Document supported features
- Implement capability negotiation
Inputs
| Parameter | Type | Required | Description |
|---|
| serverName | string | Yes | Server name |
| version | string | Yes | Server version |
| tools | array | No | Tool capabilities |
| resources | array | No | Resource capabilities |
| prompts | array | No | Prompt capabilities |
Generated Patterns
TypeScript Capability Declaration
import { ServerCapabilities, InitializationOptions } from '@modelcontextprotocol/sdk/types.js';
export const SERVER_INFO = {
name: 'my-mcp-server',
version: '1.0.0',
} as const;
export const CAPABILITIES: ServerCapabilities = {
tools: {
listChanged: true,
},
resources: {
subscribe: true,
listChanged: true,
},
prompts: {
listChanged: true,
},
logging: {},
};
export const TOOL_DEFINITIONS = [
{
name: 'search_files',
description: 'Search for files matching a pattern',
inputSchema: {
type: 'object',
properties: {
pattern: { type: 'string', description: },
: { : , : },
},
: [],
},
},
{
: ,
: ,
: {
: ,
: {
: { : , : },
},
: [],
},
},
] ;
= [
{
: ,
: ,
: ,
: ,
},
] ;
(): {
{
: ,
: ,
};
}
= ;
Python Capability Declaration
from dataclasses import dataclass
from typing import List, Dict, Any
@dataclass
class ServerInfo:
name: str = "my-mcp-server"
version: str = "1.0.0"
@dataclass
class ToolDefinition:
name: str
description: str
input_schema: Dict[str, Any]
TOOL_DEFINITIONS: List[ToolDefinition] = [
ToolDefinition(
name="search_files",
description="Search for files matching a pattern",
input_schema={
"type": "object",
"properties": {
"pattern": {"type": "string"},
"path": {"type": "string"},
},
"required": ["pattern"],
},
),
]
CAPABILITIES = {
"tools": {"listChanged": True},
"resources": {"subscribe": True, "listChanged": True},
"prompts": {"listChanged": True},
"logging": {},
}
def () -> :
{
: {
: ServerInfo.name,
: ServerInfo.version,
},
: CAPABILITIES,
}
Workflow
- Inventory tools - List all tools
- Inventory resources - List all resources
- Define capabilities - Feature flags
- Generate declarations - Capability objects
- Create init options - Initialization
- Document capabilities - API docs
Target Processes
- mcp-server-bootstrap
- mcp-tool-implementation
- mcp-tool-documentation