mcpField
P
Publicsofttools Mcp

Publicsofttools Mcp

ローカル
github.com/DrEjazAhmed開発ツール020 週間前に更新

Publicsofttools Mcp について

Publicsofttools Mcp は、PDF 操作、エンコード、暗号ハッシュ、ドメインや IP の照会など、AI エージェント向けの 14 種類のツールを提供します。API キーを設定し、Claude、Cursor、Windsurf などの MCP 対応クライアントに追加できます。

主な機能

  1. 01QR コード生成
  2. 02PDF の圧縮、結合、分割
  3. 03PDF の変換とロック解除
  4. 04ハッシュ、UUID、Base64 の処理
  5. 05パスワード生成
  6. 06IP、DNS、SSL、WHOIS の照会

活用シーン

  1. 01PDF 文書の整理や結合
  2. 02ハッシュ、UUID、パスワードの生成
  3. 03ドメインレコードや証明書の確認
  4. 04IP の位置情報やネットワーク情報の照会

MCP 対応

MCP 対応 AI エージェントに 14 種類のツールを提供します。すべてのツールで PublicSoftTools の API キーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"publicsofttools": {
"command": "npx",
"args": [
"-y",
"publicsofttools-mcp"
],
"env": {
"PST_API_KEY": "<PST_API_KEY>"
}
}
}
}
起動コマンドnpx -y publicsofttools-mcp
設定が必要な環境変数
PST_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmpublicsofttools-mcp

ツール

14

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
sizenumberいいえ出力サイズ(ピクセル、デフォルト:256、最大:1024)
textstringはいQR コードにエンコードするテキスト、URL、またはデータ
formatenumいいえ出力形式——png または svg(デフォルト:png)png | svg

詳細

PublicSoftTools MCP Server

MCP に対応した任意の AI エージェント(Claude、Cursor、Windsurf)から、PublicSoftTools の 14 種類のユーティリティツールを利用できます。

npm: npx publicsofttools-mcp
API docs: https://www.publicsofttools.com/docs
Get a key: https://www.publicsofttools.com/account/api-keys


含まれるツール

ツールエンドポイント説明
generate_qr_codePOST /api/v1/util/qrbase64 PNG または生の SVG 形式の QR コード
generate_hashPOST /api/v1/util/hashMD5、SHA-1、SHA-256、SHA-384、SHA-512
generate_uuidGET /api/v1/util/uuidUUID v4 — 一度に最大 100 個
encode_decode_base64POST /api/v1/util/base64URL セーフ形式でのエンコードまたはデコード
generate_passwordPOST /api/v1/util/password暗号学的に安全なパスワード
lookup_ipGET /api/v1/ip/lookupジオロケーション、ISP、ASN、プロキシ/VPN の検出
check_sslGET /api/v1/domain/sslSSL 証明書の詳細と残り日数
lookup_dnsGET /api/v1/domain/dnsA、AAAA、MX、TXT、CNAME、NS、SOA レコード
whois_lookupGET /api/v1/domain/whoisドメインのレジストラ、日付、ネームサーバー
compress_pdfPOST /api/v1/pdf/compressPDF ファイルサイズを縮小(最大 4 MB)
merge_pdfsPOST /api/v1/pdf/merge2~20 個の PDF を 1 つに結合
split_pdfPOST /api/v1/pdf/splitページ範囲または N ページごとに分割
pdf_to_wordPOST /api/v1/pdf/to-wordPDF を編集可能な .docx に変換
unlock_pdfPOST /api/v1/pdf/unlock権限制限を解除

前提条件

  • Node.js 18 以降(ネイティブの fetch サポートに必要)
  • PublicSoftTools API キー — 無料で取得(月 1,500 回、クレジットカード不要)

インストールと設定

Claude Desktop

Claude Desktop の設定ファイルに追加します。

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json

{
  "mcpServers": {
    "publicsofttools": {
      "command": "npx",
      "args": ["-y", "publicsofttools-mcp"],
      "env": {
        "PST_API_KEY": "your_api_key_here"
      }
    }
  }
}

Claude Desktop を再起動します。ツールパネルにツールが表示されます。

Cursor

Settings → MCP を開き、次を追加します。

{
  "publicsofttools": {
    "command": "npx",
    "args": ["-y", "publicsofttools-mcp"],
    "env": { "PST_API_KEY": "your_api_key_here" }
  }
}
Windsurf

Settings → MCP Servers を開き、上記の Cursor と同じ JSON ブロックを追加します。


ツールリファレンス

すべてのツールで PST_API_KEY 環境変数が必要です。ファイルの入力/出力には、すべて base64 エンコードされたコンテンツを使用します。


generate_qr_code

任意のテキスト、URL、データの QR コード画像を生成します。

パラメーター

