omoshiro-mcp
Research-grounded MCP server that provides evaluation lenses and conceptual boundaries for analyzing interestingness, enabling AI to assess humor, curiosity, and suspense without scoring content.
README
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 itselfaudience_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:
- calls
get_lenses({ target_type: "oogiri", analysis_goal: "humor" }) - receives lenses such as
expectation_strength,violation,benignness,novelty,comprehensibility,processing_fluency - performs the actual analysis itself
- 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
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。