agentsclimarketplace

Mcp builder

Skill ComeOnOliver/skillshub/skills/aiskillstore/marketplace/doyajin174/mcp-builder

🧠 The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.

Install
npx -y skills add ComeOnOliver/skillshub --skill mcp-builder

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Guide for creating MCP (Model Context Protocol) servers. Use this when building integrations with external services, creating new MCP servers, or connecting Claude to APIs.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

3.6 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

MCP Server Builder

MCP μ„œλ²„λ₯Ό μƒμ„±ν•˜μ—¬ Claudeλ₯Ό μ™ΈλΆ€ μ„œλΉ„μŠ€μ™€ μ—°κ²°ν•˜λŠ” κ°€μ΄λ“œμž…λ‹ˆλ‹€.

Overview

"MCP μ„œλ²„μ˜ ν’ˆμ§ˆμ€ LLM이 μ‹€μ œ μž‘μ—…μ„ μ–Όλ§ˆλ‚˜ 잘 μˆ˜ν–‰ν•  수 있게 ν•˜λŠ”κ°€λ‘œ μΈ‘μ •λœλ‹€"

Four-Phase Development

Phase 1: Research & Planning

1. MCP 섀계 원칙 이해
2. ν”„λ‘œν† μ½œ λ¬Έμ„œ ν•™μŠ΅ (mcp.io)
3. ν”„λ ˆμž„μ›Œν¬ 선택 (TypeScript ꢌμž₯)
4. λŒ€μƒ API 뢄석

Phase 2: Implementation

project/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ index.ts      # μ§„μž…μ 
β”‚   β”œβ”€β”€ client.ts     # API ν΄λΌμ΄μ–ΈνŠΈ
β”‚   β”œβ”€β”€ tools/        # 도ꡬ κ΅¬ν˜„
β”‚   └── types.ts      # νƒ€μž… μ •μ˜
β”œβ”€β”€ package.json
└── tsconfig.json

도ꡬ μ–΄λ…Έν…Œμ΄μ…˜:

νƒ€μž…μ„€λͺ…
read-only데이터 쑰회만
destructive데이터 μˆ˜μ •/μ‚­μ œ
idempotent반볡 μ‹€ν–‰ μ•ˆμ „
open-worldμ™ΈλΆ€ μ‹œμŠ€ν…œ 영ν–₯

Phase 3: Review & Test

# MCP Inspector둜 ν…ŒμŠ€νŠΈ
npx @anthropic/mcp-inspector

# 도ꡬ 호좜 ν…ŒμŠ€νŠΈ
mcp-inspector --server ./dist/index.js

Phase 4: Create Evaluations

10개의 λ³΅μž‘ν•œ 평가 질문 생성:

  • 독립적이고 읽기 μ „μš©
  • 검증 κ°€λŠ₯ν•œ λ‹΅λ³€
  • μ‹€μ œ μ‚¬μš© μ‹œλ‚˜λ¦¬μ˜€ 반영

Technical Recommendations

Transport 선택

ν™˜κ²½κΆŒμž₯ Transport
둜컬 CLIstdio
원격 μ„œλ²„Streamable HTTP
λΈŒλΌμš°μ €SSE

TypeScript ꡬ쑰

import { Server } from "@modelcontextprotocol/sdk/server";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio";

const server = new Server({
  name: "my-mcp-server",
  version: "1.0.0",
}, {
  capabilities: {
    tools: {},
  },
});

// 도ꡬ 등둝
server.setRequestHandler(ListToolsRequestSchema, async () => ({
  tools: [
    {
      name: "get_data",
      description: "데이터 쑰회",
      inputSchema: {
        type: "object",
        properties: {
          id: { type: "string" }
        },
        required: ["id"]
      }
    }
  ]
}));

// 도ꡬ μ‹€ν–‰
server.setRequestHandler(CallToolRequestSchema, async (request) => {
  if (request.params.name === "get_data") {
    // κ΅¬ν˜„
  }
});

// μ„œλ²„ μ‹œμž‘
const transport = new StdioServerTransport();
await server.connect(transport);

Best Practices

도ꡬ 넀이밍

βœ… get_user_profile
βœ… create_document
βœ… search_files

❌ doThing
❌ process
❌ handle

μ—λŸ¬ 처리

// μ•‘μ…˜ κ°€λŠ₯ν•œ μ—λŸ¬ λ©”μ‹œμ§€
throw new Error(
  `API rate limit exceeded. Retry after ${retryAfter} seconds.`
);

// μ‚¬μš©μž κ°€μ΄λ“œ 포함
throw new Error(
  `Invalid API key. Get your key at https://api.example.com/keys`
);

μƒνƒœ 관리

  • Stateless JSON μ„ ν˜Έ (ν™•μž₯ 용이)
  • μ„Έμ…˜ μƒνƒœλŠ” ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ 관리
  • 캐싱은 μ„ νƒμ μœΌλ‘œ κ΅¬ν˜„

Evaluation Format

<evaluation>
  <question>How many active users are in the system?</question>
  <expected_tools>["get_user_count"]</expected_tools>
  <validation>Response contains numeric count</validation>
</evaluation>

References

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.