paperware_mcp
Paperware MCP 서버 (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)
Frappe ORM 직접 통합: 외부 HTTP REST API 호출이나 API 키/시크릿이 필요 없습니다.
frappe.get_doc,frappe.get_list,doc.insert(),doc.submit(),doc.cancel()등을 직접 사용합니다.요청별 권한 위장(Impersonation): 각 호출 시
requesting_user매개변수에 따라frappe.set_user()가 수행되어 실제 Frappe 권한 엔진이 적용됩니다.화이트리스트 실행 보안:
call_method도구는 오직@frappe.login.whitelist()데코레이터가 있는 함수만 실행할 수 있습니다. 권한 없는 Python 코드 실행은 완전히 차단됩니다.FastMCP 통합: Python
mcp>=1.9.0,<2.0.0패키지의FastMCP기반 도구 설정.stdio와sse두 가지 전송 방식(transport)을 지원합니다.네이티브 bench 명령: Frappe CLI와 연동되어
bench --site erp.paperfactory.com paperware-mcp명령으로 서비스를 시작할 수 있습니다.
Related MCP server: MCP Task
🛠️ 설치 가이드 (단계별 설치)
1단계: 앱 소스 설치 확인
Frappe Bench 디렉터리(예: /home/user/frappe-bench/)에서 앱이 apps/paperware_mcp 폴더에 있는지 확인하세요.
cd /home/prime/frappe-bench2단계: Python 의존성 설치
Bench 가상환경에 필요한 패키지(mcp>=1.9.0,<2.0.0)를 설치하세요:
./env/bin/pip install -r apps/paperware_mcp/requirements.txt3단계: ERPNext 사이트에 앱 설치
원하는 사이트에 paperware_mcp 앱을 설치하세요:
bench --site erp.paperwarefactory.com install-app paperware_mcp🚀 서비스 실행 및 명령어 사용법 (Usage & Command Options)
paperware-mcp CLI 명령을 실행할 때 다음 옵션을 사용할 수 있습니다:
옵션 | 유형 | 기본값 | 설명 |
|
|
| MCP 사용자 지정 전송 옵션. |
|
|
| SSE 전송용 포트 번호( |
|
|
|
|
[!참고]
--default-user administrator는 프로덕션에서 사용하면 안 됩니다. 프로덕션에서는 반드시 특정 봇 사용자 이메일을 전달하세요.
명령 예시:
1. Standard Input/Output (stdio) 모드로 실행:
bench --site erp.paperwarefactory.com paperware-mcp --transport stdio --default-user hermes.bot@paperwarefactory.com2. Server-Sent Events (SSE) 모드로 특정 포트에서 실행:
bench --site erp.paperwarefactory.com paperware-mcp --transport sse --port 8931 --default-user hermes.bot@paperwarefactory.com🛡️ 전용 Hermes 봇 사용자 생성 (보안 모범 사례)
프로덕션 환경에서 작업하기 위해 ERPNext에 특정 봇 사용자를 만들 것을 권장합니다:
ERPNext Desk에서 사용자 목록으로 이동해 새 사용자를 만드세요.
이메일:
hermes.bot@paperwarefactory.com이름:
Hermes Bot역할 프로필: 필요한 역할만 부여하세요 (예: 재고 사용자, 영업 사용자, 회계 사용자) — Hermes 에이전트가 불필요한 관리 권한을 얻지 않도록 합니다.
서버 시작 시
--default-user hermes.bot@paperwarefactory플래그를 사용합니다.
🏭 프로덕션 배포 (Production Deployment)
서비스를 백그라운드에서 자동으로 시작하고 유지하려면 Supervisor 또는 systemd 서비스를 사용하세요.
방법 1: Supervisor 구성 (Supervisor Configuration)
/etc/supervisor/conf.d/paperware_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 유닛 구성
/etc/systemd/system/paperware-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 에이전트용 MCP 클라이언트 설정 (Harmes Agent Config)
Hermes 에이전트(또는 모든 MCP 클라이언트)의 mcp_config.json 파일에 paperware_mcp을 추가하는 방법:
1. SSE 전송 (Docker/원격 연결에 권장):
{
"mcpServers": {
"paperware_mcp": {
"url": "http://erp.paperwarefactory.com:8931/sse"
}
}
}2. stdio 전송 (동일 컨테이너/로컬 실행):
{
"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개)
도구 이름 | 설명 |
| 특정 문서의 상세 정보를 읽습니다. |
| 필터 및 페이지 매김을 포함해 문서 목록을 가져옵니다. |
| 새 문서를 생성하고 (선택적으로 자동 제출). |
| 기존 문서를 업데이트합니다. |
| [삭제 불가] 취소할 수 없음. |
| 필터에 따라 문서 수를 가져옵니다. |
| 초안 문서를 제출합니다. |
| [삭제 불가] 제출된 문서를 취소합니다. |
| 문서의 특정 필드 값을 변경합니다. |
| DocType의 스키마와 필드 목록을 확인합니다. |
| 링크 항목 검색. |
| ERPNext의 모든 표준/사용자 지정 보고서를 실행합니다. |
| 승인된(Whitelist) Python 메서드만 실행합니다. |
| 문서의 미리 인쇄된 형식으로부터 PDF Base64를 변환합니다. |
| 로컬 파일을 ERPNext 파일 관리자에 업로드합니다. |
📄 라이선스
MIT 라이선스 — © 2026 프라임 테크놀로지 오브 방글라데시 (Prime Technology of Bangladesh)
This server cannot be installed
Maintenance
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
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with ERPNext/Frappe instances through the REST API, allowing document management, report execution, and DocType operations using natural language.6MIT
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to interact with any ERPNext instance through comprehensive CRUD operations, advanced permissions, and a web chat interface.1MIT
- AlicenseBqualityDmaintenanceIntegrates with ERPNext/Frappe API to enable AI assistants to create, read, update, and list documents, run reports, and authenticate via the Model Context Protocol.6MIT
- AlicenseNot gradedqualityCmaintenanceEnables 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.64ISC
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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