Back to skills
SKILL.md
Mcp Registry
ASecurityMCP server registry, auto-discovery, configuration, custom server development guide
- 530 stars
- 0 votes
- 0 copies
- 1 view
- Added May 29, 2026
Works with
Security analysis
92/100- Installs packages at runtime which could introduce malicious dependencies
npx -y skills add vibeeval/vibecosystem --skill mcp-registry --agent claude-codeAre you the author of Mcp Registry?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/vibeeval-mcp-registry)---
name: mcp-registry
description: MCP server registry, auto-discovery, configuration, custom server development guide
---
# MCP Registry & Auto-Discovery
## MCP Nedir?
Model Context Protocol (MCP) - Claude'un dis sistemlerle (DB, API, browser, dosya sistemi) iletisim kurmasini saglayan standart protokol.
## Kurulu MCP Server'lar
Kontrol: `~/.mcp.json` dosyasini oku.
```bash
# Mevcut durumu gor
cd ~/.claude && python3 scripts/mcp/registry.py status
```
## Proje Icin MCP Onerisi
```bash
# Proje dizinindeki dosyalara gore oneri al
cd ~/.claude && python3 scripts/mcp/registry.py recommend /path/to/project
# Tum registry'yi gor
cd ~/.claude && python3 scripts/mcp/registry.py list
```
## Bilinen MCP Server'lar
### Resmi (Anthropic / MCP)
| Server | Kullanim | Sinyal Dosyalari |
|--------|---------|-----------------|
| github | GitHub API (repo, issue, PR) | .github/, .git/ |
| filesystem | Dosya sistemi erisimi | * |
| postgres | PostgreSQL DB | schema.prisma, *.sql, migrations/ |
| sqlite | SQLite DB | *.db, *.sqlite |
| docker | Docker yonetimi | Dockerfile, docker-compose.yml |
| puppeteer | Browser otomasyon | playwright.config.*, cypress.config.* |
| brave-search | Web arama | - |
| chrome-devtools | Browser debug | next.config.*, vite.config.* |
| kubernetes | K8s cluster | k8s/, kustomization.yaml |
### 3rd Party (Kurulu)
| Server | Kullanim | Durum |
|--------|---------|-------|
| browser-use | AI browser otomasyon | ~/.mcp.json'da |
| codebase-memory | Codebase indexing (64 dil) | ~/bin/codebase-memory-mcp |
| notion | Notion workspace | ~/.mcp.json'da |
| crawl4ai | Web crawling | pip, crwl CLI |
## ~/.mcp.json Konfigurasyonu
```json
{
"mcpServers": {
"server-adi": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-X"],
"env": {
"API_KEY": "..."
}
}
}
}
```
### Ornek: GitHub MCP Ekleme
```json
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxx"
}
}
}
}
```
### Ornek: PostgreSQL MCP
```json
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:pass@localhost:5432/db"]
}
}
}
```
## Ozel MCP Server Yazma
### Minimal Python MCP Server
```python
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("my-server")
@mcp.tool()
def my_tool(param: str) -> str:
"""Tool aciklamasi"""
return f"Sonuc: {param}"
@mcp.resource("resource://my-data")
def my_resource() -> str:
"""Resource aciklamasi"""
return "data"
if __name__ == "__main__":
mcp.run()
```
### Minimal TypeScript MCP Server
```typescript
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server({ name: "my-server", version: "1.0.0" }, {
capabilities: { tools: {} }
});
server.setRequestHandler(ListToolsRequestSchema, async () => ({
tools: [{
name: "my_tool",
description: "Tool aciklamasi",
inputSchema: { type: "object", properties: { param: { type: "string" } } }
}]
}));
server.setRequestHandler(CallToolRequestSchema, async (request) => ({
content: [{ type: "text", text: `Sonuc: ${request.params.arguments?.param}` }]
}));
const transport = new StdioServerTransport();
await server.connect(transport);
```
### mcp.json'a Ekleme
```json
{
"mcpServers": {
"my-server": {
"command": "python3",
"args": ["/path/to/server.py"]
}
}
}
```
## MCP Debug & Troubleshooting
### Server Baslatma Testi
```bash
# Server'in calistigini dogrula
echo '{"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{}},"id":1}' | npx -y @modelcontextprotocol/server-github 2>/dev/null
```
### Yaygin Sorunlar
| Sorun | Cozum |
|-------|-------|
| "spawn ENOENT" | command path'i kontrol et, npx/python3 PATH'te mi? |
| "Connection refused" | Server'i manual calistir, hata mesajini oku |
| Tool gorunmuyor | Claude Code'u restart et (MCP session basinda yuklenir) |
| Timeout | args'a timeout flag ekle, veya network kontrol et |
| Auth hatasi | env degiskenlerini kontrol et (.env degil, mcp.json'a yaz) |
| Python version uyumsuzluk | Python 3.10+ gerekli, `python3 --version` kontrol et |
| pip kurulum hatasi | `pip3 install --user --break-system-packages <paket>` |
### Loglar
```bash
# Claude Code MCP loglarini gor
ls ~/.claude/logs/mcp*.log 2>/dev/null
# Server'i verbose modda calistir
DEBUG=* npx -y @modelcontextprotocol/server-github 2>&1 | head -50
```
## Auto-Discovery Hook
`mcp-discovery.ts` hook'u session basinda otomatik calisir:
- Proje dizinindeki dosyalari tarar
- Kurulu olmayan ama faydali MCP server'lari tespit eder
- systemMessage ile oneri gosterir
- Session basina 1 kez calisir
## Registry Script
```bash
cd ~/.claude && python3 scripts/mcp/registry.py recommend . # Oneri
cd ~/.claude && python3 scripts/mcp/registry.py status # Kurulu
cd ~/.claude && python3 scripts/mcp/registry.py list # Tumu
```
Attribution
Comments
Loading comments…