Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
作者による説明(英語の原文)
Italian e-invoicing (FatturaPA/SdI), Peppol, KSeF, ZUGFeRD, and PDF invoice generation via POP
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
Authorization「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"pop": {
"command": "npx",
"args": [
"-y",
"@getpopapi/pop-mcp"
]
}
}
}ターミナルでこれを実行します
claude mcp add --transport http pop https://mcp.popapi.io/mcp --header 'Authorization: your-value'claude mcp add pop -- npx -y @getpopapi/pop-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"pop": {
"url": "https://mcp.popapi.io/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"pop": {
"command": "npx",
"args": [
"-y",
"@getpopapi/pop-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"pop": {
"type": "http",
"url": "https://mcp.popapi.io/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"pop": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@getpopapi/pop-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
Authorization 秘密 必須 HTTP headerこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーは、ツール一覧を表示する前にサインインを求めます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
公開者(popapidev)がリポジトリの所有者(getpopapi)ではありません。別の人が登録した可能性があります
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
196ミリ秒で応答(HTTP 401)
キーやトークンを自分でコピーして貼り付ける必要があります
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:Authorization
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(2.1.0)がレジストリに届いたのは9 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Finance Toolkit, SolidInvoice, Korea Tax Calculator
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
MCP (Model Context Protocol) server for POP — enabling LLMs to generate, submit, and manage Italian e-invoices (FatturaPA/SdI), Peppol, KSeF, ZUGFeRD/Factur-X, and PDF invoices directly from AI assistants.
npm:
@getpopapi/pop-mcp· Remote:https://mcp.popapi.io/mcp
Don't want to install anything? pop-mcp runs as a hosted, multi-tenant MCP server at:
https://mcp.popapi.io/mcp
Head to popapi.io to grab a license key, then point any MCP-speaking client at that URL with your key as a Bearer token. No local install, no POP_API_KEY env var, no build step — this is the recommended way to try pop-mcp for most people. Use the local stdio setup below only if you specifically need a Claude Desktop config running a process on your own machine.
This endpoint speaks MCP 2026-07-28, which is fully stateless: there is no initialize handshake and no session to open or track. Every request is self-contained — it names its own protocol version and capabilities — and the server answers it independently. Because of that, this is a multi-tenant endpoint: it never reads a fixed POP_API_KEY from its own environment. Every request must carry your own POP license key as a Bearer token:
Authorization: Bearer <your_license_key>
A missing or malformed Authorization header returns a 401 with error_code: "unauthorized_user" before any POP API call is made. An invalid-but-well-formed key is passed straight through to POP's API and surfaces whatever error POP returns (unauthorized_user, insufficient_level, etc.) — the server does not re-validate keys itself.
Any modern MCP HTTP client can connect: Claude (remote connector), the OpenAI Responses API, n8n, MCP Inspector, or a custom integration — not just Claude Desktop. All invoice, status, advanced, and onboarding tools are available; onboarding tools use their own onboarding_token per call and don't require the Bearer key.
Discover the server's supported protocol versions and capabilities (optional — clients can also just call tools/list or tools/call directly and handle a version-negotiation error inline):
curl -X POST https://mcp.popapi.io/mcp \
-H "Content-Type: application/json" \ -H "Authorization: Bearer your_license_key_here" \ -H "MCP-Protocol-Version: 2026-07-28" \ -H "Mcp-Method: server/discover" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "server/discover", "params": { "_meta": { "io.modelcontextprotocol/protocolVersion": "2026-07-28", "io.modelcontextprotocol/clientCapabilities": {} } } }'
List the available tools — every request is self-contained, so _meta (protocol version + client capabilities) travels on every call, not just the first one:
curl -X POST https://mcp.popapi.io/mcp \
-H "Content-Type: application/json" \ -H "Authorization: Bearer your_license_key_here" \ -H "MCP-Protocol-Version: 2026-07-28" \ -H "Mcp-Method: tools/list" \ -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": { "_meta": { "io.modelcontextprotocol/protocolVersion": "2026-07-28", "io.modelcontextprotocol/clientCapabilities": {} } } }'
The tool catalog is identical for every license key, so tools/list and server/discover responses carry a one-hour public cache hint (ttlMs: 3600000, cacheScope: "public") — clients and gateways may cache them across tenants.
`MCP-Protocol-Version` and `Mcp-Method` are required on every request (per SEP-2243), and must
match the body's
_meta.protocolVersionandmethodexactly, or the server rejects the request
with a
400and JSON-RPC error-32020(HeaderMismatch).tools/callrequests additionally
require an
Mcp-Nameheader matchingparams.name.
npx @modelcontextprotocol/inspector
Configure it to connect to https://mcp.popapi.io/mcp with header Authorization: Bearer .
This endpoint runs as a Vercel serverless function (api/mcp.ts → src/mcpHandler.ts). To run it locally: npx vercel dev (requires vercel link to the project first).
POP is a cloud service for electronic invoice generation and delivery, supporting:
| Tool | Endpoint | Plan |
|---|---|---|
pop_create_sdi_invoice | POST /create-xml | Any |
pop_create_peppol_invoice | POST /create-ubl | Any (Basic+ to submit) |
pop_create_pdf_invoice | POST /create-pdf | Any (Basic+ for email) |
pop_create_ksef_invoice | POST /create-ksef-xml | Any (KSeF setup for provider submission) |
pop_create_zugferd_invoice | POST /create-zugferd | Any |
pop_sync_zoho_document | POST /integration/zoho/sync | Zoho connector required |
| Tool | Endpoint | Plan |
|---|---|---|
pop_get_invoice_status | POST /sdi/document-notifications | Any |
pop_get_peppol_document | POST /peppol/document-get | Basic+ |
pop_get_sdi_document | POST /sdi/document-get | Basic+ |
| Tool | Endpoint | Plan |
|---|---|---|
pop_verify_sdi_document | POST /sdi/document-verify | Basic+ |
pop_preserve_document | POST /sdi/document-preserve | Basic+ |
New to POP? Visit popapi.io to create your account and get your license key.
API-only users can activate their account and obtain a license_key with this flow:
license_keylicense_key, visible under Account > APIlicense_key must be treated as a secret credential — do not commit it to source controllicense_keyGET /account-profilenpm install -g @getpopapi/pop-mcp
git clone https://github.com/getpopapi/pop-mcp
cd pop-mcp npm install npm run build
Set your POP license key as an environment variable:
export POP_API_KEY=your_license_key_here
Optional — use the staging environment:
export POP_ENVIRONMENT=staging
Add to your claude_desktop_config.json:
If installed from npm:
{
"mcpServers": { "pop": { "command": "pop-mcp", "env": { "POP_API_KEY": "your_license_key_here" } } } }
If running from source:
{
"mcpServers": { "pop": { "command": "node", "args": ["/path/to/pop-mcp/dist/cli.js"], "env": { "POP_API_KEY": "your_license_key_here" } } } }
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonThe license_key is always injected automatically from POP_API_KEY — never pass it manually.
pop_create_sdi_invoiceGenerate an Italian FatturaPA XML document. Optionally submit it to the SdI (Sistema di Interscambio).
MCP inputs:
| Parameter | Type | Required | Description |
|---|---|---|---|
data | object | ✅ | Full invoice data (see Invoice Data Structure) |
submit_to_sdi | boolean | — | Set true to submit to SdI. Requires Basic+ plan with active SdI integration. Default: false |
integration | object | — | Override integration config. Overrides submit_to_sdi if set. |
environment | string | — | Target environment (e.g. "sandbox") |
Integration options for `integration.use`:
"sdi-via-pop" or "sdi" — Submit via POP SdI"pop-to-webhook" — Deliver to a webhook (requires id)"fatture-in-cloud" — Deliver to Fatture in CloudAPI payload sent:
{
"license_key": "YOUR_LICENSE_KEY", "user_agent": "pop-mcp", "user_agent_version": "1.0.0", "data": { "...invoice fields..." }, "integration": { "use": "sdi-via-pop", "action": "create" } }
integrationis omitted whensubmit_to_sdiisfalseand no override is provided (XML-only generation).
pop_create_peppol_invoiceGenerate a Peppol UBL 2.1 document. Optionally submit it to the Peppol network.
MCP inputs:
| Parameter | Type | Required | Description |
|---|---|---|---|
data | object | ✅ | Full invoice data. customer_type must be "company" or "freelance" |
submit_to_peppol | boolean | — | Set true to submit to the Peppol network. Requires Basic+ plan. Default: false |
integration | object | — | Override integration config |
environment | string | — | Target environment |
Integration options for `integration.use`:
"peppol-via-pop" or "peppol" — Submit via POP Peppol"pop-to-webhook" — Deliver to a webhook (requires id)VAT exemption rules specific to Peppol:
data.nature is the VAT exemption code (a VATEX code such as VATEX-EU-G, VATEX-EU-IC, VATEX-EU-AE or VATEX-EU-O; these are examples, not a complete list). It stays a free string: the POP API verifies it and answers with a plain-language error.vies, VAT rate) or changes it, and asks when it is missing. An API error is shown to the user and the call is not retried with another code.data.delivery_data.country (ISO 3166-1 alpha-2, country only, never the address) when the code is VATEX-EU-IC. delivery_data.date (YYYY-MM-DD) is optional and defaults to the document date. A credit note carries the same delivery_data as the invoice it reverses.API payload sent:
{
"license_key": "YOUR_LICENSE_KEY", "user_agent": "pop-mcp", "user_agent_version": "1.0.0", "data": { "...invoice fields...", "nature": "VATEX-EU-IC", "delivery_data": { "country": "FR" } }, "integration": { "use": "peppol-via-pop", "action": "create" } }
pop_create_pdf_invoiceGenerate a branded PDF invoice. Optionally email it to up to 3 recipients.
MCP inputs:
| Parameter | Type | Required | Description |
|---|---|---|---|
data | object | ✅ | Invoice data. Must include data.pdf for PDF-specific settings |
| send_email | boolean | — | Set true to email the PDF (requir
冒頭だけを表示しています。続きはリポジトリで読めます