mcpField
O
oorep-mcp

oorep-mcp

ローカル
github.com/Dhi13manヘルスケア33 日前に更新

oorep-mcp について

oorep-mcpは、AIアシスタントにOOREPのホメオパシー関連レパートリーとマテリア・メディカの参照データを提供し、TypeScript SDKも備えています。症状検索やレメディ情報の取得に加え、症状分析、比較、症例のレパトリゼーションをガイドします。

主な機能

  1. 01複数のレパートリーを横断した症状検索
  2. 02マテリア・メディカ文献の検索
  3. 03レメディの詳細情報の取得
  4. 04レパートリー、文献、レメディのリソース閲覧
  5. 05症状分析とレメディ比較のガイド
  6. 06構造化されたMCP応答

活用シーン

  1. 01症状に該当するルーブリックとレメディの検索
  2. 02特定レメディの説明や適応情報の確認
  3. 03複数のレメディの比較
  4. 04症例を整理して段階的にレパトリゼーション

MCP 対応

MCPサーバーは、レパートリーとマテリア・メディカの検索、レメディ情報、リソース一覧のツール、および手順を案内するプロンプトを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"dhi13man-oorep": {
"command": "npx",
"args": [
"-y",
"oorep-mcp"
]
}
}
}
起動コマンドnpx -y oorep-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmoorep-mcp1.2.5

ツール

5

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
symptomstringはい症状の検索語(3~200 文字)。ワイルドカード(*)、除外(-term)、完全一致フレーズ("phrase")に対応しています。例:"headache"、"head*"、"fever -night"、'"worse from cold"'
minWeightnumberいいえ任意:含めるレメディの最低重み/グレード(1~4)。重みが高いほど関連が強いことを示します。1=弱い、2=中程度、3=強い、4=非常に強い
repertorystringいいえ任意:特定のレパートリー略称で絞り込みます。利用可能な選択肢を確認するには list_available_repertories を使用します。指定しない場合、設定済みのデフォルトレパートリー(OOREP_MCP_DEFAULT_REPERTORY)を使用します。
maxResultsnumberいいえ任意:返す結果の最大数(1~500)。省略時は OOREP_MCP_MAX_RESULTS(100)がデフォルトです。
includeRemedyStatsbooleanいいえ任意:出現頻度の高いレメディを示す集計統計を含めます。デフォルト:true

詳細

OOREP MCP サーバー

npm version CI CodeQL OpenSSF Scorecard License: MIT

AI アシスタントが OOREP のホメオパシーのレパートリーとマテリア・メディカの参照データにアクセスできる、MCP サーバーおよび TypeScript クライアント SDK です。

TL;DR

# Install and run (no setup required)
npx -y oorep-mcp
// Or use programmatically
import { createOOREPClient } from 'oorep-mcp';

const client = createOOREPClient();
const results = await client.searchRepertory({ symptom: 'headache worse motion' });
console.log(results.rubrics);
client.destroy();

AI アシスタントに尋ねてみましょう: 「OOREP で、光によって悪化するズキズキする頭痛に効くレメディを検索して」

OOREP とは?

OOREP(Open Online Repertory) は、以下を含むオープンソースのホメオパシーデータベースです。

  • 12 以上のレパートリー - 症状をレメディに対応付けた体系的な索引(Kent、Boger、Boericke など)
  • 複数のマテリア・メディカ - レメディの詳細な説明と治療適応
  • 600 以上のレメディ - 名称、略称、別名を含む包括的なレメディデータベース
ホメオパシーデータの構造
graph TB
    subgraph Repertory[Repertory Structure]
        Chapter[Chapter<br/>e.g. Head]
        Rubric[Rubric<br/>e.g. Pain - Throbbing]
        R1[Belladonna - 4]
        R2[Glonoine - 3]
        R3[Natrum mur - 2]
        Chapter --> Rubric
        Rubric --> R1
        Rubric --> R2
        Rubric --> R3
    end

    subgraph MateriaMedica[Materia Medica Structure]
        Remedy[Remedy<br/>e.g. Belladonna]
        S1[Mind: Sudden onset...]
        S2[Head: Throbbing pain...]
        S3[...]
        Remedy --> S1
        Remedy --> S2
        Remedy --> S3
    end

