프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

ToolRank

제작자: brandonclark1996-design버전 0.1.0i★ –i클라우드에서 실행
레지스트리 이름io.github.brandonclark1996-design/toolrank

설치

개요

제작자가 쓴 설명(영어 원문)

Rank MCP servers/APIs for a job. Lexical ranking, 36 curated tools, no Stripe.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 온라인 쇼핑몰 및 결제
  • 입력해야 할 값: Authorization

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

이 주소는 요청 header에 키가 필요한데, 커넥터 추가 메뉴에서는 넣을 수 없어요. 대신 Claude Code, Cursor, VS Code를 쓰세요.

터미널에서 이 명령어를 실행하세요

claude mcp add --transport http toolrank https://toolrank.onrender.com/mcp --header 'Authorization: your-value'

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "toolrank": {
      "url": "https://toolrank.onrender.com/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "toolrank": {
      "type": "http",
      "url": "https://toolrank.onrender.com/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 주소는 요청 header에 키가 필요한데, 커넥터 추가 메뉴에서는 넣을 수 없어요. 대신 Claude Code, Cursor, VS Code를 쓰세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • Authorization 비밀 HTTP header
    Optional Bearer API key. Anonymous quota applies without it.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

아직 이 서버의 도구 목록을 읽지 않았어요. 엔드포인트는 차례대로 돌아가며 점검해요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 brandonclark1996-design 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    엔드포인트 응답

    아직 점검하지 않았어요. 엔드포인트는 차례대로 돌아가며 점검해요

  • … 아직 점검 안 함

    OAuth로 로그인

    아직 점검하지 않았어요. 엔드포인트는 차례대로 돌아가며 점검해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    아직 점검하지 않았어요. 엔드포인트를 점검할 때 도구 목록을 읽어요

온라인 쇼핑몰 및 결제 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 2547개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 2547개 중 35%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 2547개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

ToolRank, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

입력해야 할 값: Authorization

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.0)은 2개월 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Stripe MCP

제작자: stripe

MCP server integrating with Stripe - tools for customers, products, payments, and more.

클라우드에서 실행★ 2,043MIT12개월 전 업데이트
설치

MCP Cn Commerce

제작자: TonyWang-hub

8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending

내 컴퓨터에서 실행★ 96MIT29일 전 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

ToolRank (private MVP → public-ready deploy)

Ranked shortlist of MCP servers / APIs for agent jobs — health, price_band, and install snippet.

Live: https://toolrank.onrender.com — OpenAPI at /openapi.json, Streamable HTTP MCP at /mcp.

Private build for Brandon Clark / ToolRank. All Rights Reserved (see LICENSE). GitHub: brandonclark1996-design/toolrank.

Honesty: Ranking is lexical (token overlap), not learned or sponsored. Catalog is 36 curated tools. health is often unknown. Stripe is not wired. Custom domain is not purchased.

