MCP Fusion/Get started/クイックスタート
クイックスタート
MCP Fusion で最初のコネクターを構築します。query ツール、PII マスキング付き Presenter、Claude Desktop からの接続、そして Vinkius Cloud への無料デプロイを行います。
このクイックスタートでは、小さな請求コネクターを構築します。請求書を 1 件返すツール、顧客の PII をモデルのコンテキストから締め出す Presenter、MCP クライアントからのライブ接続、そして Vinkius Cloud への無料デプロイです。Installation のとおりに @mcpfusion/core をインストールし、プロジェクトを作成済みとします。
1. サーバーを作成する
import { initMCPFusion } from '@mcpfusion/core';
const f = initMCPFusion();
export default f;initMCPFusion() は、流れるようなツールビルダーを備えたレジストリを返します。ジェネリックパラメータ AppContext は省略可能です。型を指定すると、すべてのハンドラーとミドルウェアが型付きの ctx を受け取ります。
2. Presenter を定義する
import { createPresenter, t } from '@mcpfusion/core';
const InvoicePresenter = createPresenter('Invoice')
.schema({
id: t.string,
customer: t.string,
amount_cents: t.number.describe('CENTS, divide by 100'),
status: t.enum('draft', 'paid', 'overdue'),
})
.redactPII(['customer.email', 'customer.ssn'])
.rules([
'amount_cents is in CENTS. Divide by 100 before showing money.',
])
.limit(50);ここで 3 つのことが起きています。スキーマは存在するフィールドを正確に宣言するので、未宣言のカラムがエージェントに届くことはありません。.redactPII() は指定されたパスを毎回のレスポンスから除去します。.rules() は system prompt の行となり、モデルに単位を教えます。
3. ツールを書く
import { InvoicePresenter } from './presenters';
export default f.query('billing.get_invoice')
.describe('Retrieve an invoice by ID')
.withString('id', 'Invoice ID')
.returns(InvoicePresenter)
.handle(async (input) => {
return db.invoices.findUnique({
where: { id: input.id },
});
});f.query() はツールを読み取り専用として登録します。書き込みには f.mutation()、副作用を伴う操作には f.action() を使います。.returns(InvoicePresenter) が知覚レイヤーを取り付けます。ハンドラーは生の行をそのまま返せばよく、整形は Presenter が行います。
Presenter が付いていないハンドラーから PII を返してはいけません。MCP Fusion では Presenter がエグレスファイアウォールです。なければ、ハンドラーの返り値がそのままモデルへ流れます。
4. クライアントを接続する
開発サーバーを起動し、Claude Desktop、Cursor、その他の MCP クライアントを接続します。
mcpfusion dev --server ./src/server.ts
claude mcp add billing npx tsx src/server.tsクライアントに "what is invoice inv_2026_0417?" と尋ねてみてください。答えがドル単位で返ってきて、トランスクリプトのどこにも顧客のメールアドレスが出てこないのを確認できます。
5. 無料でデプロイする
mcpfusion deployコマンド 1 つでサーバーがバンドルされ、Vinkius Edge に載ります。ホスティングは無料、クレジットカードも不要です。https://edge.vinkius.com/vk_<token>/mcp のような接続トークンと MCP URL を受け取ります。コネクターは他のコネクターと同じように Vinkius コンソールに現れ、capabilities、クレデンシャル、コスト管理も最初から使えます。全容は Deploy を参照してください。
構築したもの
| 部品 | 役割 |
|---|---|
f.query() | エージェントが呼び出せる読み取り専用ツール |
createPresenter() | データとモデルの間の知覚レイヤー |
.redactPII() | PII がモデルに届かないことの保証 |
.returns() | ハンドラーと Presenter をつなぐ配線 |
mcpfusion deploy | Vinkius Edge 上の無料ホスティング |
次のステップ
- The MVA pattern: Presenter が存在する理由
- Tools: mutation、action、ミドルウェア、エラー
- Credentials: 購入者に自分のキーを設定させられる公開方法
