ASD-STE100 Simplified Technical English について
技術文書の執筆者や文書チーム向けに、ASD-STE100 Issue 9の語彙と規則を検索するサーバーです。承認語や例を含む、パッケージ内の読み取り専用データを扱います。
主な機能
- 01完全一致・パターン・あいまい語彙検索
- 02承認語と不承認語の確認
- 03ID・分類・全文による規則検索
- 04規則の目次と例の参照
- 05同義語と承認された代替語の検索
活用シーン
- 01技術文書の用語確認
- 02標準外の語に対する承認語の検索
- 03執筆テーマに関する規則の特定
- 04複数の用語の一括確認
MCP 対応
MCPクライアントに、ASD-STE100 Issue 9の語彙と規則を読み取り専用のツールおよびリソースとして公開します。stdioとSSEに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx biz-dfch-asdste100mcpASDSTE100_MCP_TRANSPORTTransport mode: stdio or sseASDSTE100_MCP_HOSTBind address (SSE transport only)ASDSTE100_MCP_PORTTCP port (SSE transport only)ASDSTE100_MCP_FILESColon-separated paths to additional vocabulary .jsonl filesASDSTE100_MCP_USE_STE100Load the built-in ASD-STE100 Issue 9 vocabularyASDSTE100_MCP_USE_STE100_TECHNICAL_WORDSAlso load the technical words vocabularyASDSTE100_MCP_RULES_FILESColon-separated paths to additional rules files (JSON array each)ASDSTE100_MCP_USE_STE100_RULESLoad the built-in ASD-STE100 Issue 9 rulesetローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
15掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| category | string | はい | 検索する正確なカテゴリ名。例:'Technical nouns'。 |
詳細
biz.dfch.AsdSte100Mcp
ASD-STE100(簡易テクニカル英語)第9版規格に対応するMCP サーバーです。
ASD-STE100:著作権は (c) ASD に帰属します。
私はASDとは一切関係ありません。ASDは私の取り組みを支持していません。
目次
認証
このサーバーは、パッケージに同梱された語彙データとルールデータを対象とする読み取り専用の検索ツールとリソースのみを公開します。認証先はありません。stdio モードでも sse トランスポートモードでも、APIキー、トークン、認証情報は不要であり、サポートもされていません。sse トランスポートを localhost の外部に公開する場合は、サーバー自身にリクエストを認証させるのではなく、ネットワーク層(リバースプロキシなど)で保護してください。
ツール
語彙
| ツール | 説明 |
|---|---|
word_find | ASD-STE100 Issue 9 の語彙から、完全一致する用語を検索します(大文字と小文字は区別しません)。承認/非承認のステータス、品詞、STE の例、承認済みの代替語を返します。用語が正確にわかっている場合は、まずこれを使用してください。このツールで結果が見つからない場合は、ワイルドカードを使って word_match を使用してください。 |
word_find_many | 1 回の呼び出しで、完全一致する複数の用語を検索します(大文字と小文字は区別しません)。入力と同じ順序で、入力用語ごとに 1 つの WordFindEntry(term + results)を返します。各項目には、該当する語彙エントリが 0 件、1 件、または複数件含まれます。 |
word_match | 正規表現パターンを使用して語彙を検索します。一致する用語のエントリをすべて返します。共通の接頭辞やパターン(例:^de または .*tion$)を持つ単語を検索する場合に使用してください。ページ分割に対応しています(max_results/offset)。WordResult を返します。 |
word_fuzzy | シーケンスマッチング(Python の difflib.get_close_matches)を使用して用語を検索します。結果が明確でない場合があります。word_find で何も見つからず、あいまい検索による候補が必要な場合に使用してください。 |
word_list | すべての語彙エントリを返します。語彙全体を処理する必要がある場合にのみ使用してください。合計数だけが必要な場合は、代わりに word_count を使用してください。ページ分割に対応しています(max_results/offset)。WordResult を返します。 |
word_count | 語彙エントリの合計数を返します。件数だけが必要な場合は、word_list の代わりに使用してください。 |
word_synonym | biz-dfch-asdste100nlp ライブラリの Nlp クラスを介して、ある単語の WordNet 同義語である語彙エントリを検索します。STE 非準拠の単語に対する承認済みの代替語を見つける場合に使用してください。 |
ルール
| ツール | 説明 |
|---|---|
rules_find | ルールセットから、完全一致する ID でルールを検索します(大文字と小文字は区別しません)。例:R1.1 や GR-8。ID が正確にわかっている場合は、まずこれを使用してください。 |
rules_match | ルールの name と summary に対して正規表現を照合し、ルールを検索します。 |
rules_search | ルールが持つすべてのテキスト(セクション、カテゴリ、名前、概要、およびテキスト、注記、例、技術名詞/動詞の一覧を含むすべてのコンテンツブロック)を対象に、全文検索を行います。必要に応じて、特定のコンテンツタイプに絞り込めます。ページ分割に対応しています(max_results/offset)。SearchResult を返します。 |
rules_by_section | 完全一致するセクション名でルールを検索します(大文字と小文字は区別しません)。例:Words。 |
rules_by_category | 完全一致するカテゴリ名でルールを検索します(大文字と小文字は区別しません)。例:Technical nouns。 |
rules_examples | ルール全体からコンテンツ項目を返します。必要に応じて ID/セクション/カテゴリで範囲を指定し、コンテンツタイプで絞り込めます。ページ分割に対応しています(max_results/offset)。RulesExamplesResult を返します。 |
rules_overview | ルールごとの簡潔な概要(ID、タイプ、セクション、カテゴリ、名前、任意の概要、コンテンツの件数/フラグ)を返します。すべてのコンテンツ項目を含めずに取得できます。 |
rules_toc | 目次のアウトラインとして、セクションとカテゴリの異なる組み合わせを返します。必要に応じて、1 つのセクションに絞り込めます。 |
リソース
読み取り専用リソースを使用すると、ツール呼び出しを介さずに(「@メンション」やリソースピッカーなどを使って)、クライアントがルールセットのデータを直接参照したり、添付したりできます。
| リソース URI | 説明 |
|---|---|
asdste100://rules/toc | ルールセットの目次のアウトラインです。セクションとカテゴリの異なる組み合わせ、およびそれぞれに含まれる ID を示します。section フィルターを指定しない rules_toc ツールと同じ内容です。 |
asdste100://rules/rule/{id_} | 完全一致する ID のルール/推奨事項/情報項目を 1 件返します(大文字と小文字は区別しません)。例:asdste100://rules/rule/R1.1。不明な ID の場合は、エラーではなく空のリストが返されます。rules_find ツールと同じ内容です。 |
asdste100://version | MCP サーバー本体と、データを提供する 3 つのライブラリ(biz-dfch-asdste100vocab、biz-dfch-asdste100rules、biz-dfch-asdste100nlp)のインストール済みバージョン番号です。 |
インストール
pip install biz-dfch-asdste100mcp
または、uv を使用します。
uv add biz-dfch-asdste100mcp
使用方法
MCP Inspector
OpenCode のようなツールを使わずに MCP サーバーをテストする場合は、MCP Inspector を使用できます。
MCP Inspector は mcp[cli] パッケージの一部です。このプロジェクトを --extra dev を指定してインストールすると、MCP Inspector を使用できます。
注:以下の例では、MCP Inspector の起動に npx ではなく bunx を使用しています。npx はテストされていません。
stdio(Claude Desktop、OpenCode、その他の MCP ホスト)
asdste100-mcp
サーバーに対して stdio 経由で MCP Inspector を実行します。
bunx @modelcontextprotocol/inspector uv run --frozen --directory . asdste100-mcp

