Skip to main content
Glama
sadikhossainnub

paperware_mcp

Paperware MCP Server (paperware_mcp)

Paperware Factory (erp.paperwarefactory.com) の ERPNext/Frappe bench 向けのネイティブな Model Context Protocol (MCP) サーバーです。

このアプリは、Prime AI Agent(NousResearch Hermes Agent framework、"Prime" persona、Docker/Coolify 上でホスト)が Frappe ORM を直接使用して ERPNext と通信できるようにします。


🌟 主な機能(Key Features)

  1. Direct Frappe ORM インテグレーション: 外部の HTTP REST API 呼び出しや API Key/Secret は不要です。frappe.get_docfrappe.get_listdoc.insert()doc.submit()doc.cancel() などを直接使用します。

  2. Per-Request Permission Impersonation: 各ツール呼び出し時に requesting_user パラメータに応じて frappe.set_user() が実行され、実際の Frappe 権限エンジンが適用されます。

  3. Whitelisted Execution Security: call_method ツールは @frappe.whitelist() デコレータが付いた関数のみを実行できます。許可されていない Python コードの実行は完全にブロックされ、安全です。

  4. FastMCP インテグレーション: Python の mcp>=1.9.0,<2.0.0 パッケージの FastMCP に基づくツール構成です。stdiosse の両方のトランスポートを利用できます。

  5. ネイティブ Bench コマンド: Frappe CLI に統合されており、bench --site erp.paperwarefactory.com paperware-mcp コマンドでサービスを起動できます。


Related MCP server: MCP Task

🛠️ インストールガイド(Step-by-Step Installation)

ステップ 1: アプリソースの配置

Frappe Bench ディレクトリ(/home/prime/frappe-bench/)で、apps/paperware_mcp フォルダーにアプリが存在することを確認してください。

cd /home/prime/frappe-bench

ステップ 2: Python 依存関係のインストール

Bench の仮想環境に必要なパッケージ(mcp>=1.9.0,<2.0.0)をインストールします:

./env/bin/pip install -r apps/paperware_mcp/requirements.txt

ステップ 3: ERPNext サイトへのアプリのインストール

対象のサイトに paperware_mcp アプリをインストールします:

bench --site erp.paperwarefactory.com install-app paperware_mcp

🚀 サービスの実行とコマンドの使い方(Usage & Command Options)

paperware-mcp CLI コマンドを実行する際は、以下のオプションを使用できます:

オプション

タイプ

デフォルト

説明

--transport

stdio | sse

stdio

MCP カスタムトランスポートオプション。

--port

int

8931

SSE トランスポート用のポート番号(--transport sse の場合のみ有効)。

--default-user

string

None

requesting_user が指定されない場合のフォールバック用 Frappe ユーザーのメール。

[!WARNING] 本番環境で --default-user Administrator を使用しないでください。本番環境では必ず専用のボットユーザーのメールアドレスを渡してください。

コマンド例:

1. 標準入出力(stdio)モードで起動:

bench --site erp.paperwarefactory.com paperware-mcp --transport stdio --default-user hermes.bot@paperwarefactory.com

2. Server-Sent Event型イベント(SSE)モードで指定ポートで起動:

bench --site erp.paperwarefactory.com paperware-mcp --transport sse --port 8931 --default-user hermes.bot@paperwarefactory.com

🛡️ 専用 Hermes ボット ユーザーの作成(Security Best Practices)

本番環境で使用するために、ERPNext に専用のボットユーザーを作成することを推奨します:

  1. ERPNext デスクで User Listを開き New User を作成します。

  2. Email: hermes.bot@paperwarefactory.com

  3. First Name: Hermes Bot

  4. Role Profile: 必要なロールのみ付与します(例: Stock User, Sales User, Accounts User)。これにより Hermes Agent に不要な管理権限を持たせません。

  5. サーバ起動時に --default-user hermesBot@paperFactory.com フラグを使用します。


🏭 本番環境へのデプロイ(Production Deploy marketing)

バックグラウンドでサービスを自動起動し続動させるには、Supervisor または Systemd を使用してください。

方法 1: Supervisor 設定(Supervisor Configuration)

/etc/super/conf.d/paper_mcp.conf ファイルを作成し、以下のコードを記述します:

