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

@onespherearray/neoact

v0.1.0

Published

Standalone CLI to connect third-party services and expose their tools via CLI, HTTP, and MCP

Readme

Neoact (neoact)

Standalone command-line tool bridge for third-party services via Composio API v3.1, exposing tools across CLI, HTTP, and Model Context Protocol (MCP).


Features

  • 🛠 CLI-First: Manage accounts, connections, and tool executions directly from the terminal.
  • ⚡ Zero-SDK Requirement: Works as an ordinary Unix-style standalone binary (neoact).
  • 📁 Isolated Local State: Credentials (credentials.json), configuration (config.json), and tool cache (tools/<toolkit>.json) stored locally in ~/.neoact/ (or configurable via NEOACT_HOME).
  • 🔌 Unified Runtime: Tools connected through CLI are immediately available via HTTP and standard MCP stdio.
  • 🔍 Fast Local Search: Tokenized and ranked search across cached tools with zero external network requests.
  • 🔒 Security First: Default loopback binding (127.0.0.1), secret sanitization across logs and outputs, and bearer token protection.

Installation

npm install -g neoact

Or run directly with npx:

npx neoact <command>

Quickstart

1. Initialize Account

Provision a dedicated Composio account:

neoact init

Or import an existing Composio API key:

neoact init --api-key ak_...

Check status:

neoact status

2. Connect Toolkits

Managed OAuth (e.g. Gmail, GitHub):

neoact connect gmail

API Key or Credentials:

neoact connect perplexityai --credential generic_api_key=pplx_...

No-Auth Toolkits:

neoact connect hackernews

3. Sync Tools

neoact sync gmail

Or sync all active connections:

neoact sync --all

4. Search and Inspect Tools

Search tools locally:

neoact tools search "send an email"

Inspect input schema:

neoact tools schema GMAIL_SEND_EMAIL

5. Execute Tools

Direct argument JSON:

neoact tools call GMAIL_SEND_EMAIL \
  --args '{"recipient_email":"[email protected]","subject":"Hello","body":"Hi"}'

Or from a file:

neoact tools call GMAIL_SEND_EMAIL --args-file ./args.json

Or through standard input:

echo '{"query":"neoact"}' | neoact tools call GITHUB_SEARCH_REPOSITORIES --stdin

Expose as Servers

Model Context Protocol (MCP)

Start the standard MCP stdio server:

neoact serve mcp

Add to your MCP client configuration (e.g., Claude Desktop, Cursor, Antigravity):

{
  "mcpServers": {
    "neoact": {
      "command": "neoact",
      "args": ["serve", "mcp"]
    }
  }
}

HTTP REST Server

Start the local HTTP REST server (default http://127.0.0.1:7337):

neoact serve http

Options:

neoact serve http --port 8080 --token ntb_secret_token

HTTP Routes

| Method | Endpoint | Description | |---|---|---| | GET | /health | Server health check | | GET | /status | Runtime status | | GET | /connections | List live connected accounts | | POST | /connections | Connect a toolkit | | DELETE | /connections/:id | Revoke/delete a connection | | GET | /toolkits/:slug | Inspect toolkit | | POST | /toolkits/:slug/sync | Sync toolkit tools | | GET | /tools | List cached tools (optional ?toolkit=) | | GET | /tools/:slug | Get tool metadata and schema | | POST | /tools/search | Search tools ({ "query": "...", "limit": 5 }) | | POST | /tools/:slug/call | Execute tool ({ "args": { ... } }) |


Configuration & Environment Variables

Priority order: CLI Flags > Environment Variables > ~/.neoact/config.json

| Environment Variable | Description | Default | |---|---|---| | NEOACT_HOME | State directory path | ~/.neoact/ | | NEOACT_API_KEY | Composio API Key override | Loaded from credentials.json | | NEOACT_HOST | HTTP server default bind host | 127.0.0.1 | | NEOACT_PORT | HTTP server default port | 7337 | | NEOACT_SERVER_TOKEN | Bearer token for HTTP authentication | None |

Note: Legacy NEOIST_TOOLS_* environment variables continue to be supported as fallbacks.


Exit Codes

| Code | Meaning | |---|---| | 0 | Success | | 1 | General failure | | 2 | Invalid command or arguments | | 3 | Not initialized | | 4 | Not connected | | 5 | Toolkit/Tool not found | | 6 | Authentication or connection failure | | 7 | Upstream rate limit | | 8 | Upstream API failure |


License

MIT