An MCP (Model Context Protocol) server that provides access to schema.org vocabulary for structured data.
- Get Schema Type: Retrieve detailed information about any schema.org type
- Search Schemas: Search for schema types by keyword
- Type Hierarchy: Explore inheritance relationships between types
- Type Properties: List all properties available for a type (including inherited)
- Generate Examples: Create example JSON-LD for any schema type
- Run Performance Tests: Execute Core Web Vitals, Load, Stress, Soak, and Scalability tests
- Schema Impact Analysis: Analyze the impact of schema.org implementation on SEO, LLM, and performance
- Before/After Comparisons: Compare website performance before and after schema.org changes
- Comprehensive Test Suites: Run complete performance test suites (quick, comprehensive, endurance)
- Structured Reports: Generate schema.org-marked performance reports
# Clone the repository
git clone https://github.com/yourusername/schema-org-mcp.git
cd schema-org-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Run the server
npm startAdd this to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"schema-org": {
"command": "node",
"args": ["/path/to/schema-org-mcp/dist/index.js"]
}
}
}Get detailed information about a schema.org type.
{
"typeName": "Person"
}Search for schema types by keyword.
{
"query": "article",
"limit": 10
}Get the inheritance hierarchy for a type.
{
"typeName": "NewsArticle"
}Get all properties available for a type.
{
"typeName": "Organization",
"includeInherited": true
}Generate an example JSON-LD for a type.
{
"typeName": "Recipe",
"properties": {
"name": "Chocolate Chip Cookies",
"prepTime": "PT20M"
}
}Run a performance test on a website URL.
{
"url": "https://example.com",
"testType": "core-web-vitals",
"options": {
"iterations": 5
}
}Run a comprehensive performance test suite.
{
"url": "https://example.com",
"suiteType": "comprehensive"
}Compare two performance test results.
{
"beforeResult": { ... },
"afterResult": { ... }
}Analyze the impact of schema.org implementation.
{
"url": "https://example.com"
}# Run TypeScript compiler in watch mode
npm run dev
# Run tests
npm test
# Build for production
npm run buildThe server downloads and caches the complete schema.org vocabulary in JSON-LD format. It then provides various tools to:
- Query type definitions and their properties
- Navigate the type hierarchy
- Generate valid JSON-LD examples
- Search through the entire vocabulary
The data is fetched from the official schema.org JSON-LD file and indexed in memory for fast access.
User: "What schema types should I use for a blog post?"
Assistant uses: search_schemas with query "blog"
Then: get_type_hierarchy for "BlogPosting"
Finally: generate_example for "BlogPosting"
User: "What properties can I use for a Product?"
Assistant uses: get_type_properties for "Product" with includeInherited: true
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see LICENSE file for details.