名前型必須デフォルト説明
textstringはい—エンコードするテキスト、URL、またはデータ
sizenumberいいえ256出力サイズ(ピクセル単位、64~1024)
format"png" | "svg"いいえ"png"出力画像形式
darkstringいいえ"#000000"暗いモジュールの色(16 進数)
lightstringいいえ"#ffffff"明るいモジュールの色(16 進数)
error_correction"L" | "M" | "Q" | "H"いいえ"M"誤り訂正レベル

レスポンス

{
  "image": "data:image/png;base64,iVBORw0...",
  "format": "png",
  "size": 256
}

format: "svg" の場合、image はデータ URL ではなく、生の SVG 文字列になります。


generate_hash

任意のテキストをハッシュ化します。algorithm を省略すると、1 回の呼び出しですべてのハッシュを取得できます。

パラメーター

名前型必須デフォルト説明
textstringはい—ハッシュ化するテキスト(最大 100,000 文字)
algorithm"md5" | "sha1" | "sha256" | "sha384" | "sha512"いいえすべてハッシュアルゴリズム
encoding"hex" | "base64"いいえ"hex"出力エンコーディング

レスポンス(すべてのアルゴリズム)

{
  "hashes": {
    "md5":    "5f4dcc3b5aa765d61d8327deb882cf99",
    "sha1":   "5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8",
    "sha256": "5e884898da28047151d0e56f8dc629277...",
    "sha384": "a8b64babd0aca91a59bdbb7761b421d4...",
    "sha512": "b109f3bbbc244eb82441917ed06d618b..."
  },
  "encoding": "hex",
  "input_length": 8
}

generate_uuid

UUID v4 の値をまとめて生成します。

パラメーター

名前型必須デフォルト説明
countnumberいいえ1生成する UUID の数(1~100)

レスポンス

{
  "uuids": [
    "550e8400-e29b-41d4-a716-446655440000",
    "6ba7b810-9dad-11d1-80b4-00c04fd430c8"
  ],
  "count": 2
}

encode_decode_base64

テキストを Base64 にエンコードするか、Base64 をプレーンテキストにデコードします。

パラメーター

名前型必須デフォルト説明
textstringはい—入力テキスト(最大 500,000 文字)
action"encode" | "decode"はい—実行する操作
url_safebooleanいいえfalseURL セーフな形式を使用します(+ と / の代わりに - と _ を使用)

レスポンス

{
  "result": "aGVsbG8gd29ybGQ=",
  "action": "encode",
  "url_safe": false,
  "input_length": 11,
  "output_length": 16
}

generate_password

暗号学的に安全なランダムパスワードを生成します。

パラメーター