この MCP サーバーを使うと、AI アシスタントはこのデータをプログラムから検索できます。

機能

機能説明
レパートリーの検索12 以上のレパートリーから症状を検索し、レメディの重み付けを含む該当ルーブリックを取得します
マテリア・メディカの検索複数の情報源からレメディの説明と適応を探します
レメディ情報600 以上のレメディについて包括的な詳細を取得します
リソース一覧利用可能なレパートリー、マテリア・メディカ、レメディを閲覧します
ガイド付きワークフロー症状分析、レメディ比較、症例のレパートリゼーション用プロンプト
構造化レスポンスoutputSchema と structuredContent を備え、MCP 2025-06-18 に準拠しています
パフォーマンスキャッシュ(TTL 5 分)、リクエストの重複排除、自動再試行を組み込み済み
型安全性すべての入力を Zod で検証する、完全な TypeScript 対応
セキュリティ入力のサニタイズ、エラーメッセージのサニタイズ、認証情報は不要
SDK アダプターOpenAI、Vercel AI SDK、LangChain、Google Gemini と直接統合できます

クイックスタート

npm/npx を使用するには、Node.js 22.12 以降が必要です。

1. Claude Desktop に追加する

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json を編集します Windows: %APPDATA%\Claude\claude_desktop_config.json を編集します

{
  "mcpServers": {
    "oorep": {
      "command": "npx",
      "args": ["-y", "oorep-mcp"]
    }
  }
}
2. Claude Desktop を再起動する

完全に終了(Cmd+Q / Alt+F4)してから、再度開きます。

3. 使い始める

あなた: 「OOREP で、夜に悪化する頭痛に効くレメディを検索して」

Claude の動作:

  1. 症状「夜に悪化する頭痛」を指定して search_repertory を呼び出します
  2. 該当するルーブリックと、レメディおよびその重みを返します
  3. 結果を文脈に沿って説明します

インストール

NPX(推奨)

インストールは不要です。

npx -y oorep-mcp
npm グローバル
npm install -g oorep-mcp
oorep-mcp
npm ローカル(SDK の使用向け)
npm install oorep-mcp

プラットフォーム設定

Claude Code
オプション A:CLI
claude mcp add oorep -- npx -y oorep-mcp
オプション B:設定ファイル(~/.claude.json)
{
  "mcpServers": {
    "oorep": {
      "command": "npx",
      "args": ["-y", "oorep-mcp"],
      "env": {
        "OOREP_MCP_BASE_URL": "https://www.oorep.com",
        "OOREP_MCP_LOG_LEVEL": "info"
      }
    }
  }
}

確認するには、Claude Code で /mcp を実行します。

Claude Desktop

設定ファイルの場所:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "oorep": {
      "command": "npx",
      "args": ["-y", "oorep-mcp"],
      "env": {
        "OOREP_MCP_BASE_URL": "https://www.oorep.com",
        "OOREP_MCP_LOG_LEVEL": "info"
      }
    }
  }
}

重要: ウィンドウを閉じるだけではなく、完全に終了してください(Cmd+Q)。

Codex CLI

設定: ~/.codex/config.toml(macOS/Linux)または C:\Users\<Username>\.codex\config.toml(Windows)

[mcp_servers.oorep]
command = "npx"
args = ["-y", "oorep-mcp"]
startup_timeout_sec = 15.0
tool_timeout_sec = 60.0

[mcp_servers.oorep.env]
OOREP_MCP_BASE_URL = "https://www.oorep.com"
OOREP_MCP_LOG_LEVEL = "info"

または CLI から:

