Skip to main content

mcp-builder

Build Model Context Protocol (MCP) servers: define tools, resources, and prompts that AI agents can discover and use.

ソース情報

リポジトリ
ThinkfleetAI/thinkfleet-engine
ソースの最終更新活動
2026年2月1日 16:21
検出された SKILL.md の言語
英語
スター
0
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
mcp-builder
description
Build Model Context Protocol (MCP) servers: define tools, resources, and prompts that AI agents can discover and use.
metadata
{"thinkfleetbot":{"emoji":"🔌","requires":{"anyBins":"[Truncated]"}}}
# MCP Server Builder Build MCP (Model Context Protocol) servers that expose tools, resources, and prompts to AI agents. ## Quickstart — Create an MCP Server ```bash # Scaffold with official SDK npx @modelcontextprotocol/create-server my-mcp-server cd my-mcp-server npm install ``` ## Server Structure (TypeScript) ```typescript // src/index.ts import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import { z } from "zod"; const server = new McpServer({ name: "my-server", version: "1.0.0" }); // Define a tool server.tool("get_weather", { city: z.string() }, async ({ city }) => ({ content: [{ type: "text", text: `Weather in ${city}: 72°F, sunny` }], })); // Define a resource server.resource("config", "config://app", async () => ({ contents: [{ uri: "config://app", text: JSON.stringify({ env: "production" }) }], })); // Start server const transport = new StdioServerTransport(); await server.connect(transport); ``` ## Build and Test ```bash # Build npm run build # Test with MCP inspector npx @modelcontextprotocol/inspector node dist/index.js # Test tool call directly echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_weather","arguments":{"city":"NYC"}}}' | node dist/index.js ``` ## Register in Claude Code Config ```json5 // ~/.claude/settings.json or project .claude/settings.json { "mcpServers": { "my-server": { "command": "node", "args": ["/path/to/my-mcp-server/dist/index.js"], "env": { "API_KEY": "your-key" } } } } ``` ## Python MCP Server ```bash # Install SDK pip install mcp # Create server cat > server.py << 'EOF' from mcp.server.fastmcp import FastMCP mcp = FastMCP("my-server") @mcp.tool() def get_data(query: str) -> str: """Fetch data based on query.""" return f"Results for: {query}" @mcp.resource("config://app") def get_config() -> str: """Application configuration.""" return '{"env": "production"}' if __name__ == "__main__": mcp.run() EOF # Run python server.py ``` ## Tool Design Best Practices - **Clear names**: `search_users` not `do_search`. Verb + noun. - **Typed inputs**: Use Zod (TS) or type hints (Python) for all parameters. - **Good descriptions**: The AI reads these to decide when to use the tool. - **Error handling**: Return error messages, don't throw. The AI needs to understand what went wrong. - **Idempotent reads**: GET-like tools should be safe to call multiple times. - **Confirm writes**: Destructive tools should describe what they'll do before doing it. ## Notes - MCP servers communicate over stdio (stdin/stdout). Don't print debug info to stdout. - Use stderr for logging: `console.error("debug info")`. - Test with the inspector before connecting to an agent. - Keep tools focused — one tool per operation, not a mega-tool with mode switches. - Resources are for context the agent reads. Tools are for actions the agent takes.
GitHubで見る