npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@dopost/mcp-server

v1.1.0

Published

MCP server for dopost — manage social media posts and read analytics via AI agents

Readme

@dopost/mcp-server

MCP (Model Context Protocol) server for dopost. It lets AI agents schedule and manage social media posts, read reliable workspace analytics, and prepare public YouTube, Instagram, and TikTok downloads through any MCP-compatible host.

Install

npm install -g @dopost/mcp-server

Or run directly with npx (no install needed):

npx @dopost/mcp-server

Configuration

The server supports these environment variables:

| Variable | Required | Default | Description | | ---------------- | ----------------------- | ------------------- | --------------------------------------------------------------------------------------------------------- | | DOPOST_API_KEY | For authenticated tools | None | Required for posts, analytics, accounts, and Media library tools. Public downloader tools work without it | | DOPOST_API_URL | No | https://dopost.co | API base URL |

To use only the public downloader tools, start the server without DOPOST_API_KEY. Configure the key when you also want to publish posts or access a dopost workspace.

Usage with MCP hosts

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "dopost": {
      "command": "npx",
      "args": ["-y", "@dopost/mcp-server"],
      "env": {
        "DOPOST_API_KEY": "your-api-key"
      }
    }
  }
}

VS Code (Copilot)

Add to .vscode/mcp.json in your project:

{
  "servers": {
    "dopost": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@dopost/mcp-server"],
      "env": {
        "DOPOST_API_KEY": "your-api-key"
      }
    }
  }
}

Cursor

Add to Cursor settings under MCP servers:

{
  "mcpServers": {
    "dopost": {
      "command": "npx",
      "args": ["-y", "@dopost/mcp-server"],
      "env": {
        "DOPOST_API_KEY": "your-api-key"
      }
    }
  }
}

Available tools

| Tool | Description | | ----------------------------------- | ------------------------------------------------------------------------------------------------------ | | get_social_media_download_options | List temporary MP4 and MP3 options for a public YouTube, Instagram, or TikTok URL. No API key required | | prepare_social_media_download | Select one quality and return its temporary download URL. No API key required | | publish_post | Publish, schedule, reply on X or Threads, or create a thread on X, Threads, or Mastodon | | list_posts | List posts with optional status filter and pagination | | get_post | Get full details of a specific post | | reschedule_post | Change the scheduled date of a pending post | | delete_post | Delete a post (cancels schedule if pending) | | create_recurring_post | Create a daily, weekly, or monthly recurring post series | | list_recurring_posts | List recurring series, their next run, accounts, and latest result | | update_recurring_post | Update future content, media, cadence, or the next occurrence | | list_workspaces | List workspaces available to the current credential | | list_accounts | List connected social accounts, grouped by workspace for OAuth | | get_platform_limits | Get content limits for a platform | | upload_media | Upload a local file to the media library (handles presigned URL + upload + finalize in one call) | | list_media | List uploaded media files | | delete_media | Delete a media file | | get_google_business_search_terms | Read monthly location discovery keywords and privacy thresholds | | get_analytics_overview | Read account KPIs, rankings, comparisons, and data availability | | list_post_performance | List performance for posts published through dopost | | get_post_performance | Read metrics and cumulative snapshots for one post | | get_content_insights | Read Best Time, Best Day, Format Opportunity, and Platform Pulse | | get_audience_analytics | Read available audience breakdowns |

Analytics tools require the analytics:read scope and an active paid plan. Existing credentials are not upgraded automatically; create a new API key with the scope or reauthorize the remote MCP client. Reconnect clients that cache the old tool schema.

How it works

AI Agent (Claude, Copilot, Cursor...)
    │
    ▼
MCP Client (inside the host app)
    │  stdio (JSON-RPC 2.0)
    ▼
@dopost/mcp-server ← this package
    │  HTTPS
    ▼
dopost REST API (dopost.co/api/v1/*)

The server uses stdio transport. The MCP host spawns it as a child process and communicates via stdin/stdout using JSON-RPC 2.0. Each tool calls a documented dopost REST API endpoint. Download tools return temporary URLs rather than transporting large binary files through MCP.

Development

# Run directly with tsx (no build step)
DOPOST_API_KEY=your-key npm run dev

# Build and run compiled JS
npm run build
DOPOST_API_KEY=your-key npm start

Based on

Google Business and workspace dates

Connect verified locations in dopost first and use the returned accountId. Unzoned dates use the workspace timezone; explicit Z/offset dates retain their instant. Publishing supports standard updates, events, offers and gallery media. Events/offers may omit text/media; PROFILE/COVER require photos and gallery video must be MP4. Recurring supports standard updates only. See the Google Business API guide.

Overview exposes GOOGLE_BUSINESS daily Search/Maps and action metrics. Monthly search terms preserve location identity and privacy thresholds and support pagination. They use the existing analytics:read scope and do not call Google.

Use get_google_business_search_terms; reconnect clients with cached schemas after deployment.