codex mcp add oorep --env OOREP_MCP_BASE_URL=https://www.oorep.com --env OOREP_MCP_LOG_LEVEL=info -- npx -y oorep-mcp

確認するには、codex mcp list を実行します。

Gemini CLI

設定: ~/.gemini/settings.json

{
  "mcpServers": {
    "oorep": {
      "command": "npx",
      "args": ["-y", "oorep-mcp"],
      "env": {
        "OOREP_MCP_BASE_URL": "https://www.oorep.com",
        "OOREP_MCP_LOG_LEVEL": "info"
      },
      "timeout": 30000
    }
  }
}

使用例

インストールすると、Claude を通じて自然な会話で OOREP を利用できます。

レメディを検索する

あなた:「夜になると悪化する頭痛のレメディをOOREPで検索できますか?」

Claude は次の操作を行います:

  1. search_repertory ツールを使用します
  2. デフォルトのレパートリーで「headache worse night」を検索します
  3. 該当するルーブリックと、推奨されるレメディおよびその重みを返します
レメディの詳細情報を取得する

あなた:「Aconite について詳しく教えてください。どのような症状に使われますか?」

Claude は次の操作を行います:

  1. get_remedy_info ツールを使用して、Aconite の詳細情報を取得します
  2. 一般的な用途、特徴、治療への応用について情報を提供します
レメディを比較する

あなた:「発熱の症状について、Aconite と Belladonna を比較してください」

Claude は次の操作を行います:

  1. remedy-comparison プロンプトを使用します
  2. 両方のレメディについてマテリア・メディカを検索します
  3. 発熱の症状に焦点を当てて、左右に並べて比較します
  4. 主な違いを明らかにします
症例のレパートリゼーション

あなた:「不安、動悸、不眠を伴う症例をレパートリゼーションしたいです」

Claude は次の操作を行います:

  1. repertorization-workflow プロンプトを使用します
  2. 症状を体系的に分析できるよう案内します
  3. 各症状に関連するルーブリックを検索します
  4. 結果を統合し、適応がよく示されるレメディを特定できるよう支援します
利用可能なリソースを参照する

あなた:「OOREP ではどのレパートリーを利用できますか?」

Claude は次の操作を行います:

  1. list_available_repertories ツールを使用します
  2. 利用可能な12以上のレパートリーすべてについて、名前と説明を表示します

API リファレンス

ツール
search_repertory

ホメオパシーのレパートリーで症状を検索します。

パラメーター:

名前型必須デフォルト説明
symptomstringはい-検索する症状(3~200文字)。ワイルドカードに対応しています。
repertorystringいいえpublicumレパートリーの略称(例:kent、boger)
minWeightnumberいいえ1レメディの最小ウェイト(1~4)
maxResultsnumberいいえ20返すルーブリックの最大数(1~100)
includeRemedyStatsbooleanいいえtrue集計されたレメディの統計情報を含めます

戻り値:

{
  totalResults: number;
  rubrics: Array<{
    rubric: string;           // Full path: "Head > Pain > Throbbing"
    text: string | null;      // Additional rubric text
    repertory: string;        // Repertory abbreviation
    remedies: Array<{
      name: string;           // Full name: "Belladonna"
      abbreviation: string;   // "Bell."
      weight: number;         // 1-4
    }>;
  }>;
  remedyStats?: Array<{       // If includeRemedyStats=true
    name: string;
    abbreviation: string;
    count: number;            // Times appearing
    cumulativeWeight: number; // Sum of weights
  }>;
}
search_materia_medica

マテリア・メディカのテキストでレメディの説明を検索します。

パラメーター:

名前型必須デフォルト説明
symptomstringはい-検索する症状(3~200文字)
materiamedicastringいいえboerickeマテリア・メディカの略称
remedystringいいえ-特定のレメディに絞り込みます
maxResultsnumberいいえ10結果の最大数(1~50)

戻り値:

