跳到正文
cccskills
免费在 GitHub 公开

mcp-discovery

Discovers available MCP servers from registries and validates compatibility. Auto-discovers MCP servers from official registries, community sources, and local definitions. Triggers on: mcp discovery, find mcp servers, discover mcp, mcp registry, mcp catalog.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md5.8 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

MCP Discovery

Discovers and catalogs available MCP servers from registries, community sources, and local configurations.

Preloaded Skills

Always load before analysis:

  • [skill:dotnet-advisor] -- routing and context
  • [skill:mcp-health] -- validate discovered MCPs

Usage

# Discover all MCP servers
[mcp-discovery:find-all]

# Search MCP registry
[mcp-discovery:search <keyword>]

# Update local MCP config
[mcp-discovery:update-config]

# Show available MCPs
[mcp-discovery:list]
```text
## MCP Registry Sources

### Official Registries

1. **MCP Registry (modelcontextprotocol.io)**
   - Official MCP server listings
   - Verified implementations
   - Community submissions

2. **Smithery Registry (smithery.ai)**
   - Curated MCP servers
   - Ratings and reviews
   - Installation guides

### Discovery Methods

#### From Official Registry

```bash
# Fetch MCP registry
https://registry.modelcontextprotocol.io/servers

# Parse and filter for .NET compatible
jq '.servers[] | select(.tags[] | contains("dotnet") or contains("csharp"))'
```text
#### From Smithery

```bash
# Query Smithery MCP catalog
https://smithery.ai/api/mcp-servers

# Filter by category
curl -s "https://smithery.ai/api/mcp-servers?category=development"
```text
### Local Discovery

#### From Package.json (Node.js projects)

```bash
# Check for MCP servers in devDependencies
jq '.devDependencies | keys[] | select(contains("mcp"))' package.json
```text
#### From Tool Configuration

```bash
# VS Code extensions
ls ~/.vscode/extensions/ | grep -i mcp

# Claude Code config
ls ~/.claude/ | grep -i mcp
```text
## Discovery Script

Add to hooks or commands:

```bash
# Inline mcp-discovery.sh: Discover available MCP servers
set -uo pipefail

DISCOVERED_MCP="{}"

# 1. Check official MCP registry (if network available)
if command -v curl >/dev/null 2>&1; then
  REGISTRY_DATA=$(curl -s --connect-timeout 5 \
    "https://registry.modelcontextprotocol.io/servers" 2>/dev/null || echo "")

  if [ -n "$REGISTRY_DATA" ]; then
    # Parse registry data
    DISCOVERED_MCP=$(echo "$REGISTRY_DATA" | jq -c '{registry: .servers}' 2>/dev/null || echo "{}")
  fi
fi

# 2. Check local MCP installations
LOCAL_MCPS="{}"

# Check for common MCP servers
if command -v uvx >/dev/null 2>&1; then
  LOCAL_MCPS=$(echo "$LOCAL_MCPS" | jq '. + {uvx: true}')
fi

if command -v npx >/dev/null 2>&1; then
  LOCAL_MCPS=$(echo "$LOCAL_MCPS" | jq '. + {npx: true}')
fi

# 3. Merge and return
echo "{\"discovered\": $DISCOVERED_MCP, \"local\": $LOCAL_MCPS}"

exit 0
```text
## MCP Compatibility Matrix

| MCP Server        | Type  | .NET Support | Status | Notes             |
| ----------------- | ----- | ------------ | ------ | ----------------- |
| serena            | stdio | Full         | Active | Semantic analysis |
| context7          | http  | Full         | Active | Library docs      |
| microsoftdocs-mcp | http  | Full         | Active | MS Learn          |
| deepwiki          | http  | Full         | Active | Wiki search       |
| github            | http  | Full         | New    | GitHub API        |

## Auto-Configuration

### Update mcp.json

```bash
# Discover and update config
dotnet-agent-harness:mcp-discovery:update-config

# This appends to .rulesync/mcp.json:
{
  "mcpServers": {
    "newly-discovered-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": ["--from", "some-mcp", "server"]
    }
  }
}
```text
### Integration with rulesync

Add discovery to rulesync workflow:

```json
{
  "sources": [{ "source": "mcp://registry.modelcontextprotocol.io" }]
}
```text
## Best Practices

### 1. Prefer stdio for Local Tools

Local tools should use stdio transport:

- Better performance (no HTTP overhead)
- Works offline
- Easier debugging

### 2. Use http for Cloud Services

Cloud APIs should use http transport:

- No local installation required
- Automatic updates
- Scalable

### 3. Validate Before Adding

Always validate discovered MCPs:

```bash
# Check health before adding
[mcp-health:check <new-mcp>]

# Test functionality
[mcp-discovery:test <new-mcp>]
```text
### 4. Version Pinning

Pin MCP server versions for stability:

```json
{
  "mcpServers": {
    "some-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": ["--from", "some-mcp==1.2.3", "server"]
    }
  }
}
```text\n\n## Troubleshooting Discovery

### No MCPs Found

**Problem:** Registry unreachable

**Solutions:**

- Check network connectivity
- Try offline mode with cached registry
- Use local MCP servers only

### Incompatible MCPs

**Problem:** MCP doesn't support .NET

**Solutions:**

- Check MCP documentation for language support
- Look for .NET-specific alternatives
- Use HTTP MCPs (language-agnostic)

### Duplicate MCPs

**Problem:** Same MCP from multiple sources

**Solutions:**

- Prioritize official registry
- Use version comparison
- User confirmation for duplicates

## Integration Example

### Session Start Hook

Add MCP discovery to session start:

```json
{
  "hooks": {
    "sessionStart": [
      {
        "type": "command",
        "command": "# Discover MCP servers\necho 'Checking for available MCP servers...'\n# Discovery logic here",
        "timeout": 10
      }
    ]
  }
}
```text
### Notification

Inform user of discovered MCPs:

```text
Discovered MCP servers:
✓ serena (local)
✓ microsoftdocs-mcp (cloud)
✓ github (remote)

Run [mcp-discovery:update-config] to add new MCPs.
```text
## References

- [MCP Registry](https://registry.modelcontextprotocol.io/)
- [Smithery MCP Catalog](https://smithery.ai/)
- [skill:mcp-health] -- validate discovered MCPs
- [skill:dotnet-observability] -- metrics for discovery process

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Patterns and techniques for evaluating and improving AI agent outputs.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Comprehensive AI prompt engineering safety review and improvement prompt. Analyzes prompts for safety, bias, security vulnerabilities, and effectiveness while providing detailed improvement recommendations.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Use when user requests research requiring multiple sources, comprehensive analysis, or synthesis across topics - technical research, domain knowledge gathering, market analysis, or learning about complex subjects

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

deep-wiki

免费

AI-powered wiki generation for code repositories with commands, agents, and skills

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Use when building .NET 10 or C# 14 applications; when using minimal APIs, modular monolith patterns, or feature folders; when implementing HTTP resilience, Options pattern, Channels, or validation; when seeing outdated patterns like old extension method syntax

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Implements accessible .NET UI. SemanticProperties, ARIA, AutomationPeer, testing per platform.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

查看 rudironsoni 的全部技能

报告此技能的问题