paper-format-agent について
Paper Format Agent は、学位論文や学術論文向けのローカル動作の DOCX 整形ツールです。フォーマットガイドに合わせてフォント、行間、インデント、見出し、キャプションを調整し、本文は書き換えません。保存前に本文と表のテキストの指紋を比較し、内容が変わった場合は書き込みを中止します。
主な機能
- 01フォーマットガイドに基づくフォントと見出しの調整
- 02本文と表のテキストの指紋による検証
- 03内容変更時の出力中止
- 04すべてローカルマシンで実行
- 05format_paper などのツールを提供する任意の MCP サーバー
活用シーン
- 01学校や学会のテンプレートに合わせた論文の整形
- 02整形後に本文が変わっていないことの確認
- 03未完成の原稿をWebサイトにアップロードせずに整形
MCP 対応
任意機能として MCP サーバーを提供し、format_paper、extract_format_rules、score_paper を公開します。MCP クライアントから同じ整形処理を実行できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Paper Format Agent
中文说明 | English
論文や学位論文向けのローカル DOCX フォーマッターです。
書式ガイドに合わせて、フォント、行間、インデント、見出し、キャプションを変更します。論文の内容は書き換えません。保存前に、実行前後の本文と表のテキストのフィンガープリントを比較します。テキストが変更されている場合は、フォーマット済みファイルを書き込まずに中止します。
すべての処理はお使いのマシン上で実行されます。何もアップロードされません。
内容チェック
実際の実行(--engine python)でのレポート項目:
{
"content_fingerprint_before": "793e6533fd670418141d11fdcf014be19750408129ecff8b1b78a2641a3786db",
"content_fingerprint_after": "793e6533fd670418141d11fdcf014be19750408129ecff8b1b78a2641a3786db",
"content_changed": false,
"content_guard_enforced": true
}
2 つのハッシュは一致するはずです。一致しない場合、フォーマッターは content guard failed で終了し、フォーマット済み DOCX は書き込まれません。
チェック対象は、空白と余分な箇条書き文字を正規化してから比較した本文の段落と表です。ヘッダーとフッターは、フォーマッターが意図的に設定するため対象外です。フィンガープリントが最終保存 DOCX を対象とする必要がある場合は、--engine python を使用してください。他のエンジンでは、チェック後にローカルの後処理が実行されます。たとえば、目次を更新します。
ガードが作動する様子を見るには、python tools/demo_content_guard.py を実行してください。合成論文をフォーマットした後、スタイル設定のステップにパッチを適用して、メモリ内のドキュメントの文を 1 つ編集した状態で再度実行します。2 回目の実行では DOCX を書き込まずに中止します。
docs/BENCHMARK.md では、小規模な合成フィクスチャを使って、作成された文字列のうち実行後も残るものを記録し、既知の制限を示しています。
インストールと実行
pip install -r requirements.txt
python -m paper_format_agent.cli \
--format-file "format_guide.docx" \
--paper-file "paper.docx" \
--out-dir "./output" \
--engine python
GUI(python run_gui.py)、バッチモード、中国語の学位論文、学術誌、IEEE 形式向けの JSON テンプレートパックも利用できます。docs/USAGE.md を参照してください。
制限事項
開発初期のプロジェクトです。通常の段落、見出し、表は比較的適切に処理できますが、数式、脚注、複雑なレイアウトには対応が十分ではありません。--strict-required-sections を指定すると、チェック結果に char_below_min や blank_page_risk が含まれる場合があります。実際の提出前の唯一のチェック手段として使用しないでください。元のファイルを保管しておいてください。
ここでは参考文献リストの書式設定は対象外です。この部分は機械的なルールで処理できるため、別のツールである gbt7714_check が、GB/T 7714 に照らして参考文献項目を検査します。
作成した理由
書式設定サイトに未完成の学位論文をアップロードしたくありませんでした。また、書式設定によってテキストが変更されていないことを確認する方法が必要でした。そのため、デフォルトのエンジンはローカルで実行され、テキストが変更されている場合は保存を拒否します。
エージェント
このリポジトリはインストール可能なエージェントスキル(SKILL.md)としても利用でき、同じパイプラインをオプションの MCP サーバー(Python 3.10+)としても利用できます:
pip install "paper-format-agent[mcp]"
paper-format-agent-mcp
ツール:format_paper、extract_format_rules、score_paper。クライアント設定はdocs/MCP.mdを参照してください。
コントリビューション
小規模な PR を歓迎します。学校や学術誌の書式ルールに対する合成テストを追加するのが、取り組みを始めるよい方法です: docs/CONTRIBUTOR_TASKS.md、 CONTRIBUTING.md。パイプラインに関するメモは docs/ARCHITECTURE.mdにあります。
実際の論文、学校の非公開テンプレート、査読者のコメント、API キー、生成された出力をコミットしないでください。合成フィクスチャのみを使用してください。
ライセンス
MIT。LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。