Transform data structure definitions into queryable MCP servers
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"struct-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# Struct-MCP Transform data structure definitions into queryable MCP servers. Define your data structures with business context and get an AI-queryable interface that can answer questions about field meanings, data lineage, and structure. ## Quick Start ```bash # Install pip install struct-mcp # Create a structure definition echo "cheese_inventory: description: 'Artisanal cheese catalog' fields: cheese_id: type: string description: 'Unique identifier for each cheese' upstream_table: 'inventory.raw_cheese_data' name: type: string description: 'Display name of the cheese' stinkiness_level: type: integer nullable: true description: 'Stinkiness rating from 1-10' " > cheese.yaml # Start MCP server struct-mcp serve cheese.yaml ``` ## Supported Formats Load from multiple input formats: - **YAML** - Primary format with full business context - **JSON Schema** - Standard JSON Schema files - **OpenSearch** - Elasticsearch/OpenSearch mappings - **Avro** - Apache Avro schemas - **Pydantic** - Python BaseModel classes - **Protocol Buffer** - .proto message definitions ```bash struct-mcp serve schema.yaml # YAML struct-mcp serve schema.json # JSON Schema/OpenSearch/Avro struct-mcp serve model.py # Pydantic struct-mcp serve messages.proto # Protocol Buffer ``` ## What You Can Ask Once loaded, query your structures with natural language: - *"What does the cheese_id field represent?"* - *"Which fields come from the inventory table?"* - *"What fields are nullable and why?"* - *"How is stinkiness_level calculated?"* - *"Show me all array fields"* ## Python API ```python from struct_mcp import StructMCP, MCPServer # Load any format smc = StructMCP.from_file("cheese.yaml") # Query programmatically fields = smc.get_fields("cheese_inventory") nullable_fields = smc.get_fields("cheese_inventory", nullable=True) # Convert between formats opensearch_mapping = smc.to_opensearch() pydantic…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.