프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. Google로 로그인하면 리뷰를 쓸 수 있어요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Scorecard MCP

제작자: scorecard-ai버전 2.1.1i★ 0i컴퓨터 또는 클라우드
레지스트리 이름io.scorecard/mcp

설치 방법

What it does

MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.

  • Connects 컴퓨터 또는 클라우드
  • Account or key Cloud: Sign in to the service when you connect (OAuth) · Local: Needs SCORECARD_API_KEY
  • Category 검색 및 AI 기억

설치

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

검사 5/5 통과 · 내가 묻는 내용은 제작자 서버(mcp.scorecard.io)를 거쳐요

먼저: 어떤 AI를 쓰시나요?

쓰는 앱을 고르면 아래에 단계가 나옵니다.

Claude에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음 · claude.ai나 데스크톱 앱에서 한 번 설정하면 채팅에서 쓸 수 있어요 · 무료 계정은 1개까지 · Team/Enterprise는 소유자(Owner)가 추가

  1. Claude의 Connectors 페이지 열기

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. “+ Add” → “Add custom connector”를 누르고 이 2칸 채우기

    여기서 복사해 Claude의 같은 이름 칸에 붙여 넣고 Continue를 누르세요

    Name · 이름Scorecard MCP
    Remote MCP server URL · 주소https://mcp.scorecard.io/mcp

    Authentication은 Claude가 찾은 그대로 두고 Add를 누르세요

  3. 채팅에서 켜기

    +ConnectorsScorecard MCP

  4. 해 보기

    Scorecard MCP을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude가 Scorecard MCP을 쓰고 있다고 하거나 답에 Scorecard MCP 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

ChatGPT는 기업용 요금제에서만 연결돼요

웹의 ChatGPT Business, Enterprise, Edu에서 워크스페이스 관리자나 소유자가 추가해요 · Free, Plus, Pro를 쓰면: 내 ChatGPT 요금제로는 아직 MCP를 직접 연결할 수 없어요

  1. 웹 ChatGPT에서 MCP 추가 페이지 열기

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. 이름과 주소 입력

    이름을 넣고 Connection에 주소를 붙여 넣은 뒤 경고에 체크하고 Create as a plugin을 누르세요

    Name · 이름Scorecard MCP
    Connection · 주소https://mcp.scorecard.io/mcp
  3. 채팅에서 Scorecard MCP 고르기

    새 채팅을 열고 입력 전에 플러그인 목록에서 Scorecard MCP을 고르세요

  4. 해 보기

    Scorecard MCP을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ ChatGPT가 Scorecard MCP을 쓰고 있다고 하거나 답에 Scorecard MCP 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 OpenAI 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Claude Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 터미널 열기

    Mac: Command+스페이스를 누르고 Terminal 입력 · Windows: PowerShell 열기

  2. 이 명령을 붙여 넣고 Enter

    claude mcp add --transport http --scope user scorecard https://mcp.scorecard.io/mcp
  3. Claude Code에서 /mcp 입력

    Scorecard MCP이 목록에 있고 연결됨으로 보이면 돼요

  4. 해 보기

    Scorecard MCP을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude Code가 Scorecard MCP을 쓰고 있다고 하거나 답에 Scorecard MCP 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Cursor에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 Cursor 열기

    Cursor에서 열기

    Cursor가 설치를 확인하면 Install을 누르세요

  2. Cursor에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    Scorecard MCP을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Cursor가 Scorecard MCP을 쓰고 있다고 하거나 답에 Scorecard MCP 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Cursor 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

VS Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 VS Code 열기

    VS Code에서 열기

    VS Code가 설치를 확인하면 Install을 누르세요

  2. VS Code에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    Scorecard MCP을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ VS Code가 Scorecard MCP을 쓰고 있다고 하거나 답에 Scorecard MCP 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 VS Code 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Windsurf, Zed, Gemini CLI 같은 다른 MCP 앱은 추가 방법이 저마다 달라요. 앱 목록에서 확인하세요

MCP를 쓰는 앱 모두 보기 →

