Web3 Content MCP Server
# Web3 Content MCP Server
MCP server for web3 content management, blockchain data fetching, and content analysis.
## Features
### Content Management
- `save_content` - Save web3 articles, posts, documents to Supabase
- `search_content` - Search by keywords, tags, or blockchain
- `get_content` - Retrieve content by ID
- `delete_content` - Remove content
### Blockchain Data
- `get_token_price` - Get cryptocurrency prices from CoinGecko
- `get_trending_tokens` - View trending cryptocurrencies
- `add_to_watchlist` - Track tokens in your watchlist
- `get_watchlist` - View watchlist with live prices
### Content Analysis
- `analyze_content` - Analyze text for web3 topics, mentioned tokens
- `get_web3_news` - Fetch latest crypto news
## Setup
1. Install dependencies:
```bash
npm install
```
2. Run Supabase migration:
- Go to your Supabase dashboard
- Run `supabase/migrations/001_init.sql` in the SQL editor
3. Configure environment:
```bash
cp .env.example .env
# Edit .env with your Supabase credentials
```
4. Build:
```bash
npm run build
```
5. Test with MCP Inspector:
```bash
npm run inspect
```
## Claude Desktop Configuration
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"web3-content": {
"command": "node",
"args": ["/Users/dahyekim/web3-content-mcp/dist/index.js"],
"env": {
"SUPABASE_URL": "your-supabase-url",
"SUPABASE_KEY": "your-supabase-key"
}
}
}
}
```
TDQS
Scored across 25 tools
Multiple tools have unclear boundaries: get_article vs article_get, get_articles vs article_list, and search_content vs article_search appear to serve the same purpose. While some tools (token prices, watchlist) are distinct, the overlapping pairs create significant misselection risk.
Naming is inconsistent, mixing verb-first (get_article) and noun-first (article_create) patterns, along with preposition-based verbs (add_to_watchlist). No uniform convention exists across the set, making it hard to predict tool names.
At 25 tools, the count is at the upper end of 'heavy' and many tools duplicate functionality (e.g., get_articles vs article_list). The set could be streamlined to ~15-18 tools without losing capability, making the current count feel slightly inflated.
The server covers article CRUD reasonably well (article_create/get/list/update/search/export) and includes content storage, RSS management, and token prices. However, there is no update operation for stored content items and no remove_from_watchlist, leaving minor lifecycle gaps.