{
  totalResults: number;
  results: Array<{
    remedy: string;           // "Aconitum napellus"
    materiaMedica: string;    // "boericke"
    sections: Array<{
      heading: string;        // "Mind", "Head", etc.
      content: string;        // Section text
      depth: number;          // Heading depth
    }>;
  }>;
}
get_remedy_info

特定のレメディに関する詳細情報を取得します。

パラメーター:

名前型必須説明
remedystringはいレメディの名前、略称、または別名(1~100文字)

戻り値:

{
  id: number;
  nameAbbrev: string;    // "Acon."
  nameLong: string;      // "Aconitum napellus"
  namealt: string[];     // ["Aconite", "Monkshood"]
} | null  // null if not found

照合動作:

  • 略称、正式名称、別名との完全一致(大文字と小文字を区別しません)
  • 3文字以上のクエリでは部分一致
list_available_repertories

アクセス可能なレパートリーをすべて一覧表示します。

パラメーター:

名前型必須説明
languagestringいいえ言語コードで絞り込みます(例:en、de)

戻り値:

Array<{
  abbreviation: string;  // "kent"
  title: string;         // "Kent Repertory"
  author: string;        // "James Tyler Kent"
  language: string;      // "en"
}>
list_available_materia_medicas

アクセス可能なマテリア・メディカのテキストをすべて一覧表示します。

パラメーター:

名前型必須説明
languagestringいいえ言語コードで絞り込みます

戻り値:

Array<{
  abbreviation: string;  // "boericke"
  title: string;         // "Boericke Materia Medica"
  author: string;        // "William Boericke"
  language: string;      // "en"
}>
構造化レスポンス形式

すべてのツールは、構造化レスポンスに対応した MCP 2025-06-18 仕様をサポートしています。

レスポンスの構造:

{
  // Text content for backwards compatibility
  content: [{
    type: 'text',
    text: '{"totalResults": 42, "rubrics": [...]}' // JSON string
  }],

  // Machine-parseable structured content
  structuredContent: {
    totalResults: 42,
    rubrics: [...]  // Actual JavaScript object
  }
}

メリット:

  • outputSchema:各ツール定義には、想定される出力構造を定義する JSON Schema が含まれています
  • structuredContent:JSON を解析せずに、型付きの結果に直接アクセスできます
  • 後方互換性:古いクライアント向けに、テキストコンテンツも常に含まれます
  • エラー処理:エラー時には isError: true が返され、LLM による自己修正が可能です
リソース
URI説明コンテンツタイプ
oorep://remedies/list600 種類以上のすべてのレメディの完全なリストJSON
oorep://repertories/list利用可能なすべてのレパートリーとメタデータJSON
oorep://materia-medicas/list利用可能なすべてのマテリア・メディカJSON
oorep://help/search-syntax例を含む検索構文ガイドテキスト
プロンプト
analyze-symptoms

体系的な症状分析のためのガイド付きワークフローです。

引数:

名前型必須説明
symptom_descriptionstringいいえ初期症状の説明

ワークフロー: 症状の収集 → モダリティ分析 → レパートリー検索 → 統合をガイドします

remedy-comparison

複数のレメディを並べて比較します。

引数:

名前型必須説明
remediesstringはいカンマ区切りのレメディ名(2~6 種類)

例: remedies: "Aconite, Belladonna, Gelsemium"

repertorization-workflow

症例聴取とレパートライゼーションを段階的に進めます。

ワークフロー: 症状の収集からレメディの鑑別までの 7 段階のプロセスです。

検索構文

基本検索
headache                    # Simple term
headache night              # Multiple terms (AND)
ワイルドカード
head*                       # Matches: head, headache, heading
*ache                       # Matches: headache, stomachache
完全一致フレーズ
"worse at night"            # Exact phrase match
"throbbing pain"            # Must appear together
除外
headache -migraine          # Headache but not migraine
fever -intermittent         # Fever excluding intermittent
組み合わせ
head* pain -chronic "worse motion"
ヒント
  • 各検索語は 3 文字以上にしてください
  • ワイルドカードは単語の境界でのみ使用できます
  • より良い結果を得るには、レパートリー固有の用語を使用してください

