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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@mseep/manifold-mcp-server

v0.2.0

Published

Comprehensive MCP server for Manifold Markets providing market creation, trading, liquidity management, and social features

Downloads

9

Readme

Manifold Markets MCP Server

An MCP server for interacting with Manifold Markets prediction markets. This server provides comprehensive access to Manifold's features through a clean MCP interface, enabling sophisticated market interactions and collective intelligence mechanisms.

Architecture

The server implements a complete mapping of Manifold Markets' API capabilities through a structured tool system:

Core Components

  • Schema Layer: Zod-based validation schemas for all operations
  • API Integration: Direct mapping to Manifold's REST endpoints
  • Tool Handlers: Request processing with proper error management
  • Type Safety: Full TypeScript implementation

Tool Categories

Market Creation & Management

  • create_market: Create markets (BINARY, MULTIPLE_CHOICE, PSEUDO_NUMERIC, POLL)
  • unresolve_market: Revert resolved markets
  • close_market: Close markets for trading
  • add_answer: Add options to multiple choice markets

Market Interaction

  • follow_market: Track markets of interest
  • react: Like/dislike markets and comments
  • add_bounty: Add bounties for analysis
  • award_bounty: Reward valuable contributions

Trading Operations

  • place_bet: Execute market trades
  • cancel_bet: Cancel limit orders
  • sell_shares: Liquidate positions

Liquidity Management

  • add_liquidity: Provide market liquidity
  • remove_liquidity: Withdraw provided liquidity

Information Retrieval

  • search_markets: Find markets with filters
  • get_market: Detailed market information
  • get_user: User profile data
  • get_positions: Portfolio tracking

Social Features

  • send_mana: Transfer mana between users

Verified Capabilities

The server has been tested through comprehensive interaction trajectories:

Successfully Tested

  1. Market Discovery & Following

    • ✅ Market search with filters
    • ✅ Market following
    • ✅ Detailed market information retrieval
  2. Trading Operations

    • ✅ Liquidity provision
    • ✅ Bet placement with probability updates
    • ✅ Position liquidation
    • ✅ Share selling
  3. Permission Management

    • ✅ Role-based access control
    • ✅ Authentication handling
    • ✅ Error messaging

Permission-Restricted Operations

These operations are implemented but require specific user roles:

  • Market resolution/unresolving (market creator)
  • Market closing (market creator)
  • Bounty management (market creator)
  • Liquidity removal (liquidity provider)

Prerequisites

  • Node.js 18 or higher
  • npm or yarn
  • Manifold Markets API key
  • Minimum M$1000 balance for market creation

Installation

1. Install the package

npm install manifold-mcp-server

2. Get your API Key

  1. Log in to Manifold Markets
  2. Go to your profile settings
  3. Generate an API key
  4. Ensure account has sufficient mana for intended operations

3. Configure MCP Settings

For Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "manifold": {
      "command": "node",
      "args": ["/path/to/manifold-mcp-server/build/index.js"],
      "env": {
        "MANIFOLD_API_KEY": "your_api_key_here"
      }
    }
  }
}

For Cline (VSCode Extension)

Add to ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{
  "mcpServers": {
    "manifold": {
      "command": "node",
      "args": ["/path/to/manifold-mcp-server/build/index.js"],
      "env": {
        "MANIFOLD_API_KEY": "your_api_key_here"
      }
    }
  }
}

Tool Documentation

Market Creation & Management

create_market

Create a new prediction market:

{
  outcomeType: 'BINARY' | 'MULTIPLE_CHOICE' | 'PSEUDO_NUMERIC' | 'POLL' | 'BOUNTIED_QUESTION'
  question: string
  description?: string | {
    type: 'doc'
    content: any[]
  }
  closeTime?: number // Unix timestamp ms
  visibility?: 'public' | 'unlisted'
  initialProb?: number // Required for BINARY (1-99)
  min?: number // Required for PSEUDO_NUMERIC
  max?: number // Required for PSEUDO_NUMERIC
  isLogScale?: boolean
  initialValue?: number // Required for PSEUDO_NUMERIC
  answers?: string[] // Required for MULTIPLE_CHOICE/POLL
  addAnswersMode?: 'DISABLED' | 'ONLY_CREATOR' | 'ANYONE'
  shouldAnswersSumToOne?: boolean
  totalBounty?: number // Required for BOUNTIED_QUESTION
}

unresolve_market

Unresolve a previously resolved market:

{
  contractId: string
  answerId?: string // For multiple choice markets
}

close_market

Close a market for trading:

{
  contractId: string
  closeTime?: number // Optional close time
}

Market Interaction

follow_market

Follow or unfollow a market:

{
  contractId: string
  follow: boolean
}

react

React to markets or comments:

{
  contentId: string
  contentType: 'comment' | 'contract'
  remove?: boolean
  reactionType: 'like' | 'dislike'
}

Trading Operations

place_bet

Place a bet on a market:

{
  marketId: string
  amount: number
  outcome: 'YES' | 'NO'
  limitProb?: number // 0.01-0.99
}

sell_shares

Sell shares in a market:

{
  marketId: string
  outcome?: 'YES' | 'NO'
  shares?: number // Defaults to all
}

Liquidity Management

add_liquidity

Add liquidity to market pool:

{
  marketId: string
  amount: number
}

remove_liquidity

Remove liquidity from market pool:

{
  contractId: string
  amount: number
}

Error Handling

The server implements comprehensive error handling:

  1. Input Validation

    • Parameter type checking via Zod schemas
    • Value range validation
    • Required field verification
  2. API Communication

    • Authentication errors
    • Network failures
    • Rate limiting
    • Permission checks
  3. Business Logic

    • Insufficient balance
    • Invalid market states
    • Unauthorized operations
  4. Error Response Format

{
  code: ErrorCode
  message: string
  details?: any
}

Development

# Clone the repository
git clone https://github.com/bmorphism/manifold-mcp-server.git
cd manifold-mcp-server

# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

Contributing

Contributions welcome! Areas of interest:

  • Advanced market analysis tools
  • Portfolio optimization features
  • Integration with other prediction platforms
  • Documentation improvements

Security

  • API keys handled via environment variables
  • Input validation on all parameters
  • Rate limiting protection
  • Safe error messages
  • Role-based access control

License

MIT