World Monitor
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
AI quoting agent for electronics distributors. RFQ in, quote out via MCP tools.
使っているAIアプリを選んで、設定をコピーしてください。
チェック 3/3 合格 · あなたのパソコンで動きます
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
SettingsDeveloperEdit Config
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Electronics Rfq Agent を使って、私に何ができるか教えて、1 つやってみせて✓ Claude が Electronics Rfq Agent を使っていると言うか、回答に Electronics Rfq Agent のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
ChatGPT はまだ Electronics Rfq Agent につなげません
Electronics Rfq Agent はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません
A · Electronics Rfq Agent につなげるアプリを使う
B · その他 の中で ChatGPT につなげる別のサーバー
同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました
Claude Code につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Electronics Rfq Agent が一覧にあり、接続済みと表示されれば OK です
Electronics Rfq Agent を使って、私に何ができるか教えて、1 つやってみせて✓ Claude Code が Electronics Rfq Agent を使っていると言うか、回答に Electronics Rfq Agent のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Cursor につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Electronics Rfq Agent を使って、私に何ができるか教えて、1 つやってみせて✓ Cursor が Electronics Rfq Agent を使っていると言うか、回答に Electronics Rfq Agent のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
VS Code につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Electronics Rfq Agent を使って、私に何ができるか教えて、1 つやってみせて✓ VS Code が Electronics Rfq Agent を使っていると言うか、回答に Electronics Rfq Agent のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください
JSON 設定は下の「開発者向け」にあります
Claude Code
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Claude Desktop (claude_desktop_config.json)
コマンドを確認中 · 確認が通るとコピーボタンが出ます
Cursor (~/.cursor/mcp.json)
コマンドを確認中 · 確認が通るとコピーボタンが出ます
VS Code (mcp.json)
コマンドを確認中 · 確認が通るとコピーボタンが出ます
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
パソコン上で動かせるアプリ
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月13日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント RudrenduPaul で確認済みです
コードの最終更新:7 日前
MITを使用
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
まだレビューはありません
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は7 日前、最新バージョン(0.3.2)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:World Monitor, Claude Flow, Windmill
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.
Run Windmill scripts and flows and manage jobs, schedules, resources and variables.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Your sales engineers are spending 2-4 hours turning RFQ documents into quotes. This does it in seconds.
Electronics RFQ Agent is a Python library and CLI that reads RFQ documents (PDF, Excel, Word), looks up every line item against your ERP catalog, and outputs a draft quote. It connects to SAP, Epicor, Oracle, and Microsoft Dynamics through MCP servers, so it works with Claude, GPT-4, or any agent framework that speaks MCP.
pip install electronics-rfq-agent-cli
uv add electronics-rfq-agent-cli
To install from source instead:
git clone https://github.com/RudrenduPaul/electronics-rfq-agent
cd electronics-rfq-agent pip install -e .
uv sync
Parsing RFQ documents (PDF, Excel, Word) calls the Anthropic API, so set ANTHROPIC_API_KEY before running anything that touches a real document:
export ANTHROPIC_API_KEY="sk-ant-..."
You don't need this key to run erfa audit against an existing quote file, or to explore the CLI with --help. Only document parsing calls out to Claude.
We were working with electronics distributors who had 3-5 sales engineers spending most of their day on quote entry. Every tool we found was either tied to one specific ERP or required a 6-month integration project. We wanted something that worked with what distributors already had, could be self-hosted (quote data is sensitive), and was actually extensible.
The MCP architecture means adding a new ERP is writing one file. The parser handles the document formats distributors actually send: hand-filled PDFs, multi-sheet Excel files, and the occasional scanned table.
No ERP system required to try it out; the mock backend ships with 200 realistic electronics parts. You do need ANTHROPIC_API_KEY set, since parsing the RFQ document is still a real Claude call:
from electronics_rfq_agent import QuoteAgent
from electronics_rfq_agent.mcp.mock import MockERP
agent = QuoteAgent(erp=MockERP()) quote = agent.run_sync("path/to/rfq.xlsx")
for line in quote.lines: print(f"{line.rfq_line.part_number}: {line.status} @ {line.unit_price}")
print(quote.summary())
MockERP applies quantity-based pricing tiers automatically: qty >= 1000 gets 20% off, qty >= 100 gets 10% off, qty >= 10 gets 5% off. List price applies below qty 10. This mirrors real-world volume pricing so benchmarks and integration tests reflect realistic cost curves.
Connect to a real ERP:
from electronics_rfq_agent import QuoteAgent
from electronics_rfq_agent.mcp import EpicorMCP
agent = QuoteAgent( erp=EpicorMCP(base_url="https://your-epicor.company.com", api_key="..."), max_concurrent=10, # parallel ERP lookups (default: 10) ) quote = agent.run_sync("rfq_2026_0619.xlsx") print(quote.summary())
erfa ships two subcommands. Every flag below is pulled straight from erfa --help.
| Command | Arguments | Flags | What it does |
|---|---|---|---|
erfa quote | rfq (path, required) | --mock, --margin (default 0.15), --output/-o | Parses an RFQ file and prints a draft quote. Needs ANTHROPIC_API_KEY; parsing always goes through Claude, --mock only swaps the ERP backend. |
erfa audit | quote_file (path, required) | none | Prints a full audit report (found / substituted / not found, fill rate) for a quote JSON file saved with erfa quote --output. Reads a local file only, no API key needed. |
erfa mcp | none | none | Launches an MCP stdio server exposing quote_rfq, lookup_part, and audit_quote as typed tools, so any MCP-compatible agent (Claude, GPT-4, Gemini) can call them directly without shelling out to the CLI. Point your MCP client config at erfa mcp as the command. |
# Generate a quote from an RFQ file against the mock ERP
export ANTHROPIC_API_KEY="sk-ant-..." erfa quote rfq.xlsx --mock
erfa quote rfq.xlsx --mock --output quote.json
erfa audit quote.json
Audit output example (real output from erfa audit docs/example-quote.json, generated by running the mock ERP's pricing logic against the sample RFQ in tests/fixtures/sample_rfq.txt):
Audit Report - Quote df9fd083
RFQ Source : tests/fixtures/sample_rfq.txt Lines : 5 Total : USD 64.04
FOUND (4)
L 1 RES-0402-10K-1PCT qty=1000 unit=0.0064 ext=6.40 L 2 CAP-100NF-50V-X7R-0402 qty=500 unit=0.0104 ext=5.20 L 3 IC-LM358-SOIC8 qty=50 unit=0.7101 ext=35.50 L 4 XTAL-16MHZ-SMD qty=25 unit=0.6774 ext=16.94
NOT FOUND (1)
L 5 MOSFET-NMOS-20V-3A-SOT23 Part 'MOSFET-NMOS-20V-3A-SOT23' not found in ERP catalog
Fill rate: 80% (4 found / 0 substituted / 1 not found)
Zero-price parts: If a part exists in the ERP catalog but has a unit price of $0.00, the agent quotes $0 rather than skipping the line, and sets
line.notesto a message flagging the zero price so you catch it before quoting the customer. Checkline.notesfor any found or substituted line before sending a quote out.
The full reference lives in docs/api.md: every QuoteAgent parameter, the shared ERP connector interface, Quote/QuoteLineItem field-by-field, and the exception hierarchy. The exports below are what from electronics_rfq_agent import ... actually gives you, grepped from src/electronics_rfq_agent/__init__.py, not guessed:
| Export | What it is |
|---|---|
QuoteAgent | Orchestrates parsing + ERP lookup + quote assembly. run() (async) and run_sync(). |
EpicorMCP, SAPMCP, OracleMCP, DynamicsMCP | ERP connectors, one per supported system. All implement the same search_parts / get_part / get_price / check_inventory interface. |
MockERP (from electronics_rfq_agent.mcp.mock) | In-memory backend with 200 realistic parts. No credentials, no network. |
Quote, QuoteLineItem, RFQLineItem, ERPPartResult, ERPConfig | Pydantic v2 models for the quote, each line, the parsed RFQ line, raw ERP data, and connector config. |
ERPConnectionError, RFQParseError | The two exceptions QuoteAgent can raise: connection/auth failures and unparseable documents. Per-line ERP failures don't raise; they land in line.notes instead. |
TelemetryCollector, TelemetryEvent | Opt-in local telemetry (telemetry=True on QuoteAgent), counts and timings only, no RFQ content. |
| Electronics RFQ Agent | Manual process | SAP Joule | Generic AI (ChatGPT) | |
|---|---|---|---|---|
| Multi-ERP support | SAP + Epicor + Oracle + Dynamics | N/A | SAP-centric (Joule Studio can reach non-SAP sources via SAP Integration Suite) | No ERP access |
| Quote time (50 lines) | ~15s | 2-4 hours | Not publicly documented | N/A |
| Self-hostable | Yes | N/A | No (SAP BTP cloud service) | No |
| Data stays local | Yes | Yes | No | No |
| Open source | MIT | N/A | No | No |
| Dev mock backend | Yes | N/A | Not publicly documented | N/A |
| MCP compatible | Yes | N/A | Not publicly documented | No |
| ERP | Status | Connection | Docs |
|---|---|---|---|
| Epicor Kinetic | Supported | REST API | Setup |
| SAP ECC / S/4HANA | Beta (manual install) | PyRFC (BAPI) | Setup |
| Oracle Cloud SCM | Supported | REST API | Setup |
| Microsoft Dynamics 365 | Supported | Graph API | Setup |
| Mock backend | Built-in | In-memory | No config needed |
SAP note: pyrfc requires the SAP NetWeaver RFC Library, which is not on PyPI and must be downloaded manually from SAP's support portal (S-user required). See docs/erp-setup/sap.md for step-by-step instructions.
Measured using the in-memory mock backend (200 realistic parts, no ERP system required). Run it yourself:
git clone https://github.com/RudrenduPaul/electronics-rfq-agent
cd electronics-rfq-agent uv run python benchmarks/run.py
ERP lookup latency (100 individual lookups, mock backend):
| P50 | P99 | Mean |
|---|---|---|
| 0.00025ms | 0.0023ms | 0.00032ms |
Quote assembly time by RFQ size (parser mocked, no Anthropic API call):
| RFQ size | Assembly time |
|---|---|
| 10 lines | 0.004s |
| 25 lines | 0.001s |
| 50 lines | 0.001s |
*These numbers cover ERP lookup and quote assembly only. The RFQ parser is mocked and no Anthropic API call is made. In production, AI document parsing adds 5-15s per document and real ERP lookups add 100-500ms per line (parallelised at up to max_concurrent=10), giving a realistic total of ~15s for a 50-line RFQ. Manual baseline: 2-4 hours.*
Electronics RFQ Agent works with any agent framework that supports MCP:
| Framework | Install | Example |
|---|---|---|
| Claude (built-in) | pip install electronics-rfq-agent-cli | 01-basic-quote |
| LangGraph | pip install 'electronics-rfq-agent-cli[langgraph]' | 04-langgraph-agent |
| OpenAI Agents SDK | pip install electronics-rfq-agent-cli[agents] | 05-openai-agents |
| CrewAI | pip install electronics-rfq-agent-cli[crewai] | n/a |
git clone https://github.com/RudrenduPaul/electronics-rfq-agent
cd electronics-rfq-agent cp .env.example .env # add your ERP credentials and Anthropic API key docker compose up -d
Your quote data never leaves your environment.