MCP サーバーを自作したい(基本)
4. 権限・セキュリティコマンド / 機能
TypeScript/Python SDK を使用カスタム MCP サーバーの作成
設定例
// TypeScript での基本的な MCP サーバー
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new McpServer({
name: "my-custom-server",
version: "1.0.0"
});
// ツールを定義
server.tool(
"hello",
"挨拶を返すツール",
{ name: { type: "string", description: "名前" } },
async ({ name }) => {
return {
content: [{ type: "text", text: `Hello, ${name}!` }]
};
}
);
// サーバー起動
const transport = new StdioServerTransport();
await server.connect(transport);こんな時に使う
- 独自のツールを Claude に追加したい時
- 社内システムと連携したい時
- 特殊な処理を自動化したい時
使い方
- 1npm install @modelcontextprotocol/sdk
- 2McpServer インスタンスを作成
- 3server.tool() でツールを定義
- 4StdioServerTransport で標準入出力を使用
Tips
- ツール名は Claude が呼び出す際の識別子
- 説明文は Claude がツールを選択する際の判断材料
- 引数のスキーマは JSON Schema 形式で定義