注:MCP Inspector が stdio 経由で MCP サーバーに接続できない場合があります。その場合は、代わりに sse オプション(以下を参照)を使用してください。
SSE/ネットワーク
asdste100-mcp --transport sse --host localhost --port 8000
注:MCP サーバーにオプション --port を指定する必要はありません。port のデフォルト値は 8000 です。
サーバーを起動してから、MCP Inspector を接続します。これらは別々のコマンドで、2 つの異なるターミナルで実行します。
# terminal 1: start the server
uvx --from . asdste100-mcp -t sse
# terminal 2: launch the inspector and connect it to the running server
bunx @modelcontextprotocol/inspector


オプション
| オプション | 環境変数 | デフォルト | 説明 |
|---|---|---|---|
--transport | ASDSTE100_MCP_TRANSPORT | stdio | トランスポートモード:stdio または sse |
--host | ASDSTE100_MCP_HOST | localhost | バインドアドレス(SSE のみ) |
--port | ASDSTE100_MCP_PORT | 8000 | TCP ポート(SSE のみ) |
--env | — | 自動検出 | .env ファイルへのパス |
--file / -f | ASDSTE100_MCP_FILES | (空) | 語彙ファイル(*.jsonl)へのパス。複数回指定できます |
--rules-file / -r | ASDSTE100_MCP_RULES_FILES | (空) | ルールファイル(単一の JSON 配列)へのパス。複数回指定できます |
語彙の設定
| 環境変数 | デフォルト | 説明 |
|---|---|---|
ASDSTE100_MCP_FILES | (空) | 追加の語彙ファイルへのパス(コロン区切り) |
ASDSTE100_MCP_USE_STE100 | true | 組み込みの ASD-STE100 Issue 9 語彙を読み込みます |
ASDSTE100_MCP_USE_STE100_TECHNICAL_WORDS | false | 技術用語の語彙も読み込みます |
ルールの設定
| 環境変数 | デフォルト | 説明 |
|---|---|---|
ASDSTE100_MCP_RULES_FILES | (空) | 追加のルールファイルへのパス(コロン区切り。各ファイルは単一の JSON 配列) |
ASDSTE100_MCP_USE_STE100_RULES | true | 組み込みの ASD-STE100 Issue 9 ルールセットを読み込みます |
OpenCode に追加する
ASD-STE100(簡易テクニカル英語)の MCP サーバーを OpenCode の設定に追加します。
-
OpenCode の設定ファイルを開きます(通常は
~/.config/opencode/opencode.jsonまたは~/.config/opencode/opencode.jsonc)。 -
mcpセクションに以下の設定を追加します(stdio経由で使用します)。
"asdste100": {
"type": "local",
"enabled": true,
"command": ["uvx", "--from", "biz-dfch-asdste100mcp", "asdste100-mcp"]
}
- ファイルを保存し、OpenCode を再起動します。
これにより、OpenCode から ASD-STE100 の語彙やルールを検索し、テクニカルライティングやドキュメントの準拠確認に利用できるようになります。
開発
開発用の依存関係をインストールする
uv sync --all-extras
リンターを実行する
uv run --frozen ruff format --check
uv run --frozen ruff check
uv run --frozen pylint $(git ls-files '*.py')
テストを実行する
uv run --frozen python -m unittest discover -v -s tests -t . -p "test_*.py"
関連プロジェクト
このサーバーは ASD-STE100 ツール群の一部です。
- biz.dfch.AsdSte100Vocab — ASD-STE100 Issue 9 の語彙ライブラリ
- biz.dfch.AsdSte100Rules — ASD-STE100 Issue 9 のルールセットライブラリ
- biz.dfch.AsdSte100Nlp — WordNet ベースの ASD-STE100 語の類義語検索
- biz.dfch.AsdSte100Lookup — 単語やルールを検索する対話型 CLI
- biz.dfch.AsdSte100Mcp — このリポジトリです。語彙とルールの検索ツールを公開する MCP サーバー
リリースを作成する
1. すべてのテストが成功することを確認する
リリース前に、dev ブランチの CI パイプラインが成功していることを確認します。
uv run --frozen ruff format --check
uv run --frozen ruff check
uv run --frozen pylint $(git ls-files '*.py')
uv run --frozen python -m unittest discover -v -s tests -t . -p "test_*.py"
2. バージョンを上げる
pyproject.toml のバージョンを更新します。
version = "x.y.z"
3. dev にコミットしてプッシュする
git add pyproject.toml CHANGELOG.md
git commit -m "chore: bump version to vx.y.z"
git push origin dev
4. dev を main にマージする
git checkout main
git merge dev
git push origin main
5. バージョンタグを作成してプッシュする
export VERSION=x.y.z
git tag v${VERSION}
git push origin v${VERSION}
タグをプッシュすると publish.yml ワークフローが実行され、次の処理が行われます。
- sdist と wheel をビルドします。
- TestPyPI に公開します(環境
testpypi)。 - PyPI に公開します(環境
pypi)。TestPyPI への公開が成功した場合のみ実行されます。 - MCP Registry に公開します(
publish-to-mcp-registryジョブ)。先に新しいバージョンが PyPI で公開されている必要があります。 - 自動生成されたリリースノートと配布成果物を添付して、GitHub Release を作成します。
その後、作業を続けるため dev に戻ります。
git checkout dev
Trusted Publishing を設定する
このワークフローでは OIDC Trusted Publishing を使用するため、API トークンやシークレットは不要です。
GitHub:環境を作成する
リポジトリの Settings → Environments に移動し、次の2つの環境を作成します。
| 環境 | 推奨される保護設定 |
|---|---|
testpypi | 必須の設定はありません |
pypi | 意図しない本番リリースを防ぐため、必須レビュアーを追加します |
TestPyPI
test.pypi.org にログインし、Your account → Publishing → Add a new pending publisher に移動します。
| フィールド | 値 |
|---|---|
| PyPI project name | biz-dfch-asdste100mcp |
| Owner | dfch |
| Repository | biz.dfch.AsdSte100Mcp |
| Workflow name | publish.yml |
| Environment | testpypi |
PyPI
pypi.org にログインし、Your account → Publishing → Add a new pending publisher に移動します。
| フィールド | 値 |
|---|---|
| PyPI project name | biz-dfch-asdste100mcp |
| Owner | dfch |
| Repository | biz.dfch.AsdSte100Mcp |
| Workflow name | publish.yml |
| Environment | pypi |
MCP Registry への公開
publish-to-mcp-registry ジョブは GitHub OIDC 認証を使用するため、追加の設定は不要です。パッケージが PyPI で公開されると、公式 MCP Registry に自動的に公開されます。
サーバーが登録されていることを確認します。
curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.dfch/biz-dfch-asdste100mcp"
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。