take-code-0427

omoshiro-mcp

Community take-code-0427
Updated

omoshiro-mcp

Research-grounded MCP server for analyzing interestingness / 面白さ.

This server does not score content. It returns evaluation lenses, conceptual boundaries, interaction patterns, and research references so that the calling AI can perform the analysis itself.

Principle

Returns evaluation lenses; does not score content.

The ontology separates:

  • Primitive lenses: constructs an AI can inspect directly or relative to an audience model
  • Derived dynamics: changes over time such as prediction error or uncertainty reduction
  • Composite states/mechanisms: interest, curiosity, suspense, humor, insight, flow, awe, transportation
  • Outcomes: enjoyment, attention, memory, learning, persistence, etc.

This avoids collapsing everything into one meaningless interestingness_score.

MCP endpoint

When deployed on Vercel, use:

https://<your-project>.vercel.app/mcp

Protocol: MCP Streamable HTTP / JSON-RPC.

Tools

get_lenses

Returns a curated set of primitive lenses for a target.

Example arguments:

{
  "target_type": "oogiri",
  "analysis_goal": "humor"
}

search_lenses

Searches primitive and composite constructs by natural-language terms.

{
  "query": "unexpected but understandable"
}

get_lens

Returns the definition, diagnostic questions, conceptual boundaries, applicability, and inferability of a primitive lens.

{"id":"novelty"}

get_composite

Returns a composite mechanism/state and its input constructs.

{"id":"suspense"}

list_ontology

Lists the full ontology and core references.

Core primitive lenses

Current v0.1 includes 21 primitives:

  • novelty
  • complexity
  • comprehensibility
  • processing_fluency
  • relevance
  • information_gap
  • knowability
  • uncertainty
  • expectation_strength
  • outcome_significance
  • conflict_instability
  • violation
  • benignness
  • vastness
  • accommodation_demand
  • challenge
  • competence
  • control
  • autonomy
  • feedback_clarity
  • relatedness

Derived dynamics

  • prediction_error
  • information_gain
  • uncertainty_reduction
  • gap_resolution
  • conflict_resolution
  • comprehension_gain
  • fluency_gain
  • mastery_progress

Composite mechanisms / states

  • interest
  • curiosity
  • suspense
  • humor_benign_violation
  • humor_incongruity_resolution
  • insight
  • flow
  • awe
  • transportation

A composite is not a score. For example:

Interest ≈ novelty/complexity × sufficient comprehensibility
Curiosity ≈ information gap × knowability × relevance × uncertainty
Suspense ≈ uncertainty × expectation strength × outcome significance
Benign-violation humor ≈ violation × benignness
Awe ≈ vastness × accommodation demand

These are conceptual patterns, not validated universal equations.

Inferability

Each lens includes an inferability field:

  • direct: can often be inspected from the content itself
  • audience_model_required: depends on prior knowledge, culture, genre expectations, etc.
  • experience_required: actual psychological state should not be asserted without audience/player evidence

For example, novelty is audience-relative, while actual flow or transportation cannot be reliably asserted just by reading the artifact.

Example workflow

User asks:

こんなエンジニアは嫌だ。どんなエンジニア? 回答:キーボードがでかすぎて部屋に入らない

Calling AI:

  1. calls get_lenses({ target_type: "oogiri", analysis_goal: "humor" })
  2. receives lenses such as expectation_strength, violation, benignness, novelty, comprehensibility, processing_fluency
  3. performs the actual analysis itself
  4. does not ask the MCP to output a humor score

Research basis

The v0.1 ontology is informed by work including:

  • Silvia, P. J. (2005). What Is Interesting? Exploring the Appraisal Structure of Interest. Emotion.
  • Loewenstein, G. (1994). The Psychology of Curiosity: A Review and Reinterpretation. Psychological Bulletin.
  • Kang, M. J. et al. (2009). The Wick in the Candle of Learning: Epistemic Curiosity Activates Reward Circuitry and Enhances Memory. Psychological Science.
  • Reber, R., Schwarz, N., & Winkielman, P. (2004). Processing Fluency and Aesthetic Pleasure. Personality and Social Psychology Review.
  • McGraw, A. P. & Warren, C. (2010). Benign Violations: Making Immoral Behavior Funny. Psychological Science.
  • Keltner, D. & Haidt, J. (2003). Approaching Awe, a Moral, Spiritual, and Aesthetic Emotion. Cognition and Emotion.
  • Ryan, R. M., Rigby, C. S., & Przybylski, A. (2006). The Motivational Pull of Video Games. Motivation and Emotion.
  • Busselle, R. & Bilandzic, H. (2009). Measuring Narrative Engagement. Media Psychology.

The ontology is an engineering synthesis across these literatures, not a claim that one paper defines the complete structure.

Development

The server is intentionally dependency-light and implemented as a Vercel serverless endpoint in api/mcp.js.

A GET request to /mcp returns server metadata. MCP clients should use POST JSON-RPC requests for initialize, tools/list, and tools/call.

License

MIT

MCP Server · Populars

MCP Server · New

    chrismcdermut

    TLDR

    Seize the means of production. Ship 100x. Orchestrate agents as labor for any project. Billionaire theme included - finally, they work for us.

    Community chrismcdermut
    Codeturion

    unity-api-mcp

    Instant, accurate Unity API lookups instead of expensive source file reads, saving your agent tokens, context, and hallucinations

    Community Codeturion
    bromoket

    x64dbg MCP Server

    Drive x64dbg with your AI. MCP server: 23 mega-tools / 153 endpoints for breakpoints, memory, disasm, tracing, anti-debug & PE dumping. Claude/Cursor/Windsurf/Cline. All local.

    Community bromoket
    userFRM

    rpg-encoder

    MCP server that gives AI coding agents semantic understanding of any codebase. Search by intent, auto-sync on edits, whole-repo context in one call. Rust + tree-sitter, 15 languages, 28 tools.

    Community userFRM
    tomyud1

    Godot MCP

    MCP Server and Godot Plugin for AI-assisted game development

    Community tomyud1