Integration · MODEL CONTEXT PROTOCOL
triptych opera omnia mcp
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.
连接能力
triptych opera omnia mcp 为 AI Agent 提供什么
- Access to all Opera Omnia datasets
- Random selection from datasets
- Filtering datasets by criteria
- Combining multiple datasets
- Generating creative content using templates
- Clone this repository
- Install dependencies:
- Build the project:
- **Advanced Content Generation**: Add more sophisticated content generation capabilities beyond simple template substitution.
- **Improved Caching**: Implement better caching mechanisms for improved performance, especially for frequently accessed datasets.
- **User-Contributed Datasets**: Add support for user-contributed datasets, allowing users to extend the available content.
- **Visualization Tools**: Create visualization tools for exploring the data and understanding relationships between different datasets.
- **Local Data Files**: Add support for local data files as an alternative to fetching from GitHub.
- **Integration Examples**: Provide more examples of integrating the MCP server with different applications and frameworks.
安全
MCP 收录不等于安全审核
MCP 服务器可能获得模型上下文、凭据、本地文件或调用外部系统的权限。连接 Agent 前,请检查代码、环境变量、网络行为、软件包来源与维护状态。
README
仓库文档
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.
- Access to all Opera Omnia datasets
- Random selection from datasets
- Filtering datasets by criteria
- Combining multiple datasets
- Generating creative content using templates
- Clone this repository
- Install dependencies:
npm install- Build the project:
npm run buildnpm startAdd 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.
List all available data categories.
const result = await use_mcp_tool({
server_name: "opera-omnia",
tool_name: "list_categories",
arguments: {}
});List all datasets within a category.
const result = await use_mcp_tool({
server_name: "opera-omnia",
tool_name: "list_datasets",
arguments: {
category: "characters"
}
});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 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 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 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 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" }
}
}
});List of all available data categories.
const result = await access_mcp_resource({
server_name: "opera-omnia",
uri: "opera-omnia://categories"
});List of datasets available in a specific category.
const result = await access_mcp_resource({
server_name: "opera-omnia",
uri: "opera-omnia://category/characters"
});Contents of a specific dataset.
const result = await access_mcp_resource({
server_name: "opera-omnia",
uri: "opera-omnia://dataset/characters/personalities"
});We have several ideas for future enhancements to the Opera Omnia MCP server:
-
Advanced Content Generation: Add more sophisticated content generation capabilities beyond simple template substitution.
-
Improved Caching: Implement better caching mechanisms for improved performance, especially for frequently accessed datasets.
-
User-Contributed Datasets: Add support for user-contributed datasets, allowing users to extend the available content.
-
Visualization Tools: Create visualization tools for exploring the data and understanding relationships between different datasets.
-
Local Data Files: Add support for local data files as an alternative to fetching from GitHub.
-
Integration Examples: Provide more examples of integrating the MCP server with different applications and frameworks.
For detailed information about the current and past releases, see the RELEASE_NOTES.md file.
This project is licensed under the MIT License - see the LICENSE.md file for details.
社区