Skip to content
cccskills
FreePublished on GitHub

mcp-capability-declarator

Generate MCP capability declarations from tool and resource inventory with proper versioning and feature flags.

The English summary is being prepared. Showing the original description.

See how to install

Files included (2)

  • SKILL.md4.8 KB
  • README.md976 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

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

ParameterTypeRequiredDescription
serverNamestringYesServer name
versionstringYesServer version
toolsarrayNoTool capabilities
resourcesarrayNoResource capabilities
promptsarrayNoPrompt capabilities

Generated Patterns

TypeScript Capability Declaration

import { ServerCapabilities, InitializationOptions } from '@modelcontextprotocol/sdk/types.js';

// Server metadata
export const SERVER_INFO = {
  name: 'my-mcp-server',
  version: '1.0.0',
} as const;

// Capability declarations
export const CAPABILITIES: ServerCapabilities = {
  tools: {
    // Tool capabilities
    listChanged: true,
  },
  resources: {
    // Resource capabilities
    subscribe: true,
    listChanged: true,
  },
  prompts: {
    // Prompt capabilities
    listChanged: true,
  },
  logging: {},
};

// Tool definitions
export const TOOL_DEFINITIONS = [
  {
    name: 'search_files',
    description: 'Search for files matching a pattern',
    inputSchema: {
      type: 'object',
      properties: {
        pattern: { type: 'string', description: 'Glob pattern' },
        path: { type: 'string', description: 'Base path' },
      },
      required: ['pattern'],
    },
  },
  {
    name: 'read_file',
    description: 'Read contents of a file',
    inputSchema: {
      type: 'object',
      properties: {
        path: { type: 'string', description: 'File path' },
      },
      required: ['path'],
    },
  },
] as const;

// Resource templates
export const RESOURCE_TEMPLATES = [
  {
    uriTemplate: 'file:///{path}',
    name: 'File',
    description: 'Access file contents',
    mimeType: 'text/plain',
  },
] as const;

// Create initialization options
export function createInitializationOptions(): InitializationOptions {
  return {
    serverInfo: SERVER_INFO,
    capabilities: CAPABILITIES,
  };
}

// Capability documentation
export const CAPABILITY_DOCS = `
# ${SERVER_INFO.name} v${SERVER_INFO.version}

## Supported Capabilities

### Tools
${TOOL_DEFINITIONS.map(t => `- **${t.name}**: ${t.description}`).join('\n')}

### Resources
- File access via \`file:///\` URI scheme
- Resource subscription support
- List change notifications

### Prompts
- Dynamic prompt templates
- List change notifications

## Feature Flags
- Tool list change notifications: enabled
- Resource subscriptions: enabled
`;

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 create_initialization_options() -> dict:
    return {
        "serverInfo": {
            "name": ServerInfo.name,
            "version": ServerInfo.version,
        },
        "capabilities": CAPABILITIES,
    }

Workflow

  1. Inventory tools - List all tools
  2. Inventory resources - List all resources
  3. Define capabilities - Feature flags
  4. Generate declarations - Capability objects
  5. Create init options - Initialization
  6. Document capabilities - API docs

Target Processes

  • mcp-server-bootstrap
  • mcp-tool-implementation
  • mcp-tool-documentation

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Provide implementations of advanced data structures

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

Fresh adversarial code review with binary PASS/FAIL verdicts, evidence citations, and anchoring bias prevention via fresh reviewer spawning.

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

WASM-based instant code transforms for simple tasks, achieving 352x speedup over LLM inference with zero cost.

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

Coordinate Crew (persistent) and Polecat (transient) agents using Gas Town's hook-based work distribution and GUPP principle.

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

Generate visual representations of algorithm execution

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

Hierarchical coordination and drift detection with frequent checkpoints, shared memory coherence validation, role specialization enforcement, and short task cycles.

The English summary is being prepared. Showing the original description.

a5c-ai/babysitter1.9KUpdated Sep 17, 2026

See all skills by a5c-ai

Report a problem with this skill