웹으로 연결하는 앱용 주소

주소https://mcp.scorecard.io/mcp

JSON 설정은 아래 “개발자용”에 있어요

막혔나요? Scorecard MCP을 쓰는 사람에게 물어보세요💬 토론 →
개발자용: 터미널 명령과 JSON 설정

웹으로 연결

Claude Code

claude mcp add --transport http --scope user scorecard https://mcp.scorecard.io/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "scorecard": {
      "url": "https://mcp.scorecard.io/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "scorecard": {
      "type": "http",
      "url": "https://mcp.scorecard.io/mcp"
    }
  }
}

컴퓨터에 설치

Claude Code

claude mcp add --scope user scorecard --env SCORECARD_API_KEY=your-value -- npx -y scorecard-ai-mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "scorecard": {
      "command": "npx",
      "args": [
        "-y",
        "scorecard-ai-mcp"
      ],
      "env": {
        "SCORECARD_API_KEY": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "scorecard": {
      "command": "npx",
      "args": [
        "-y",
        "scorecard-ai-mcp"
      ],
      "env": {
        "SCORECARD_API_KEY": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "scorecard": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "scorecard-ai-mcp"
      ],
      "env": {
        "SCORECARD_API_KEY": "your-value"
      }
    }
  }
}

직접 입력할 값

  • SCORECARD_API_KEY 비밀 필수 env
    Scorecard API key for authentication. Get your API key from https://app.scorecard.io/settings

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

한눈에 보기

주간 다운로드i
409/주
확인된 도메인
✓ scorecard.io
라이선스i
Apache-2.0
연결 방식
컴퓨터 또는 클라우드
전송 방식
stdio, streamable-http
최신 버전i
2.1.1
레지스트리 공개i
2025년 9월 12일
코드 마지막 변경i
2026년 11월 11일
제작자
scorecard-ai
패키지
npm: scorecard-ai-mcp
레지스트리 상태
활성

어떤 앱에서 쓸 수 있나요

이 서버의 연결 방식과 각 앱의 공식 문서를 바탕으로 했어요. 2026년 11월 10일 확인.

인터넷으로 연결하는 앱

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

내 컴퓨터에서 실행하는 앱

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

모든 앱과 장단점 →

할 수 있는 일

서버가 도구 목록을 보여 주기 전에 로그인을 요구해요.

기본 점검i

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

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 도메인 scorecard.io 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)

  • ✓ 통과

    계속 관리되고 있음

    코드 마지막 변경: 그저께

  • ✓ 통과

    라이선스 있음

    Apache-2.0 사용

  • ✓ 통과

    엔드포인트 응답

    205ms 만에 응답(HTTP 401)

  • ✓ 통과

    OAuth로 로그인

    OAuth 로그인을 지원한다고 밝혀서, AI 앱이 로그인 화면으로 안내해 줘요

  • … 아직 점검 안 함

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

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

토론

질문하고, 팁을 나누고, 안 되는 점을 알려 주세요. "도움이 됨"이 많은 순서예요.

아직 글이 없어요. 처음으로 질문하거나 공유해 보세요.

이곳의 글은 사용자가 쓴 것으로, PopNx 팀의 글이 아니에요.

Google로 로그인하고 글쓰기

사용자 리뷰

아직 리뷰가 없어요

Google로 로그인하고 리뷰 쓰기

검색 및 AI 기억 카테고리의 다른 서버와 비교i

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

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

자주 묻는 질문

Scorecard MCP, 안전한가요?

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

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

입력해야 할 값: SCORECARD_API_KEY

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

둘 다 가능해요. 내 컴퓨터에 설치해도 되고, 클라우드 버전에 연결해도 돼요.

아직 관리되고 있나요?

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

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되므로 원격 MCP를 지원하는 앱에서도 쓸 수 있어요. 예: ChatGPT Business 이상.

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

같은 카테고리에는: Context7, Codebase Memory, Ruflo

같은 카테고리의 다른 것

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

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

Context7

Up-to-date docs for AI agents

