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

blah-mcp

v1.34.0

Published

Barely Logical Agent Host

Readme

BLAH - Barely Logical Agent Host

Currently working on

  • [ ] Need a way to debug mcp servers using any model/ide
  • [ ] Think about portals
  • [ ] lisa watts came up with "auton", likely what i am going to suggest

Unrelated Ideas

  • [ ] Need save state in ideas so you don't lose stuff (if you hadn't comitted)
  • [ ] upvotes for social tooling
  • [ ] automatic error rate
  • [ ] share your tool combination results

Using a local blah.json

Hosted blah.json (Valtown)

Getting started (hosted)

  1. Setup a Valtown account
  2. Create a new HTTP function named blah
export default async function server(request: Request): Promise<Response> {
  const tools = [
    {
      name: "hello_name",
      description: `Says hello to the name`,
      inputSchema: {
        type: "object",
        properties: {
          name: {
            type: "string",
            description: `Name to say hello to`,
          },
        },
      },
    },
  ];

  return new Response(JSON.stringify(tools), {
    headers: {
      "Content-Type": "application/json",
    },
    status: 200,
  });
}

Adding to your Client

  • Claude
    • Desktop
    • Code (CLI)
  • Cursor
  • Cline
  • Windsurf
  • BLAH Client
  • Are there any nice web clients yet

Development

I am still working on tools to make development not shit.

Logging

While developing this, I want to send logs from everybodies clients to just figure out all the fucking errors the clients are throwing due to different configures.

Playground

So far just a basic client that lists prompts, resources, and tools. Could be interactive later, and should also run against tests.

npm run playground

Needs improvement

  • [ ] Valtown is the current wrapper, need to be an alternative maybe using Vercel functions or some shit.
  • [ ] Need a nice strategy for composability

Credits

  • Lisa Watts
  • Wombat

AI GENERATED BULL SHIT (the above is authentic)

npm version CI License: MIT TypeScript

  • mcp server version badge
  • registry uptime status

What is BLAH?

BLAH is an open-source ecosystem for managing, distributing, and executing AI agent tools using the Model Context Protocol (MCP). It provides a decentralized registry for MCP servers that doesn't suffer from misaligned incentives, promoting transparency, security, and community-driven development.

Key Features:

  • Open-source infrastructure that any system (IDE, AI platform, etc.) can connect to
  • Language-agnostic tool registry supporting unlimited tool selection
  • Robust security through optional signing and verification of MCP servers
  • Comprehensive CLI for publishing, discovering, and managing tools
  • Support for various tool types: functions, REST endpoints, local files, or standard manifests

🔍 Vision

BLAH aims to be the foundation for a new generation of AI tools that can be easily shared, discovered, and composed. We envision a future where:

  1. Anyone can create and share tools that extend AI capabilities
  2. Everyone has access to a rich ecosystem of tools regardless of their technical background
  3. Every system can integrate with this ecosystem through standard protocols

🚀 Getting Started

Installation

npm install -g blah-mcp

Basic Usage

# Search for tools
blah search "image generation"

# Install a tool
blah install awesome-image-generator

# List installed tools
blah list

# Get info about a tool
blah info awesome-image-generator

📖 Core Concepts

The Registry

BLAH's registry is designed with lessons learned from package managers like npm, focusing on:

  • Transparency: All infrastructure code is open-source
  • Decentralization: Storage options include local, cloud, IPFS, or gists
  • Security: Optional signing of MCP servers with verification
  • Governance: Community-driven with no single entity controlling the ecosystem

Agent Behavior

BLAH supports various agent interaction patterns:

  • Parallel execution
  • Recursive tool calls
  • Branching workflows
  • Sequential processing
  • Complex graph-based workflows

Tool Definition

A tool in BLAH is fundamentally a function, but can be represented as:

  • Code snippets
  • RESTful endpoints
  • Local executables
  • Standard manifests (SLOP, agents.json)

Every tool should explicitly document how it's invoked, though this isn't mandatory.

🛠️ CLI Commands

BLAH comes with a comprehensive CLI:

blah publish    - Publish a tool to the registry
blah search     - Search for tools by name, tag, or description
blah install    - Install a tool
blah remove     - Remove an installed tool
blah update     - Update tools to latest versions
blah list       - List installed tools
blah info       - Display information about a tool
blah config     - Configure BLAH settings
blah login      - Authenticate with registry
blah logout     - End authentication session
blah whoami     - Show current authenticated user
blah version    - Display version information
blah help       - Show help information

📋 Manifests

BLAH uses a manifest file (blah.json) to define tools and their dependencies. This manifest can exist:

  • In a project workspace
  • In the home directory
  • Hosted in the cloud
  • As a gist or on IPFS

Example blah.json:

{
  "name": "awesome-image-generator",
  "version": "1.0.0",
  "description": "Tool for generating awesome images",
  "entry": "./dist/index.js",
  "tools": [
    {
      "name": "generate_image",
      "description": "Generates an image from a text prompt",
      "parameters": {
        "prompt": {
          "type": "string",
          "description": "Text description of the desired image"
        },
        "style": {
          "type": "string",
          "enum": ["realistic", "cartoon", "abstract"],
          "default": "realistic"
        }
      }
    }
  ],
  "dependencies": {
    "image-gen-lib": "^2.0.0"
  },
  "tags": ["image", "generation", "creative"]
}

🔄 Standards Support

BLAH supports and aims to be compatible with:

  • Model Context Protocol (MCP)
  • SLOP (Structure for Language Operator Protocols)
  • agents.json
  • [Your own custom protocols through converters]

🌟 Discovery and Metadata

Tools in BLAH are organized using:

  • Tags (e.g., #TOOLBELT)
  • Semantic metadata for intuitive navigation
  • Usage analytics for popularity-based recommendations
  • User-based recommendations (tools used by similar users)

🏗️ Architecture

BLAH consists of three main components:

  1. Registry: For tool storage and discovery
  2. CLI: For interacting with the registry and managing tools
  3. MCP Server: For executing tools within agent workflows

Currently, ValTown serves as the primary backend for registry storage and compute, though alternative implementations are welcome.

🔒 Security & Accountability

BLAH takes security seriously:

  • Optional signing of MCP servers
  • Code execution in sandboxed environments
  • Comprehensive logging for accountability
  • Compliance with local laws and regulations

🚧 Roadmap

  • [ ] Host the MCP server on cloud platforms (e.g., Cloudflare Workers)
  • [ ] Create a web-based tool explorer and documentation site
  • [ ] Improve debugging and developer experience
  • [ ] Develop a tool creation wizard/generator
  • [ ] Implement tool recommendation system

🧠 Future Ideas

  • User behavior sharing for personalized tool recommendations
  • Scheduled agent execution through cron-like mechanisms
  • Decentralized governance model for registry management
  • Extension ecosystem for custom registry implementations

🤝 Contributing

Contributions are welcome! Check back soon for detailed contribution guidelines.

👏 Credits

Special thanks to Lisa and Wombat for their invaluable contributions to this project.

📄 License

BLAH is released under the MIT License. See the LICENSE file for details.