Shakespeare's Monologues

Search Shakespeare monologues, plays, paraphrases and summaries from shakespeare-monologues.org

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
100%
命名の品質
96%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(1)

  • LOWTool 'list_all_monologues_for_a_character' name length outside 3-30 rangelist_all_monologues_for_a_character 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~2,083トークン数(ツール定義)
~2.6 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.63%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "shakespeare-monologues": {
      "command": "npx",
      "args": [
        "shakespeare-monologues-mcp"
      ]
    }
  }
}

実行可能なパッケージ

npmshakespeare-monologues-mcp0.1.0stdio

リモートエンドポイント

https://mcp.shakespeare-monologues.org/mcpstreamable-http

できること

ツール一覧

ツール(9)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢search_monologues(query, gender, play, style, act, ...)

Search Shakespeare monologues by free text (matches character, play, or first line) plus optional filters. Returns matches, each with a permalink `url`.

入力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free text — matched against character name, play title, and first line."
    },
    "gender": {
      "type": "string",
      "enum": [
        "Men",
        "Women",
        "Both"
      ],
      "description": "Role gender: Men, Women, or Both. Natural words like 'male'/'female' are accepted. 'Men'/'Women' also include gender-neutral ('Both') roles."
    },
    "play": {
      "type": "string",
      "description": "Exact or partial play title."
    },
    "style": {
      "type": "string",
      "enum": [
        "Verse",
        "Prose"
      ],
      "description": "Verse or prose."
    },
    "act": {
      "type": "integer",
      "description": "Filter to a specific act number."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Max results to return (default 25)."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_monologue(id, monologue_id, context)

Fetch one monologue's catalogue entry by its numeric id. Follow the returned `url` for the full text.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "The monologue's numeric id (from search_monologues)."
    },
    "monologue_id": {
      "type": "integer",
      "description": "Deprecated alias for `id`."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪random_monologue(gender, play, context)

Return one random monologue, with optional gender/play filters. Useful for a suggestion when the user is undecided.

入力スキーマ

{
  "type": "object",
  "properties": {
    "gender": {
      "type": "string",
      "enum": [
        "Men",
        "Women",
        "Both"
      ],
      "description": "Role gender: Men, Women, or Both. Natural words like 'male'/'female' are accepted. 'Men'/'Women' also include gender-neutral ('Both') roles."
    },
    "play": {
      "type": "string",
      "description": "Exact or partial play title."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_plays(context)

List Shakespeare's plays with their classification (Comedy/History/Tragedy) and monologue counts.

入力スキーマ

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_all_monologues_for_a_character(character, limit, context)

List every monologue spoken by a given character (e.g. 'Hamlet', 'Rosalind'). Matches the character name exactly first, then as a substring.

入力スキーマ

{
  "type": "object",
  "properties": {
    "character": {
      "type": "string",
      "description": "Character name."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "description": "Max results (default 50)."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "character",
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_monologue_of_the_day(context)

The current 'Monologue of the Day' — the piece most recently posted to the site's social feeds.

入力スキーマ

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_paraphrased_monologue(id, monologue_id, context)

Fetch a monologue's full text alongside its modern-English, line-by-line paraphrase. The paraphrase is AI-generated (Claude) and may be null if it hasn't been generated yet — the `url` always has the monologue itself.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "The monologue's numeric id (from search_monologues)."
    },
    "monologue_id": {
      "type": "integer",
      "description": "Deprecated alias for `id`."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_scene_summary(id, monologue_id, context)

Fetch an AI-generated summary of the scene a monologue appears in (context for the speech). May be null if not generated yet.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "The monologue's numeric id (from search_monologues)."
    },
    "monologue_id": {
      "type": "integer",
      "description": "Deprecated alias for `id`."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_play_summary(play, context)

Fetch an AI-generated summary of a play (e.g. 'Hamlet', 'The Tempest'). May be null if not generated yet.

入力スキーマ

{
  "type": "object",
  "properties": {
    "play": {
      "type": "string",
      "description": "Play title (exact or partial)."
    },
    "context": {
      "type": "string",
      "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""
    }
  },
  "required": [
    "play",
    "context"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 9 件
検証済みバージョンは記録されていませんツール 9 件