[program:paperware-mcp]
command=/home/prime/frappe-bench/env/bin/bench --site erp.paperwarefactory.com paperware-mcp --transport sse --port 8931 --default-user hermes.bot@paperwarefactory.com
directory=/home/prime/frappe-bench
user=prime
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
stdout_logfile=/home/prime/frappe-bench/logs/paperware_mcp.out.log
stderr_logfile=/home/prime/frappe-bench/logs/paperware_mcp.err.log
environment=PATH="/home/prime/frappe-bench/env/bin:%(ENV_PATH)s"

設定を再リロードして起動します:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl status paperware-mcp

方法 2: Systemd ユニット設定(Sysd unity Unit Configuration)

/etc/system/systemd/paper-mcp.service ファイルを作成し、以下の設定を記述します:

[Unit]
Description=Paperware MCP Server for Hermes AI Agent
After=network.target redis-server.service mariadb.service

[Service]
Type=simple
User=prime
WorkingDirectory=/home/prime/frappe-bench
ExecStart=/home/prime/frappe-bench/env/bin/bench --site erp.paperwarefactory.com paperware-mcp --transport sse --port 8931 --default-user hermes.bot@paperwarefactory.com
Restart=always
RestartSec=5
StandardOutput=append:/home/prime/frappe-bench/logs/paperware_mcp.out.log
StandardError=append:/home/prime/frappe-bench/logs/paperware_mcp.err.log

[Install]
WantedBy=multi-user.target

サービスを有効にして起動します:

sudo systemctl daemon-reload
sudo systemctl enable paperware-mcp
sudo systemctl start paperware-mcp
sudo systemctl status paperware-mcp

🤖 Hermes Agent MCP Client 設定(Hermes Agent Configuration)

Hermes Agent(また任意の MCP Client)の mcp_config.j現化ファイルに加入ent paper保存 を:

1. SSE Transsmポート用(Docker/リモート接続に推奨):

{
  "mcpServers": {
    "paperware_mcp": {
      "url": "http://erp.paperwarefactory.com:8931/sse"
    }
  }
}

2. Template モード(同一コンテテナー/ローカル実行):

{
  "mcpServers": {
    "paperware_mcp": {
      "command": "/home/prime/frappe-bench/env/bin/bench",
      "args": [
        "--site",
        "erp.paperwarefactory.com",
        "paperware-mcp",
        "--transport",
        "stdio",
        "--default-user",
        "hermes.bot@paperwarefactory.com"
      ]
    }
  }
}

📦 公開済み MCP ツール一覧(Exposed MCP tools - 15 Tools)

Tool Name

説明

get_document

指定ドキュメントの詳細情報を読取りまさす。

list_documents

フィルターとぺージション付きでドキュメント一覧を取得し集ます。

create_document

新規ドキュメントを作成(及び任意の自動送信)。

update_document

既存ドキクメントを更新しす。

delete_document

[取り消し不可] ドキュメントを削除。

get_count

フィルター条件に基づくドキュメント数を取得。

submit_document

下絵ドキュメントを送信しす。

cancel_document

[取り消し不可] 送信済みドキュメントをキャンセル。

set_value

ドキュメントの指定フィールドの値を変更。

get_doctype_fields

DocType のスキーマとフィールドリストを取得。

search_link

リンクフィールドを検索。

run_report

ERPNext の標準/カスタムレポートを実行。

call_method

ホワイトリスト済み Python メソッドのみを実行。

get_document_pdf

文書のプリント措式から PDF Base64 変換。

import_file

2018 ファイルを ERP にアップロード。


📄 ライセンス

MIT ライセンス — © 2026 Prime Technology of Bangladesh

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to interact with any ERPNext instance through comprehensive CRUD operations, advanced permissions, and a web chat interface.
    1
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Integrates with ERPNext/Frappe API to enable AI assistants to create, read, update, and list documents, run reports, and authenticate via the Model Context Protocol.
    6
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI models to securely interact with Frappe Framework/ERPNext instances, supporting document CRUD, RPC methods, file management, workflows, reporting, and more via the Model Context Protocol.
    64
    ISC

View all related MCP servers

Related MCP Connectors

  • Odoo ERP for AI agents: hosted OAuth endpoint, gated writes, one endpoint for every instance.

  • Give AI agents access to form submissions — read, search, update, and process file attachments.

  • Your company's brain for AI agents. Cited, permission-aware knowledge across every system.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sadikhossainnub/paperware_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server