Stack

  • Node 20, TypeScript
  • Hono HTTP API
  • Zod validation
  • JSON catalog (data/catalog.json, 36 curated public tools)
  • MCP stdio (npm run mcp) and Streamable HTTP (POST /mcp) via @modelcontextprotocol/sdk
  • API-key auth + process-local soft quotas (src/auth.ts) on /v1/* and /mcp

Quick start (local)

cd /workspace/toolrank

cp .env.example .env

Edit .env — set TOOLRANK_API_KEYS if you want keyed access locally

export TOOLRANK_API_KEYS='trk_live_test:builder' npm install npm test npm run build npm start # listens on 0.0.0.0:$PORT (default 8787)

or: npm run dev

Local curl with a test key
export TOOLRANK_API_KEYS='trk_live_test:builder'

npm start

curl -s http://127.0.0.1:8787/health | jq .

curl -s http://127.0.0.1:8787/v1/search \ -H 'content-type: application/json' \ -H 'Authorization: Bearer trk_live_test' \ -d '{"job":"scrape website to markdown for RAG","constraints":{"budget":"any"},"limit":5}' | jq .

Or X-API-Key:

curl -s http://127.0.0.1:8787/v1/search \ -H 'content-type: application/json' \ -H 'X-API-Key: trk_live_test' \ -d '{"job":"web search for research","limit":3}' | jq .

Anonymous (no key) works until the free IP quota is hit (20 / rolling 24h).

Auth + limits

CallerHowSoft limit (process-local, rolling 24h)
AnonymousNo key20 req / IP to /v1/* and /mcp
free keyAuthorization: Bearer or X-API-Key: 100 / key
builder keysame headers2000 / key
  • Env: TOOLRANK_API_KEYS = comma-separated keys, optional key:plan (free \| builder). Example: trk_live_abc:builder,trk_live_xyz:free. Bare key → free.
  • /health and /openapi.json are always open (no auth / no quota).
  • Invalid key → 401 { error, schema_version, as_of }
  • Over quota → 429 + Retry-After (seconds hint)
  • Authed POST /v1/search responses include plan (free \| builder)
  • Quotas are in-memory / process-local — fine for single-instance MVP; they reset on restart and do not sync across replicas.
Setting keys on the host (Brandon)

Do not commit real keys. Set TOOLRANK_API_KEYS in the host environment:

  1. Render: Dashboard → your Web Service → Environment → add TOOLRANK_API_KEYS = trk_live_….…:builder,… (use sync: false / secret). Redeploy.
  2. Railway: Service → Variables → TOOLRANK_API_KEYS.
  3. Docker / VPS: -e TOOLRANK_API_KEYS='…' or systemd/env file outside git.
  4. Local: export TOOLRANK_API_KEYS='trk_live_test:builder' before npm start.

Also set HOST=0.0.0.0 (default in code) and let the platform inject PORT.

HTTP API

Base: https://toolrank.onrender.com (or http://127.0.0.1:8787 locally).

MethodPathDescription
GET/healthLiveness + catalog meta (open)
POST/v1/searchRank tools for a job (auth/quota)
GET/v1/tools/:idTool detail (auth/quota)
GET/v1/fresh?since=Updated since ISO timestamp (auth/quota)
GET/openapi.jsonOpenAPI 3.1 (open)
ALL/mcpStreamable HTTP MCP (auth/quota; same tools as stdio)
Search body
{

"job": "string (required)", "constraints": { "budget": "free | paid | any", "auth": "optional hint", "runtime": "mcp | api | …" }, "limit": 10, "check_health": false }

Optional check_health: true probes top results (2s timeout). Failures stay unknown (no false down).

Deploy (no custom domain / no Stripe)

Docker
docker build -t toolrank .

docker run --rm -p 8787:8787 \ -e TOOLRANK_API_KEYS='trk_live_prod:builder' \ toolrank

Render
  • Blueprint: render.yaml (Docker web service, free plan friendly).
  • Live hostname: https://toolrank.onrender.com (no custom domain required).
  • Set TOOLRANK_API_KEYS in the dashboard.
Railway
  • railway.toml (Dockerfile) or Procfile (web: node dist/index.js after build).
  • Set TOOLRANK_API_KEYS in Variables. Use Railway’s public HTTP domain.

Build step for native Node hosts: npm ci && npm run build then node dist/index.js.

MCP

Tools: search_tools, get_tool, list_fresh (shared handlers for stdio + HTTP).

Streamable HTTP (production)
https://toolrank.onrender.com/mcp

Same API-key / anonymous quota as /v1/*. Official MCP Registry manifest: server.json (io.github.brandonclark1996-design/toolrank). Do not run mcp-publisher from this box unless asked.

Cursor / Claude HTTP MCP config snippet:

{

"mcpServers": { "toolrank": { "url": "https://toolrank.onrender.com/mcp" } } }

stdio (local)
npm run mcp
{

"mcpServers": { "toolrank": { "command": "npm", "args": ["run", "mcp"], "cwd": "/workspace/toolrank" } } }

Ranking

  1. Tokenize job (drop stopwords).
  2. Score tag / name / description matches.
  3. Boost matching price_band under budget constraints.
  4. Boost health: up; penalize health: down.
  5. Tiny preference for mcp / both interfaces.

Honest lexical ranking — no paid placement. 36 curated tools. Health often unknown. Stripe not wired.

Docs

  • docs/AGENT.md — agent-readable usage (auth headers + limits)
  • docs/llms.txt — compact machine summary
  • server.json — Official MCP Registry manifest (not published yet)
  • scripts/README-ingest.md — stub for future registry.modelcontextprotocol.io ingest

Tests & build

npm test    # vitest — ranking, envelope, auth middleware, /mcp

npm run build

TODO

  • Implement registry ingest (scripts/README-ingest.md)
  • Persist health probe results between restarts
  • Stripe / paid upgrades (not started)
  • Custom domain (not purchased / not wired)
  • Shared Redis (or similar) quotas if multi-instance
  • Publish server.json with mcp-publisher (not run from this change)

License

All Rights Reserved — Brandon Clark / ToolRank. See LICENSE.

PopNx에게 묻기