SDK の統合

AI フレームワークでプログラムから使用する方法については、SDK Integration Guide をご覧ください。

対応フレームワーク: OpenAI、Vercel AI SDK、LangChain/LangGraph、Google Gemini

簡単な例:

import { createOOREPClient } from 'oorep-mcp';

const client = createOOREPClient();
const results = await client.searchRepertory({ symptom: 'headache worse motion' });
console.log(results.rubrics);
client.destroy();

設定

すべての設定は環境変数で行います。

変数デフォルト説明
OOREP_MCP_BASE_URLhttps://www.oorep.comOOREP API のベース URL
OOREP_MCP_TIMEOUT_MS30000リクエストのタイムアウト(ms)
OOREP_MCP_CACHE_TTL_MS300000キャッシュ TTL(ms)、0 にすると無効
OOREP_MCP_MAX_RESULTS100結果数の上限
OOREP_MCP_LOG_LEVELinfodebug | info | warn | error
OOREP_MCP_DEFAULT_REPERTORYpublicumデフォルトのレパートリー
OOREP_MCP_DEFAULT_MATERIA_MEDICAboerickeデフォルトのマテリア・メディカ
OOREP_MCP_REMOTE_USER(unset)設定すると、すべての上流リクエストに X-Remote-User ヘッダー(数値のメンバー ID)を送信します

MCP サーバーは匿名の OOREP セッションを自動的に維持します。必要な Cookie を取得するために軽量なブートストラップリクエストを実行し、その後の検索呼び出しで再利用するため、公開データの利用に追加の認証設定は必要ありません。

カスタム設定の例:

{
  "mcpServers": {
    "oorep": {
      "command": "npx",
      "args": ["-y", "oorep-mcp"],
      "env": {
        "OOREP_MCP_TIMEOUT_MS": "60000",
        "OOREP_MCP_CACHE_TTL_MS": "600000",
        "OOREP_MCP_LOG_LEVEL": "debug"
      }
    }
  }
}

アーキテクチャ

