先週、私の分析SaaS向けにModel Context Protocol(MCP)サーバーをリリースしました。今やClaude Desktop、Cursor、そしてMCP互換クライアントは、トラフィック、収益、およびフンループデータを直接クエリできます.
これは、私がどのようにそれを構築したか、どのようなことが機能したか、そして私を驚かせたいくつかのパターンについてのガイドです.
MCPとは、簡単に言うと
MCPは、AIクライアントがツールを呼び出し、外部サーバーからリソースを読み取るためのプロトコルです。LLMツール呼び出しのためのRESTと考えることができます。安定したスキーマと発見が可能です.
サーバーの骨格
import { Server } from '@modelcontextprotocol/sdk/server/index.js'
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
const server = new Server({
name: 'zenovay',
version: '1.0.0',
}, {
capabilities: {
tools: {},
resources: {}
}
})
ツールの定義
server.setRequestHandler('tools/list', async () => ({
tools: [
{
name: 'get_traffic',
description: 'Get pageview and visitor counts for a site over a date range',
inputSchema: {
type: 'object',
properties: {
site: { type: 'string' },
from: { type: 'string' },
to: { type: 'string' }
},
required: ['site', 'from', 'to']
}
}
]
}))
私を驚かせたパターン:構造化された戻り値
生のJSONよりずっと良かった:短い自然言語の要約とデータを返す。Claudeは要約を使って応答し、JSONを使って追跡質問をする。
期待しなかったこと
ユーザーがClaudeに、私がダッシュボードを構築していないことをするよう要求し始めた:
- 「今週と先週の有料トラフィックのコンバージョン率を比較してください」
- 「どの5ページが週間ごとのページビューの減少が最も大きかったか」
- 「過去30日間で私のフロウループ完了率に何が変わったかを要約して」
Claudeは複数のツール呼び出しを連鎖させてこれをする。私はそれらのビューを何も作成する必要はなかった。ツールは原子性があり、Claudeが組み合わせる。
これはMCPについて本当に新しい部分だと思う。インターフェースはLLMで、バックエンドはしっかりとしたツールだけだ。
のインストール
npm install -g @zenovay/mcp をあなたの Claude Desktop 設定に追加してください。
サイト: zenovay.com
オープンソースの MCP サーバーの作業もここで行われているの?他の人々が見つけたパターンに興味があります。
Valerio










