Skip to content

Commit e4ea314

Browse files
sjnimsclaude
andauthored
feat(mcp-integration): add MCP server discovery via PulseMCP (#80)
## Summary - Add contextual MCP server discovery to the `mcp-integration` skill using PulseMCP directory - Enable Claude to recommend relevant MCP servers based on user needs - Provide curated quick reference for common use cases ## Changes ### New: `references/server-discovery.md` Comprehensive reference document covering: - **Discovery method**: Step-by-step Tavily extract instructions with URL patterns - **Parsing guidance**: What fields to extract from search results - **Evaluation criteria**: How to rank/recommend servers (official vs community, popularity) - **Quick reference**: Curated top servers by category (databases, productivity, dev tools, cloud, AI, storage) - **Integration workflow**: From discovery → detail fetch → configuration - **Fallback**: WebFetch alternative if Tavily unavailable - **Bonus**: Documents the PulseMCP MCP server for plugins needing programmatic discovery ### Modified: `SKILL.md` - Updated frontmatter with discovery triggers: `"find MCP server"`, `"discover MCP servers"`, `"what MCP servers exist"`, `"recommend MCP server for [service]"` - Added "Discovering MCP Servers" section with brief workflow - Added `server-discovery.md` to Additional Resources ## Test plan - [ ] Verify skill triggers on discovery phrases ("find MCP server for databases") - [ ] Confirm Tavily extract returns parseable PulseMCP results - [ ] Test curated quick reference accuracy for common categories - [ ] Verify markdownlint passes (already confirmed locally) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 6519cfb commit e4ea314

2 files changed

Lines changed: 205 additions & 1 deletion

File tree

plugins/plugin-dev/skills/mcp-integration/SKILL.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: mcp-integration
3-
description: This skill should be used when the user asks to "add MCP server", "integrate MCP", "configure MCP in plugin", "use .mcp.json", "set up Model Context Protocol", "connect external service", mentions "${CLAUDE_PLUGIN_ROOT} with MCP", or discusses MCP server types (SSE, stdio, HTTP, WebSocket). Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.
3+
description: This skill should be used when the user asks to "add MCP server", "integrate MCP", "configure MCP in plugin", "use .mcp.json", "set up Model Context Protocol", "connect external service", mentions "${CLAUDE_PLUGIN_ROOT} with MCP", discusses MCP server types (SSE, stdio, HTTP, WebSocket), or asks to "find MCP server", "discover MCP servers", "what MCP servers exist", "recommend MCP server for [service]". Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.
44
---
55

66
# MCP Integration for Claude Code Plugins
@@ -61,6 +61,19 @@ Add `mcpServers` field to plugin.json:
6161
- Single configuration file
6262
- Good for simple single-server plugins
6363

64+
## Discovering MCP Servers
65+
66+
Find existing MCP servers for your plugin using PulseMCP, the comprehensive MCP server directory with 6,800+ servers.
67+
68+
**Discovery workflow:**
69+
70+
1. Search PulseMCP using Tavily extract on `https://www.pulsemcp.com/servers?q=[keyword]`
71+
2. Evaluate results by classification (official vs community), popularity, and relevance
72+
3. Fetch detail pages for GitHub links and configuration examples
73+
4. Generate `.mcp.json` configuration based on server type
74+
75+
**See `references/server-discovery.md`** for detailed search instructions, URL patterns, and curated server recommendations by category.
76+
6477
## MCP Server Types
6578

6679
### stdio (Local Process)
@@ -517,6 +530,7 @@ Look for:
517530

518531
For detailed information, consult:
519532

533+
- **`references/server-discovery.md`** - Find MCP servers using PulseMCP directory
520534
- **`references/server-types.md`** - Deep dive on each server type
521535
- **`references/authentication.md`** - Authentication patterns and OAuth
522536
- **`references/tool-usage.md`** - Using MCP tools in commands and agents
Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
# MCP Server Discovery
2+
3+
Discover MCP servers for plugin integration using PulseMCP, the comprehensive MCP server directory.
4+
5+
## Discovery Method
6+
7+
Use Tavily extract to search PulseMCP's server directory:
8+
9+
### Step 1: Search PulseMCP
10+
11+
```
12+
Tool: mcp__tavily-mcp__tavily-extract
13+
URLs: ["https://www.pulsemcp.com/servers?q=[keyword]"]
14+
Format: markdown
15+
```
16+
17+
**URL patterns:**
18+
19+
| Purpose | URL |
20+
|---------|-----|
21+
| Basic search | `https://www.pulsemcp.com/servers?q=[keyword]` |
22+
| By popularity | `https://www.pulsemcp.com/servers?q=[keyword]&sort=popular-desc` |
23+
| Official only | `https://www.pulsemcp.com/servers?q=[keyword]&classification=official` |
24+
| Server details | `https://www.pulsemcp.com/servers/[slug]` |
25+
26+
**Search keywords:**
27+
28+
- Service names: `notion`, `github`, `slack`, `postgres`
29+
- Categories: `database`, `api`, `file`, `memory`, `browser`
30+
- Combined: `vector database`, `project management`
31+
32+
### Step 2: Parse Results
33+
34+
Extract from search results:
35+
36+
| Field | Description | Use For |
37+
|-------|-------------|---------|
38+
| Server name | Display name | User presentation |
39+
| Provider | Company/author | Trust signal |
40+
| Description | Brief summary | Feature matching |
41+
| Classification | official/community | Quality signal |
42+
| Downloads/visitors | Weekly estimates | Popularity signal |
43+
| Slug | URL segment | Detail page fetch |
44+
45+
**Example parsed entry:**
46+
47+
```
48+
Name: DBHub (Universal Database Gateway)
49+
Provider: Bytebase
50+
Description: Universal database gateway for PostgreSQL, MySQL, SQLite, DuckDB
51+
Classification: official
52+
Downloads: 6.7k/week
53+
Slug: bytebase-dbhub
54+
```
55+
56+
### Step 3: Evaluate and Recommend
57+
58+
Recommend servers based on:
59+
60+
1. **Relevance** - Description matches user's needs
61+
2. **Classification** - Prefer `official` over `community`
62+
3. **Popularity** - Higher downloads indicate stability
63+
4. **Recency** - Recent releases suggest active maintenance
64+
65+
Present top 3-5 matches with key differentiators.
66+
67+
### Step 4: Fetch Details (Optional)
68+
69+
For servers the user wants to integrate, fetch the detail page:
70+
71+
```
72+
Tool: mcp__tavily-mcp__tavily-extract
73+
URLs: ["https://www.pulsemcp.com/servers/[slug]"]
74+
```
75+
76+
Extract from detail page:
77+
78+
- GitHub repository URL and stars
79+
- Full description
80+
- server.json availability (for standardized config)
81+
- Related servers (alternatives)
82+
83+
## Quick Reference: Top MCP Servers
84+
85+
Curated recommendations for common use cases. Use live search for comprehensive results.
86+
87+
### Databases
88+
89+
| Server | Provider | Type | Best For |
90+
|--------|----------|------|----------|
91+
| Toolbox for Databases | Google | stdio | Multi-DB (PostgreSQL, MySQL, SQL Server, Neo4j, Spanner) |
92+
| DBHub | Bytebase | stdio | Universal gateway (PostgreSQL, MySQL, SQLite, DuckDB) |
93+
| Context7 | Upstash | stdio | Documentation/library lookup |
94+
95+
### Productivity
96+
97+
| Server | Provider | Type | Best For |
98+
|--------|----------|------|----------|
99+
| Notion | Notion | SSE | Workspace integration |
100+
| Asana | Asana | SSE | Task/project management |
101+
| Slack | Slack | SSE | Team communication |
102+
| Linear | Linear | SSE | Issue tracking |
103+
104+
### Developer Tools
105+
106+
| Server | Provider | Type | Best For |
107+
|--------|----------|------|----------|
108+
| GitHub | GitHub | SSE | Repository management, PRs, issues |
109+
| GitLab | GitLab | SSE | GitLab repositories and CI/CD |
110+
| Playwright | Microsoft | stdio | Browser automation, testing |
111+
112+
### Cloud & Infrastructure
113+
114+
| Server | Provider | Type | Best For |
115+
|--------|----------|------|----------|
116+
| AWS | AWS | stdio | AWS service management |
117+
| Kubernetes | Community | stdio | K8s cluster operations |
118+
| Docker | Community | stdio | Container management |
119+
120+
### AI & Search
121+
122+
| Server | Provider | Type | Best For |
123+
|--------|----------|------|----------|
124+
| Tavily | Tavily | stdio | Web search and extraction |
125+
| Perplexity | Perplexity | SSE | AI-powered search |
126+
| Memory | Various | stdio | Conversation memory/RAG |
127+
128+
### File & Storage
129+
130+
| Server | Provider | Type | Best For |
131+
|--------|----------|------|----------|
132+
| Filesystem | Anthropic | stdio | Local file access |
133+
| Google Drive | Google | SSE | Cloud storage |
134+
| S3 | AWS | stdio | Object storage |
135+
136+
## Integration Workflow
137+
138+
After discovering a server:
139+
140+
1. **Check server type** - stdio (local), SSE (hosted), HTTP, or WebSocket
141+
2. **Get installation info** - Fetch detail page for GitHub README
142+
3. **Determine auth method** - OAuth (SSE), tokens (HTTP), env vars (stdio)
143+
4. **Generate configuration** - Create `.mcp.json` entry
144+
145+
**Example workflow:**
146+
147+
```
148+
User: "I need an MCP server for Notion"
149+
150+
1. Search: tavily-extract on pulsemcp.com/servers?q=notion
151+
2. Find: Notion (official SSE server)
152+
3. Recommend: Official Notion MCP with OAuth
153+
4. Configure:
154+
{
155+
"notion": {
156+
"type": "sse",
157+
"url": "https://mcp.notion.com/sse"
158+
}
159+
}
160+
```
161+
162+
## Alternative Discovery
163+
164+
If Tavily is unavailable, use WebFetch:
165+
166+
```
167+
Tool: WebFetch
168+
URL: https://www.pulsemcp.com/servers?q=[keyword]
169+
Prompt: List MCP servers matching "[keyword]" with name, description, classification, and slug
170+
```
171+
172+
## PulseMCP MCP Server
173+
174+
For plugins needing programmatic server discovery, recommend the PulseMCP MCP server:
175+
176+
```json
177+
{
178+
"pulsemcp": {
179+
"command": "npx",
180+
"args": ["-y", "pulsemcp-server"]
181+
}
182+
}
183+
```
184+
185+
**Tools provided:**
186+
187+
- `list_servers` - Search/filter servers with pagination
188+
- `list_integrations` - List all integration categories
189+
190+
Use when building plugins that help users discover and configure MCP servers.

0 commit comments

Comments
 (0)