mcpField
S
ShipMyForm

ShipMyForm

認証済みおすすめリモート
shipmyform.com開発ツール05 週間前に更新

ShipMyForm について

ShipMyFormのJavaScriptライブラリは、静的サイトのフォームをホスト型バックエンドに送信します。React、Vue、Svelte、Solid、Astro向けの連携機能と型付きの結果を備え、不正利用対策にも対応します。

主な機能

  1. 01フレームワーク非依存の送信クライアント
  2. 02React、Vue、Svelte、Solid、Astro連携
  3. 03型付きの送信結果
  4. 04ハニーポットとTurnstileトークン対応
  5. 05署名付きタイムトラップトークンの任意利用

活用シーン

  1. 01静的サイトの問い合わせフォーム送信
  2. 02Reactアプリへのフォーム送信機能の追加
  3. 03SvelteやVueサイトからのフォームデータ送信
  4. 04送信時のTurnstileトークンの受け渡し

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://shipmyform.com/api/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://shipmyform.com/api/mcp認証が必要

ツール

29
パラメーター型必須説明
emailstringはいユーザーのメールアドレス。ユーザーに尋ねてください。決して作り出さないでください。
workspaceNamestringいいえ
agentstringいいえあなたの名前。例:'Claude Code'。確認メールに表示されます。
presetenumいいえ名前付きのスコープセット:full(すべて)、wiring(フォームのみ、送信アクセスなし)、readonly、triagefull | wiring | readonly | triage
scopesarrayいいえプリセットの代わりにスコープを明示的に指定します。呼び出し元のキーが持つスコープを超える場合は無視されます。

詳細

shipmyform-js

npm ci license

fetch を介して ShipMyForm にフォームを送信するためのクライアントライブラリです。型付きの結果とフレームワーク用バインディングを提供します。

パッケージ用途
@shipmyform/coreフレームワークに依存しないクライアントとプログレッシブエンハンスメント
@shipmyform/reactuseSubmit フック
@shipmyform/vueuseSubmit コンポーザブル
@shipmyform/svelteストアと use:shipmyform アクション
@shipmyform/solidcreateSubmit プリミティブ
@shipmyform/astro<ShipMyForm> コンポーネント

クイックスタート

import { createClient } from '@shipmyform/core'

const form = createClient({ formId: 'YOUR_FORM_ID' })
const result = await form.submit({ email: '[email protected]', message: 'Hello' })

if (!result.ok) console.error(result.error, result.message)

React:

import { useSubmit } from '@shipmyform/react'

function Contact() {
  const { submit, submitting, succeeded, error } = useSubmit({ formId: 'YOUR_FORM_ID' })

  if (succeeded) return <p>Thanks!</p>

  return (
    <form onSubmit={(e) => (e.preventDefault(), submit(e.currentTarget))}>
      <input name="email" type="email" required />
      <textarea name="message" required />
      <button disabled={submitting}>Send</button>
      {error && <p>{error.message}</p>}
    </form>
  )
}

不正利用対策

ShipMyForm のエンドポイントは公開されており、クロスオリジンであるため、取得する CSRF トークンはありません。リクエストは、オリジンの許可リスト、ハニーポットフィールド(_gotcha)、任意の Cloudflare Turnstile トークン、レート制限によって審査されます。クライアントはハニーポットを空のままにし、トークンを渡すと Turnstile トークンを転送します。また、任意の tokenProvider を介して署名付きタイムトラップトークンを取得できます。

リリース

Changesets を使用して公開しています。プルリクエストに Changeset を含めてください。

pnpm changeset

main へのマージ後、「Version Packages」プルリクエストが作成されます。これをマージするとバージョンが更新され、npm に公開されます。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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