PulseMCP Server logo

PulseMCP Server

by orliesaurus

PulseMCP Server is a Model Context Protocol (MCP) server providing tools for discovering and exploring MCP servers and integrations through the PulseMCP API. It allows users to list, search, and filter MCP servers and integrations.

View on GitHub

Last updated: N/A

PulseMCP Server

A Model Context Protocol (MCP) server that provides tools for discovering and exploring MCP servers and integrations through the PulseMCP API.

Features

  • List available MCP servers with filtering and pagination
  • Search for specific MCP servers by name or functionality
  • Filter servers by integration types
  • List all available integrations
  • Full TypeScript support

Installation

Installing in MCP Clients

Add this to your MCP client configuration and adapt based on your Client's preferences. For example:

{
  "mcpServers": {
    "pulsemcp": {
      "command": "npx",
      "args": ["-y", "pulsemcp-server"]
    }
  }
}
  1. Clone the repository:
git clone <repository-url>
cd pulsemcp-server
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Usage

Running the Server

The server can be run directly after building:

./build/index.js

Or through npm:

npm start

Development

To watch for changes during development:

npm run watch

To inspect the server's MCP implementation:

npm run inspector

Available Tools

list_servers

Lists MCP servers with optional filtering and pagination.

Parameters:

  • query (optional): Search term to filter servers
  • integrations (optional): Array of integration slugs to filter by
  • count_per_page (optional): Number of results per page (maximum: 5000)
  • offset (optional): Number of results to skip for pagination

Example:

{
  "query": "toolhouse",
  "integrations": ["github"],
  "count_per_page": 10,
  "offset": 0
}

list_integrations

Lists all available integrations. This tool takes no parameters.

Response Format

Both tools return JSON responses with the following structure:

list_servers Response

{
  "servers": [
    {
      "name": "Server Name",
      "url": "https://example.com",
      "external_url": "https://external-link.com",
      "short_description": "Server description",
      "source_code_url": "https://github.com/example/repo",
      "github_stars": 123,
      "package_registry": "npm",
      "package_name": "package-name",
      "package_download_count": 1000,
      "integrations": [
        {
          "name": "Integration Name",
          "slug": "integration-slug",
          "url": "https://integration-url.com"
        }
      ]
    }
  ],
  "total_count": 1,
  "next": null
}

list_integrations Response

{
  "integrations": [
    {
      "name": "Integration Name",
      "slug": "integration-slug",
      "url": "https://integration-url.com"
    }
  ]
}

Error Handling

The server includes robust error handling for:

  • Invalid parameters
  • API connection issues
  • Rate limiting
  • Authentication errors

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

Development

Project Structure

pulsemcp-server/
├── src/
│   └── index.ts    # Main server implementation
├── build/          # Compiled JavaScript
├── package.json    # Project configuration
└── tsconfig.json   # TypeScript configuration

Dependencies

  • @modelcontextprotocol/sdk: ^0.6.0
  • axios: ^1.7.9
  • TypeScript: ^5.3.3

License

Read LICENSE.MD

Contributing

Open a PR - be nice and you will be rewarded!