J

dexscreener-mcp-server

...
Created 1/5/2025byopenSVM

Language:

JavaScript

Stars:

10

Forks:

7

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

Last updated: 1/6/2025

Publisher info

openSVM's avatar

OpenSVM

Data explorer for all SVM based network (Solana L1, L2s, rollups, solana network extensions)

20
followers
0
following
54
repos

More MCP servers built with JavaScript

mcp-server-semgrep

MCP Server Semgrep is a [Model Context Protocol](https://modelcontextprotocol.io) compliant server that integrates the powerful Semgrep static analysis tool with AI assistants like Anthropic Claude. It enables advanced code analysis, security vulnerability detection, and code quality improvements directly through a conversational interface.

By Szowesgad9
protonmail-mcp

This MCP server provides email sending functionality using Protonmail's SMTP service. It allows both Claude Desktop and Cline VSCode extension to send emails on your behalf using your Protonmail credentials.

By amotivv6
agentql-mcp

Model Context Protocol server that integrates AgentQL's data extraction capabilities.

By tinyfish-io45