名前型必須デフォルト説明
lengthnumberいいえ16パスワードの長さ(8~128)
uppercasebooleanいいえtrue大文字(A~Z)を含めます
numbersbooleanいいえtrue数字(0~9)を含めます
symbolsbooleanいいえtrue記号(!@#$…)を含めます

レスポンス

{
  "password": "kR7#mQ2@xZ9!wP4$",
  "length": 16,
  "entropy_bits": 98.6
}

lookup_ip

任意の IPv4 または IPv6 アドレスの位置情報とネットワーク情報を調べます。

パラメーター

名前型必須説明
ipstringはいIPv4 または IPv6 アドレス(例:8.8.8.8)

レスポンス

{
  "ip": "8.8.8.8",
  "country": "United States",
  "country_code": "US",
  "region": "California",
  "city": "Mountain View",
  "zip": "94043",
  "lat": 37.4056,
  "lon": -122.0775,
  "timezone": "America/Los_Angeles",
  "isp": "Google LLC",
  "org": "Google LLC",
  "asn": "AS15169 Google LLC",
  "is_mobile": false,
  "is_proxy": false,
  "is_hosting": true
}

check_ssl

任意のドメインの SSL/TLS 証明書の詳細を確認します。

パラメーター

名前型必須説明
domainstringはいドメイン名(例:example.com)

レスポンス

{
  "domain": "example.com",
  "valid": true,
  "issuer": "Let's Encrypt",
  "subject": "example.com",
  "san": ["example.com", "www.example.com"],
  "valid_from": "2026-01-01T00:00:00Z",
  "valid_to": "2026-04-01T00:00:00Z",
  "days_remaining": 22,
  "protocol": "TLSv1.3"
}

lookup_dns

ドメインの DNS レコードを照会します。type を省略すると、利用可能なすべてのレコードタイプを一度に取得します。

パラメーター

名前型必須デフォルト説明
domainstringはい—照会するドメイン(例:example.com)
type"A" | "AAAA" | "MX" | "TXT" | "CNAME" | "NS" | "SOA"いいえallレコードタイプ

レスポンス

{
  "domain": "example.com",
  "records": {
    "A": ["93.184.216.34"],
    "MX": [{ "exchange": "mail.example.com", "priority": 10 }],
    "NS": ["ns1.example.com", "ns2.example.com"],
    "TXT": ["v=spf1 include:_spf.example.com ~all"]
  },
  "queried_at": "2026-06-09T12:00:00Z"
}

whois_lookup

ドメインの登録情報を取得します。

パラメーター

名前型必須説明
domainstringはい検索するドメイン(例:example.com)

レスポンス

{
  "domain": "example.com",
  "registrar": "Example Registrar, Inc.",
  "registered_at": "1995-08-14T00:00:00Z",
  "expires_at": "2027-08-13T00:00:00Z",
  "updated_at": "2024-08-13T00:00:00Z",
  "nameservers": ["a.iana-servers.net", "b.iana-servers.net"],
  "status": ["clientDeleteProhibited", "clientTransferProhibited"]
}

compress_pdf

Ghostscript の圧縮機能を使用して PDF ファイルのサイズを縮小します。最大ファイルサイズ:4 MB。

パラメーター

名前型必須デフォルト説明
file_base64stringはい—Base64 でエンコードされた PDF コンテンツ
level"screen" | "ebook" | "printer" | "prepress"いいえ"ebook"圧縮レベル。screen = 最小サイズ、prepress = 最高画質

レスポンス

{
  "pdf": "<base64-encoded compressed PDF>",
  "original_size": 2048000,
  "compressed_size": 819200,
  "reduction_percent": 60
}

merge_pdfs

2~20 個の PDF ファイルを 1 つのドキュメントに結合します。ファイルごとの最大サイズは 4 MB です。

パラメーター

名前型必須説明
files_base64string[]はい順番に結合する、Base64 でエンコードされた PDF の配列(2~20 ファイル)

レスポンス

{
  "pdf": "<base64-encoded merged PDF>",
  "page_count": 12,
  "files_merged": 3
}

split_pdf

PDF を複数のドキュメントに分割します。最大ファイルサイズ:4 MB。

パラメーター

名前型必須デフォルト説明
file_base64stringはい—分割する、Base64 でエンコードされた PDF
mode"range" | "every_n" | "every_page"はい—分割モード
pagesstringいいえ—mode=range の場合のページ範囲。例:"1-3,5,7-9"
every_nnumberいいえ—mode=every_n の場合、N ページごとに分割します

レスポンス

{
  "files": [
    "<base64-encoded PDF part 1>",
    "<base64-encoded PDF part 2>"
  ],
  "count": 2
}

pdf_to_word

PDF を編集可能な Word ドキュメント(.docx)に変換します。最大ファイルサイズ:4 MB。

パラメーター

名前型必須説明
file_base64stringはい変換する、Base64 でエンコードされた PDF

レスポンス

{
  "docx": "<base64-encoded .docx file>",
  "page_count": 5
}

unlock_pdf

PDF のオーナーパスワードによる権限制限(印刷制限、コピー制限など)を解除します。オーナー制限のみが設定されている場合、パスワードは不要です。

パラメーター

名前型必須説明
file_base64stringはいBase64 エンコードされた PDF
passwordstringいいえファイルを開く際に必要な場合の PDF パスワード

レスポンス

{
  "pdf": "<base64-encoded unlocked PDF>",
  "was_encrypted": true
}

認証

API キーを環境変数として設定します。

export PST_API_KEY=pst_live_your_key_here

または、1 回限りのテストではインラインで渡します。

PST_API_KEY=pst_live_your_key_here node dist/index.js

各リクエストで、キーは X-Api-Key: pst_live_... として送信されます。


レート制限とプラン

プラン料金月間呼び出し回数
Free$01,500
Starter$29/mo15,000
Pro$99/mo100,000
BusinessCustom1,000,000+

上限を超えると、API は 429 Too Many Requests を返します。上限は毎月 1 日(UTC)にリセットされます。

キーの取得またはアップグレード:https://www.publicsofttools.com/account/api-keys


トラブルシューティング

「PST_API_KEY environment variable is required」
キーが設定されていない場合、サーバーは直ちに終了します。MCP 設定の env ブロックで PST_API_KEY が設定されていることを確認してください。

Claude Desktop にツールが表示されない
JSON 設定が有効であること(末尾に余分なカンマがないこと)を確認してから、Claude Desktop を完全に終了し、再起動してください。ウィンドウを閉じるだけでは不十分です。

401 Unauthorized
API キーが無効か、取り消されています。https://www.publicsofttools.com/account/api-keys で再度確認してください。

429 Too Many Requests
月間上限に達しました。プランをアップグレードするか、毎月 1 日のリセットまでお待ちください。

413 File Too Large
PDF エンドポイントのバイナリ上限は 4 MB です。送信前にファイルを圧縮するか、分割してください。

Node バージョンエラー
node --version を実行してください。ネイティブの fetch を使用するには Node 18 以降が必要です。https://nodejs.org から更新してください。


ライセンス

MIT — LICENSE を参照してください

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。