Cover image
Try Now
2025-03-24

The Opera Omnia MCP server provides programmatic access to the rich collection of JSON datasets from the Opera Omnia project. It enables developers, storytellers, and AI applications to easily access, combine, and generate creative content for games, interactive fiction, chatbots, and more.

3 years

Works with Finder

1

Github Watches

1

Github Forks

0

Github Stars

Opera Omnia MCP Server

An MCP server that provides access to the rich collection of JSON datasets from the Opera Omnia project, a comprehensive library of creative content for games, storytelling, and bot development.

Features

  • Access to all Opera Omnia datasets
  • Random selection from datasets
  • Filtering datasets by criteria
  • Combining multiple datasets
  • Generating creative content using templates

Installation

  1. Clone this repository
  2. Install dependencies:
npm install
  1. Build the project:
npm run build

Usage

Running the Server

npm start

MCP Configuration

Add the following to your MCP settings file:

{
  "mcpServers": {
    "opera-omnia": {
      "command": "node",
      "args": ["path/to/opera-omnia-mcp/build/index.js"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Replace path/to/opera-omnia-mcp with the actual path to this project.

Available Tools

list_categories

List all available data categories.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "list_categories",
  arguments: {}
});

list_datasets

List all datasets within a category.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "list_datasets",
  arguments: {
    category: "characters"
  }
});

get_dataset

Get the complete contents of a specific dataset.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "get_dataset",
  arguments: {
    category: "characters",
    dataset: "personalities"
  }
});

get_random_item

Get a random item from a specific dataset.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "get_random_item",
  arguments: {
    category: "characters",
    dataset: "personalities"
  }
});

get_filtered_items

Get items from a dataset that match specific criteria.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "get_filtered_items",
  arguments: {
    category: "characters",
    dataset: "personalities",
    filter: "brave"
  }
});

combine_datasets

Combine multiple datasets and get random selections.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "combine_datasets",
  arguments: {
    datasets: [
      { category: "characters", dataset: "personalities" },
      { category: "characters", dataset: "backstories" }
    ],
    count: 3
  }
});

generate_content

Generate creative content based on multiple datasets.

const result = await use_mcp_tool({
  server_name: "opera-omnia",
  tool_name: "generate_content",
  arguments: {
    template: "A {adjective} {class} must {quest} to obtain {artifact}",
    datasets: {
      adjective: { category: "attributes", dataset: "adjectives" },
      class: { category: "rpg", dataset: "classes" },
      quest: { category: "situations", dataset: "quests" },
      artifact: { category: "equipment", dataset: "artifacts" }
    }
  }
});

Available Resources

opera-omnia://categories

List of all available data categories.

const result = await access_mcp_resource({
  server_name: "opera-omnia",
  uri: "opera-omnia://categories"
});

opera-omnia://category/{category}

List of datasets available in a specific category.

const result = await access_mcp_resource({
  server_name: "opera-omnia",
  uri: "opera-omnia://category/characters"
});

opera-omnia://dataset/{category}/{dataset}

Contents of a specific dataset.

const result = await access_mcp_resource({
  server_name: "opera-omnia",
  uri: "opera-omnia://dataset/characters/personalities"
});

Future Enhancements

We have several ideas for future enhancements to the Opera Omnia MCP server:

  1. Advanced Content Generation: Add more sophisticated content generation capabilities beyond simple template substitution.

  2. Improved Caching: Implement better caching mechanisms for improved performance, especially for frequently accessed datasets.

  3. User-Contributed Datasets: Add support for user-contributed datasets, allowing users to extend the available content.

  4. Visualization Tools: Create visualization tools for exploring the data and understanding relationships between different datasets.

  5. Local Data Files: Add support for local data files as an alternative to fetching from GitHub.

  6. Integration Examples: Provide more examples of integrating the MCP server with different applications and frameworks.

Release Notes

For detailed information about the current and past releases, see the RELEASE_NOTES.md file.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • momi
  • Provides initial medical assessments and advice.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yasir Eryilmaz
  • AI scriptwriting assistant for short, engaging video content.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • Daren White
  • A supportive coach for mastering all Spanish tenses.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • huahuayu
  • A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.

  • deemkeen
  • control your mbot2 with a power combo: mqtt+mcp+llm

  • zhaoyunxing92
  • 本项目是一个钉钉MCP(Message Connector Protocol)服务,提供了与钉钉企业应用交互的API接口。项目基于Go语言开发,支持员工信息查询和消息发送等功能。

  • justmywyw
  • Short and sweet example MCP server / client implementation for Tools, Resources and Prompts.

  • KasarLabs
  • Build powerful and secure AI Agents powered by Starknet.

    Reviews

    4 (1)
    Avatar
    user_ZT3K1oHr
    2025-04-15

    The Spline MCP Server by aydinfer is an exceptional product for any MCP enthusiast. It offers seamless integration and reliable performance, making server management more efficient and enjoyable. I've found it to be user-friendly and incredibly robust, even under heavy loads. Highly recommended! Check it out at https://mcp.so/server/spline-mcp-server/aydinfer.