DexScreener MCP Server

by openSVM

21 stars
378 downloads
Not rated
GitHub

About

# DexScreener MCP Server An MCP server implementation for accessing the DexScreener API, providing real-time access to DEX pair data, token information, and market statistics across multiple blockchains. One-line install (automatically adds to Claude Desktop): ```bash curl -L…

Details

Author
openSVM
GitHub stars
21
Downloads
378
Categories
Other, API

- Rate-limited API access respecting DexScreener’s limits
- Comprehensive error handling for various failure modes
- Type-safe TypeScript interfaces
- Support for all DexScreener API endpoints
- Integration tests included
- One-line install for Claude Desktop

Install using the provided one-line script (which automatically adds it to Claude Desktop) or manually via npm install && npm run build && npm run setup. Then invoke the seven available tools (e.g., get_latest_token_profiles, get_pairs_by_token_addresses) through an MCP client.

DexScreener MCP Server

An MCP server implementation for accessing the DexScreener API, providing real-time access to DEX pair data, token information, and market statistics across multiple blockchains.

One-line install (automatically adds to Claude Desktop):

curl -L https://raw.githubusercontent.com/opensvm/dexscreener-mcp-server/main/install.sh | bash

Features

- Rate-limited API access (respects DexScreener's rate limits)
- Comprehensive error handling
- Type-safe interfaces
- Support for all DexScreener API endpoints
- Integration tests

Installation

Manual installation:

npm install
npm run build
npm run setup

Testing

npm test

Usage

Available Tools

1. get_latest_token_profiles
- Get the latest token profiles
- No parameters required

   const result = await mcpClient.callTool('dexscreener', 'get_latest_token_profiles');

2. get_latest_boosted_tokens
- Get the latest boosted tokens
- No parameters required

   const result = await mcpClient.callTool('dexscreener', 'get_latest_boosted_tokens');

3. get_top_boosted_tokens
- Get tokens with most active boosts
- No parameters required

   const result = await mcpClient.callTool('dexscreener', 'get_top_boosted_tokens');

4. get_token_orders
- Check orders paid for a specific token

   const result = await mcpClient.callTool('dexscreener', 'get_token_orders', {
chainId: 'solana',
tokenAddress: 'So11111111111111111111111111111111111111112'
});

5. get_pairs_by_chain_and_address
- Get one or multiple pairs by chain and pair address

   const result = await mcpClient.callTool('dexscreener', 'get_pairs_by_chain_and_address', {
chainId: 'solana',
pairId: 'HxFLKUAmAMLz1jtT3hbvCMELwH5H9tpM2QugP8sKyfhc'
});

6. get_pairs_by_token_addresses
- Get one or multiple pairs by token address (max 30)

   const result = await mcpClient.callTool('dexscreener', 'get_pairs_by_token_addresses', {
tokenAddresses: 'So11111111111111111111111111111111111111112'
});

7. search_pairs
- Search for pairs matching query

   const result = await mcpClient.callTool('dexscreener', 'search_pairs', {
query: 'SOL'
});

Rate Limits

The server implements rate limiting to comply with DexScreener's API limits:
- Token Profile/Boost endpoints: 60 requests per minute
- DEX/Pairs endpoints: 300 requests per minute

Error Handling

The server handles various error scenarios:
- Rate limit exceeded
- Invalid parameters
- Network errors
- API errors

Errors are returned in a standardized format with appropriate error codes and messages.

API Documentation

For detailed API documentation, see docs/api-reference.md.

Development

Project Structure

.
├── src/
│   ├── types/           # TypeScript interfaces and types
│   ├── services/        # API service implementations
│   ├── tests/           # Integration tests
│   └── index.ts         # Main server implementation
├── scripts/            # Setup and utility scripts
├── docs/              # Documentation
└── README.md          # This file

Adding New Features

1. Define types in src/types/
2. Implement service methods in src/services/
3. Add tool handlers in src/index.ts
4. Update documentation
5. Add tests

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.