aiwg
Version:
Cognitive architecture for AI-augmented software development with structured memory, ensemble validation, and closed-loop correction. FAIR-aligned artifacts, 84% cost reduction via human-in-the-loop, standards adopted by 100+ organizations.
351 lines (317 loc) • 7.97 kB
YAML
# MCP Discovery Schema
# Based on REF-066 MCP Specification 2024-11-05
# Issues: #134, #135, #137
$schema: "https://json-schema.org/draft/2020-12/schema"
$id: "https://aiwg.io/schemas/mcp-discovery/v1"
title: "MCP Server Discovery Schema"
description: |
Schema for MCP server discovery via .well-known/mcp.json.
Enables automatic capability discovery and version negotiation.
type: object
required:
- name
- version
- capabilities
properties:
name:
type: string
default: "aiwg-mcp"
description: "Server name"
version:
type: string
pattern: "^\\d+\\.\\d+\\.\\d+$"
description: "Server version"
description:
type: string
default: "AIWG MCP Server"
protocol_version:
type: string
default: "2024-11-05"
description: "MCP protocol version"
homepage:
type: string
format: uri
default: "https://aiwg.io"
capabilities:
type: object
properties:
resources:
type: boolean
default: true
prompts:
type: boolean
default: true
tools:
type: boolean
default: true
logging:
type: boolean
default: true
sampling:
type: boolean
default: false
resources:
type: array
items:
$ref: "#/$defs/ResourceDefinition"
description: "Available resources"
prompts:
type: array
items:
$ref: "#/$defs/PromptDefinition"
description: "Available prompts"
tools:
type: array
items:
$ref: "#/$defs/ToolDefinition"
description: "Available tools"
$defs:
ResourceDefinition:
type: object
required:
- uri
- name
properties:
uri:
type: string
description: "Resource URI pattern"
name:
type: string
description: "Human-readable name"
description:
type: string
mimeType:
type: string
examples:
type: array
items:
type: string
PromptDefinition:
type: object
required:
- name
properties:
name:
type: string
description: "Prompt identifier"
description:
type: string
arguments:
type: array
items:
type: object
properties:
name:
type: string
description:
type: string
required:
type: boolean
default: false
ToolDefinition:
type: object
required:
- name
properties:
name:
type: string
description: "Tool identifier"
description:
type: string
inputSchema:
type: object
description: "JSON Schema for input"
# AIWG Resource Definitions
aiwg_resources:
research:
uri_pattern: "aiwg://research/{ref_id}"
description: "Research corpus entries"
examples:
- "aiwg://research/REF-056"
- "aiwg://research/REF-057"
content_type: "application/json"
operations:
- list
- read
- search
voices:
uri_pattern: "aiwg://voices/{voice_id}"
description: "Voice profile definitions"
examples:
- "aiwg://voices/technical-authority"
- "aiwg://voices/friendly-explainer"
content_type: "application/json"
operations:
- list
- read
artifacts:
uri_pattern: "aiwg://artifacts/{path}"
description: "SDLC artifacts"
examples:
- "aiwg://artifacts/requirements/UC-001.md"
- "aiwg://artifacts/architecture/sad.md"
content_type: "text/markdown"
operations:
- list
- read
- write
templates:
uri_pattern: "aiwg://templates/{template_id}"
description: "Document templates"
examples:
- "aiwg://templates/use-case"
- "aiwg://templates/adr"
content_type: "text/markdown"
operations:
- list
- read
agents:
uri_pattern: "aiwg://agents/{agent_id}"
description: "Agent definitions"
examples:
- "aiwg://agents/requirements-analyst"
- "aiwg://agents/test-engineer"
content_type: "application/json"
operations:
- list
- read
# AIWG Prompt Definitions
aiwg_prompts:
sdlc_phases:
- name: "sdlc-concept"
description: "Start concept phase for new project"
arguments:
- name: project_name
description: "Name of the project"
required: true
- name: "sdlc-inception"
description: "Begin inception phase"
arguments:
- name: intake_form
description: "Path to intake form"
required: false
- name: "sdlc-elaboration"
description: "Begin elaboration phase"
arguments: []
- name: "sdlc-construction"
description: "Begin construction phase"
arguments: []
- name: "sdlc-transition"
description: "Begin transition phase"
arguments: []
voice_prompts:
- name: "apply-voice"
description: "Apply voice profile to content"
arguments:
- name: voice
description: "Voice profile ID"
required: true
- name: content
description: "Content to transform"
required: true
- name: "analyze-voice"
description: "Analyze content voice characteristics"
arguments:
- name: content
description: "Content to analyze"
required: true
workflow_prompts:
- name: "run-flow"
description: "Execute a workflow"
arguments:
- name: flow
description: "Flow identifier"
required: true
- name: "ralph"
description: "Start Ralph iterative loop"
arguments:
- name: objective
description: "Task objective"
required: true
- name: completion_criteria
description: "How to know when done"
required: true
# .well-known/mcp.json template
wellknown_template:
description: "Template for .well-known/mcp.json"
content: |
{
"name": "aiwg-mcp",
"version": "{{version}}",
"description": "AIWG MCP Server",
"protocol_version": "2024-11-05",
"homepage": "https://aiwg.io",
"capabilities": {
"resources": true,
"prompts": true,
"tools": true,
"logging": true
},
"resources": [
{
"uri": "aiwg://research/*",
"name": "Research Corpus",
"description": "Access research papers and findings"
},
{
"uri": "aiwg://voices/*",
"name": "Voice Profiles",
"description": "Access voice profile definitions"
},
{
"uri": "aiwg://artifacts/*",
"name": "SDLC Artifacts",
"description": "Access project artifacts"
}
],
"prompts": [
{
"name": "sdlc-inception",
"description": "Start SDLC inception phase"
},
{
"name": "apply-voice",
"description": "Apply voice profile to content"
},
{
"name": "ralph",
"description": "Start iterative task loop"
}
]
}
# Agent protocol
agent_protocol:
discovery_generation:
description: "Auto-generate discovery manifest"
triggers:
- framework_install
- framework_update
- on_demand
steps:
- scan_installed_frameworks
- collect_resources
- collect_prompts
- collect_tools
- generate_manifest
- write_wellknown
version_negotiation:
description: "Handle protocol version negotiation"
supported_versions:
- "2024-11-05"
fallback: "2024-11-05"
# Storage
storage:
manifest_path: ".well-known/mcp.json"
cache_ttl: 3600
auto_update: true
# References
references:
research:
- "@.aiwg/research/findings/REF-066-mcp-spec.md"
implementation:
- "#134"
- "#135"
- "#137"
related:
- "@agentic/code/addons/ralph/schemas/mcp-task.yaml"
- "@src/mcp/server.ts"