제작자: upstash널리 사용됨↓ 125만/주★ 6.5만어제 업데이트

컴퓨터 또는 클라우드

Codebase Memory

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

제작자: DeusData널리 사용됨↓ 1.7만/주★ 4.9만27일 전 업데이트

내 컴퓨터에서 실행

Ruflo

Agent teams, swarms, memory and hooks for Claude Code and Codex, served over MCP.

제작자: ruvnet널리 사용됨↓ 7.4만/주★ 8.2만 저장소 전체의 별그저께 업데이트

내 컴퓨터에서 실행

제작자의 README

README 열기

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

Scorecard TypeScript API Library

[![NPM version](https://img.shields.io/npm/v/scorecard-ai.svg?label=npm%20(stable))](https://npmjs.org/package/scorecard-ai)

This library provides convenient access to the Scorecard REST API from server-side TypeScript or JavaScript.

The REST API documentation can be found on docs.scorecard.io. The full API of this library can be found in api.md.

It is generated with Stainless.

MCP Server

Use the Scorecard MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.

Note: You may need to set environment variables in your MCP client.

Installation

npm install scorecard-ai

Usage

The full API of this library can be found in api.md.

import Scorecard from 'scorecard-ai';

const client = new Scorecard({ apiKey: process.env['SCORECARD_API_KEY'], // This is the default and can be omitted environment: 'staging', // or 'production' | 'local'; defaults to 'production' });

const run = await client.runs.create('314', { metricIds: ['789', '101'], testsetId: '246' });

console.log(run.id);

Request & Response types

This library includes TypeScript definitions for all request params and response fields. You may import and use them like so:

import Scorecard from 'scorecard-ai';

const client = new Scorecard({ apiKey: process.env['SCORECARD_API_KEY'], // This is the default and can be omitted environment: 'staging', // or 'production' | 'local'; defaults to 'production' });

const testset: Scorecard.Testset = await client.testsets.get('246');

Documentation for each method, request param, and response field are available in docstrings and will appear on hover in most modern editors.

Handling errors

When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of APIError will be thrown:

const testset = await client.testsets.get('246').catch(async (err) => {

if (err instanceof Scorecard.APIError) { console.log(err.status); // 400 console.log(err.name); // BadRequestError console.log(err.headers); // {server: 'nginx', ...} } else { throw err; } });

Error codes are as follows:

Status CodeError Type
400BadRequestError
401AuthenticationError
403PermissionDeniedError
404NotFoundError
422UnprocessableEntityError
429RateLimitError
>=500InternalServerError
N/AAPIConnectionError
Retries

Certain errors will be automatically retried 2 times by default, with a short exponential backoff. Connection errors (for example, due to a network connectivity problem), 408 Request Timeout, 409 Conflict, 429 Rate Limit, and >=500 Internal errors will all be retried by default.

You can use the maxRetries option to configure or disable this:

// Configure the default for all requests:

const client = new Scorecard({ maxRetries: 0, // default is 2 });

// Or, configure per-request: await client.testsets.get('246', { maxRetries: 5, });

Timeouts

Requests time out after 1 minute by default. You can configure this with a timeout option:

// Configure the default for all requests:

const client = new Scorecard({ timeout: 20 * 1000, // 20 seconds (default is 1 minute) });

// Override per-request: await client.testsets.get('246', { timeout: 5 * 1000, });

On timeout, an APIConnectionTimeoutError is thrown.

Note that requests which time out will be retried twice by default.

Auto-pagination

List methods in the Scorecard API are paginated. You can use the for await … of syntax to iterate through items across all pages:

async function fetchAllTestcases(params) {

const allTestcases = []; // Automatically fetches more pages as needed. for await (const testcase of client.testcases.list('246', { limit: 30 })) { allTestcases.push(testcase); } return allTestcases; }

Alternatively, you can request a single page at a time:

let page = await client.testcases.list('246', { limit: 30 });

for (const testcase of page.data) { console.log(testcase); }

// Convenience methods are provided for manually paginating: while (page.hasNextPage()) { page = await page.getNextPage(); // ... }

Advanced Usage

Accessing raw Response data (e.g., headers)

The "raw" Response returned by fetch() can be accessed through the .asResponse() method on the APIPromise type that all methods return. This method returns as soon as the headers for a successful response are received and does not consume the response body, so you are free to write custom parsing or streaming logic.

You can also use the .withResponse() method to get the raw Response along with the parsed data. Unlike .asResponse() this method consumes the body, returning once it is parsed.

const client = new Scorecard();

const response = await client.testsets.get('246').asResponse(); console.log(response.headers.get('X-My-Header')); console.log(response.statusText); // access the underlying Response object

const { data: testset, response: raw } = await client.testsets.get('246').withResponse(); console.log(raw.headers.get('X-My-Header')); console.log(testset.id);

Logging

[!IMPORTANT]

All log messages are intended for debugging only. The format and content of log messages

may change between releases.

Log levels

The log level can be configured in two ways:

  1. Via the SCORECARD_LOG environment variable
  2. Using the logLevel client option (overrides the environment variable if set)
import Scorecard from 'scorecard-ai';

const client = new Scorecard({ logLevel: 'debug', // Show all log messages });

Available log levels, from most to least verbose:

  • 'debug' - Show debug messages, info, warnings, and errors
  • 'info' - Show info messages, warnings, and errors
  • 'warn' - Show warnings and errors (default)
  • 'error' - Show only errors
  • 'off' - Disable all logging

At the 'debug' level, all HTTP requests and responses are logged, including headers and bodies. Some authentication-related headers are redacted, but sensitive data in request and response bodies may still be visible.

Custom logger

By default, this library logs to globalThis.console. You can also provide a custom logger. Most logging libraries are supported, including pino, winston, bunyan, consola, signale, and @std/log. If your logger doesn't work, please open an issue.

When providing a custom logger, the logLevel option still controls which messages are emitted, messages below the configured level will not be sent to your logger.

import Scorecard from 'scorecard-ai';

import pino from 'pino';

const logger = pino();

const client = new Scorecard({ logger: logger.child({ name: 'Scorecard' }), logLevel: 'debug', // Send all messages to pino, allowing it to filter });

Making custom/undocumented requests

This library is typed for convenient access to the documented API. If you need to access undocumented endpoints, params, or response properties, the library can still be used.

Undocumented endpoints

To make requests to undocumented endpoints, you can use client.get, client.post, and other HTTP verbs. Options on the client, such as retries, will be respected when making these requests.

await client.post('/some/path', {

body: { some_prop: 'foo' }, query: { some_query_arg: 'bar' }, });

Undocumented request params

To make requests using undocumented parameters, you may use // @ts-expect-error on the undocumented parameter. This library doesn't validate at runtime that the request matches the type, so any extra values you send will be sent as-is.

client.runs.create({

// ... // @ts-expect-error baz is not yet public baz: 'undocumented option', });

For requests with the GET verb, any extra params will be in the query, all other requests will send the extra param in the body.

If you want to explicitly send an extra argument, you can do so with the query, body, and headers request options.

Undocumented response properties

To access undocumented response properties, you may access the response object with // @ts-expect-error on the response object, or cast the response object to the requisite type. Like the request params, we do not validate or strip extra properties from the response from the API.

Customizing the fetch client

By default, this library expects a global fetch function is defined.

If you want to use a different fetch function, you can either polyfill the global:

import fetch from 'my-fetch';

globalThis.fetch = fetch;

Or pass it to the client:

import Scorecard from 'scorecard-ai';

import fetch from 'my-fetch';

const client = new Scorecard({ fetch });

Fetch options

If you want to set custom fetch options without overriding the fetch function, you can provide a fetchOptions object when instantiating the client or making a request. (Request-specific options override client options.)

import Scorecard from 'scorecard-ai';

const client = new Scorecard({ fetchOptions: { // RequestInit options }, });

Configuring proxies

To modify proxy behavior, you can provide custom fetchOptions that add runtime-specific proxy options to requests:

Node [docs]

im

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요