graph TB
    subgraph Client[MCP Client]
        MCPClient((Claude, Codex,<br/>Gemini, etc.))
    end

    subgraph Server[OOREP MCP Server]
        Tools[Tools]
        Resources[Resources]
        Prompts[Prompts]
        SDK[SDK]

        subgraph SDKClient[OOREPClient]
            Cache[(Cache)]
            Dedup[Deduplicator]
            Validators[Validators]
        end

        subgraph HTTPClient[OOREPClient - HTTP]
            Session[Session mgmt]
            Retry[Retry logic]
            Timeout[Timeout handling]
        end

        Tools --> SDKClient
        Resources --> SDKClient
        Prompts --> SDKClient
        SDK --> SDKClient
        SDKClient --> HTTPClient
    end

    subgraph External[OOREP API]
        API[https://www.oorep.com]
    end

    MCPClient -->|MCP Protocol| Server
    HTTPClient -->|HTTPS| API

主なコンポーネント:

  • キャッシュ:TTL を設定できるインメモリ LRU キャッシュ(デフォルトは 5 分)
  • 重複排除機能:同じデータに対する並行リクエストの重複を防ぎます
  • バリデーター:Zod スキーマを使用して、API 呼び出し前にすべての入力を検証します
  • セッション管理:OOREP API の Cookie を自動的に処理します

セキュリティに関する考慮事項

入力検証

すべての入力は Zod スキーマを使用して検証されます。

  • 症状検索:3~200 文字。前後の空白は削除されます
  • レメディ名:1~100 文字
  • サーバー側のサニタイズ:追加の入力サニタイズは OOREP API が処理します
エラー処理
  • クライアントに返す前に、すべてのエラーをサニタイズします
  • 内部情報(スタックトレース、ファイルパス)は決して公開されません
  • ネットワークエラーには一般的なメッセージを返します
データのプライバシー
  • ユーザーの認証情報は保存せず、必要もありません
  • OOREP セッションは匿名で、Cookie ベースです
  • データはディスクに永続化されません(メモリーキャッシュのみ)
  • すべての入力は Zod スキーマを使用して検証されます
  • クライアントに返す前に、エラーをサニタイズします

レート制限

OOREP MCP Server は内部のレート制限を実装していません。ただし、以下の点にご注意ください。

OOREP API の制限

上流の OOREP API にはレート制限がある場合があります。制限を超えると、RateLimitError が返されます。

{
  content: [{ type: 'text', text: 'Error: Rate limit exceeded. Please try again later.' }],
  isError: true
}
対処方法
  1. キャッシュを有効にする(デフォルト:TTL は 5 分)

    "env": { "OOREP_MCP_CACHE_TTL_MS": "300000" }
    
  2. 特定の検索語を使用して、並行リクエストを減らす

  3. 頻繁にアクセスするデータについては、キャッシュ TTL を延長する

    "env": { "OOREP_MCP_CACHE_TTL_MS": "600000" }
    
リクエストの重複排除

SDK クライアントは、同一のリクエストが並行して実行される場合に自動的に重複排除し、API の負荷を軽減します。

TypeScript 型のインポート

型安全な開発のために、パッケージから型を直接インポートします。

import type {
  // Tool argument types
  SearchRepertoryArgs,
  SearchMateriaMedicaArgs,
  GetRemedyInfoArgs,
  ListRepertoriesArgs,
  ListMateriaMedicasArgs,

  // Result types
  RepertorySearchResult,
  MateriaMedicaSearchResult,
  RemedyInfo,
  RepertoryMetadata,
  MateriaMedicaMetadata,

  // Supporting types
  Rubric,
  Remedy,
  MateriaMedicaResult,
  MateriaMedicaSection,
  // SDK Client types
  OOREPClient,
  OOREPSDKConfig,
} from 'oorep-mcp';
スキーマ検証

実行時の検証に Zod スキーマをインポートすることもできます。

import {
  SearchRepertoryArgsSchema,
  RepertorySearchResultSchema,
  RemedyInfoSchema,
} from 'oorep-mcp';

// Validate external data
const validated = SearchRepertoryArgsSchema.parse(untrustedInput);

トラブルシューティング

Claude Desktop にサーバーが表示されない

問題: 設定後も MCP インジケーターが表示されません。

解決方法:

  1. Claude Desktop を完全に終了する(macOS ではウィンドウを閉じるだけでなく Cmd+Q を押します)
  2. Claude Desktop を再起動し、 MCP の初期化に 10~15 秒ほど待ちます
  3. 設定ファイルを確認し、 有効な JSON 構文になっていることを確かめます(JSON バリデーターを使用してください)
  4. ログを確認します:
    • macOS: ~/Library/Logs/Claude/mcp*.log
    • Windows: %APPDATA%\Claude\Logs\mcp*.log
  5. npx が動作することを確認します: ターミナルで npx -y oorep-mcp を実行し、起動するか確認します
接続タイムアウトエラー

問題: 「Connection timeout」または「Request timed out」エラーが発生します。

解決方法:

  1. 設定でタイムアウトを延長します:

    "env": {
      "OOREP_MCP_TIMEOUT_MS": "60000"
    }
    
  2. https://www.oorep.com へのネットワーク接続を確認します:

    curl https://www.oorep.com
    
  3. 接続を妨げる可能性のあるファイアウォールやプロキシの問題がないか確認します

結果が返されない

問題: 検索結果が空、または「No results found」と表示されます。

解決方法:

  1. より広い検索語を試します(例:「headache left temple worse 3pm」ではなく「headache」)
  2. minWeight などのフィルターや、特定のレパートリーの制限を解除します
  3. https://www.oorep.com で OOREP のウェブサイトにアクセスできるか確認します
  4. 別のレパートリーを試します: Claude に尋ねる:「代わりに Kent レパートリーを検索してください」
メモリー使用量が多い

問題: MCP サーバーが過剰なメモリーを消費しています。

解決方法:

  1. キャッシュ TTL を短くして、キャッシュをより頻繁にクリアします:

    "env": {
      "OOREP_MCP_CACHE_TTL_MS": "60000"
    }
    
  2. 最大結果数を減らします:

    "env": {
      "OOREP_MCP_MAX_RESULTS": "50"
    }
    
  3. キャッシュをクリアするため、定期的に Claude Desktop を再起動します

macOS/Linux での権限エラー

問題: サーバーの実行時に「Permission denied」と表示されます。

解決方法:

  1. グローバルインストールの場合: npm の権限が適切に設定されていることを確認します

    sudo npm install -g oorep-mcp
    
  2. npx を使用する場合(推奨): 権限は不要です。-y フラグを使用します。

    npx -y oorep-mcp
    
詳細ログの表示

トラブルシューティングのために詳細なデバッグログを表示するには、以下の手順を実行します。

  1. ログレベルを debug に設定します:

    "env": {
      "OOREP_MCP_LOG_LEVEL": "debug"
    }
    
  2. MCP ログを確認します:

    • macOS: tail -f ~/Library/Logs/Claude/mcp*.log
    • Windows: %APPDATA%\Claude\Logs\ を確認します
  3. 特定のエラーパターンを探します:

    • NetworkError - 接続の問題
    • TimeoutError - リクエストに時間がかかりすぎています
    • ValidationError - 無効な入力
    • RateLimitError - リクエストが多すぎます
問題が解決しない場合
  1. 既存の Issue を確認します: https://github.com/Dhi13man/oorep-mcp/issues
  2. 新しい Issue を報告します: 以下を含めてください。
    • 使用している OS とバージョン
    • Node.js のバージョン(node --version)
    • Claude Desktop のバージョン
    • 設定(機密情報は削除してください)
    • MCP ログファイルのエラーログ
  3. ディスカッションに参加します: 使用した感想を共有し、コミュニティからサポートを受けてください

開発

前提条件
  • Node.js ≥ 22.12.0
  • npm ≥ 10.0.0
セットアップ
git clone https://github.com/Dhi13man/oorep-mcp.git
cd oorep-mcp
npm ci
コマンド
npm run build          # Compile TypeScript
npm run typecheck      # Type checking only
npm run dev            # Development mode with watch
npm test               # Run all tests
npm run test:watch     # Watch mode
npm run test:coverage  # Coverage report
npm run test:e2e       # Live OOREP integration (requires network access)
npm run lint           # ESLint
npm run format         # Prettier
テスト構成
src/
├── **/*.unit.test.ts        # Unit tests (mocked dependencies)
└── **/*.integration.test.ts # Integration tests (real implementations)
  • 1100 件以上のテストでカバレッジ 95%以上
  • 単体テストでは依存関係をモックします
  • 統合テストでは、HTTP 通信をモックし、実際の実装を使用します

免責事項

このツールは、教育および情報提供のみを目的としています。

  • 医療上の助言ではありません - 専門家による医療相談の代わりにはなりません
  • 施術者に相談してください - 必ず資格を持つホメオパシー施術者に相談してください
  • 診断を目的としていません - 病状の診断や治療を目的としたものではありません

ホメオパシーによる治療は、資格を持つ専門家の指導のもとでのみ行ってください。

ライセンス

MIT License - 詳細はLICENSEファイルを参照してください。

謝辞

  • OOREP チーム:オープンソースの OOREP プラットフォームを作成し、保守してくださったことに感謝します
  • Anthropic:Model Context Protocol と Claude に感謝します
  • MCP コミュニティ:ツール、ドキュメント、サポートに感謝します

リンク

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。