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

JSON Contracts

제작자: json-contracts버전 0.1.2i★ 1i내 컴퓨터에서 실행
레지스트리 이름io.github.json-contracts/json-contracts

설치 방법

What it does

JSON contract registry and validator for structured LLM and agent outputs.

  • Connects 내 컴퓨터에서 실행
  • Account or key No key needed
  • Category 개발자 도구

설치

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

검사 1/2 통과 · 내 컴퓨터에서 실행돼요

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

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

Claude에 연결할 수 있지만 먼저 준비가 필요해요

JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만) · 컴퓨터용 Claude 앱(Windows 또는 Mac)에서만 되고 웹이나 모바일은 안 돼요

  1. Node.js 설치

    한 번만 하면 Node.js가 필요한 모든 서버에 쓸 수 있어요

    Node.js 다운로드 페이지 열기 ↗

  2. JSON Contracts에 가입하고 키 만들기

    제작자 사이트에서 가입하고 다음 단계에 쓸 API 키를 만드세요. 요금과 무료 요금제는 제작자 사이트에서 확인하세요.

    JSON Contracts 사이트 열기 ↗

  3. 컴퓨터용 Claude 앱 설정 파일 열기

    SettingsDeveloperEdit Config

  4. 이 설정을 붙여 넣고 저장

    {
      "mcpServers": {
        "json-contracts": {
          "command": "npx",
          "args": [
            "-y",
            "json-contracts"
          ],
          "env": {
            "JSON_CONTRACTS_DIR": "your-value"
          }
        }
      }
    }

    키는 앱 입력란에만 붙여 넣고, 채팅에 붙이거나 다른 사람에게 보내지 마세요

  5. Claude를 끄고 다시 열기

  6. 해 보기

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

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

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

ChatGPT는 아직 JSON Contracts에 연결할 수 없어요

JSON Contracts는 내 컴퓨터에 설치해서 쓰지만 ChatGPT는 웹에서 도는 서버만 연결할 수 있어요

대신 이렇게 할 수 있어요

A · JSON Contracts에 연결되는 앱 쓰기

  • JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만) · 컴퓨터용 Claude 앱(Windows 또는 Mac)에서만 되고 웹이나 모바일은 안 돼요
  • JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)
  • JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)
  • JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)

B · 개발자 도구에서 ChatGPT에 연결되는 다른 서버

같은 분류에서 많이 쓰는 것 중 키 없이 주소만으로 연결되는 것을 골랐어요

Claude Code에 연결할 수 있지만 먼저 준비가 필요해요

JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)

  1. Node.js 설치

    한 번만 하면 Node.js가 필요한 모든 서버에 쓸 수 있어요

    Node.js 다운로드 페이지 열기 ↗

  2. JSON Contracts에 가입하고 키 만들기

    제작자 사이트에서 가입하고 다음 단계에 쓸 API 키를 만드세요. 요금과 무료 요금제는 제작자 사이트에서 확인하세요.

    JSON Contracts 사이트 열기 ↗

  3. 터미널 열기

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

  4. 이 명령을 붙여 넣고 Enter

    claude mcp add --scope user json-contracts --env JSON_CONTRACTS_DIR=your-value -- npx -y json-contracts

    Enter 전에 “your-value”를 내 키로 바꾸세요

    키는 앱 입력란에만 붙여 넣고, 채팅에 붙이거나 다른 사람에게 보내지 마세요

  5. Claude Code에서 /mcp 입력

    JSON Contracts이 목록에 있고 연결됨으로 보이면 돼요

  6. 해 보기

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

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

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

Cursor에 연결할 수 있지만 먼저 준비가 필요해요

JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)

  1. Node.js 설치

    한 번만 하면 Node.js가 필요한 모든 서버에 쓸 수 있어요

    Node.js 다운로드 페이지 열기 ↗

  2. JSON Contracts에 가입하고 키 만들기

    제작자 사이트에서 가입하고 다음 단계에 쓸 API 키를 만드세요. 요금과 무료 요금제는 제작자 사이트에서 확인하세요.

    JSON Contracts 사이트 열기 ↗

  3. 이 버튼으로 Cursor 열기

    Cursor에서 열기

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

  4. 키 입력

    JSON Contracts 설정에서 JSON_CONTRACTS_DIR가 비어 있어요. 내 키를 넣고 저장하세요

    키는 앱 입력란에만 붙여 넣고, 채팅에 붙이거나 다른 사람에게 보내지 마세요

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

  6. 해 보기

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

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

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

VS Code에 연결할 수 있지만 먼저 준비가 필요해요

JSON Contracts 키가 필요해요 (제작자 사이트에서 만들기) · 먼저 컴퓨터에 Node.js를 설치하세요 (한 번만)

  1. Node.js 설치

    한 번만 하면 Node.js가 필요한 모든 서버에 쓸 수 있어요

    Node.js 다운로드 페이지 열기 ↗

  2. JSON Contracts에 가입하고 키 만들기

    제작자 사이트에서 가입하고 다음 단계에 쓸 API 키를 만드세요. 요금과 무료 요금제는 제작자 사이트에서 확인하세요.

    JSON Contracts 사이트 열기 ↗

  3. 이 버튼으로 VS Code 열기

    VS Code에서 열기

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

  4. 키 입력

    JSON Contracts 설정에서 JSON_CONTRACTS_DIR가 비어 있어요. 내 키를 넣고 저장하세요

    키는 앱 입력란에만 붙여 넣고, 채팅에 붙이거나 다른 사람에게 보내지 마세요

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

  6. 해 보기

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

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

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

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

MCP를 쓰는 앱 모두 보기 →

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

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

컴퓨터에 설치

Claude Code

claude mcp add --scope user json-contracts --env JSON_CONTRACTS_DIR=your-value -- npx -y json-contracts

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "json-contracts": {
      "command": "npx",
      "args": [
        "-y",
        "json-contracts"
      ],
      "env": {
        "JSON_CONTRACTS_DIR": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "json-contracts": {
      "command": "npx",
      "args": [
        "-y",
        "json-contracts"
      ],
      "env": {
        "JSON_CONTRACTS_DIR": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "json-contracts": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "json-contracts"
      ],
      "env": {
        "JSON_CONTRACTS_DIR": "your-value"
      }
    }
  }
}

직접 입력할 값

  • JSON_CONTRACTS_DIR env
    Folder containing JSON contract files. Defaults to ./json-contracts.

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

한눈에 보기

주간 다운로드i
53/주
라이선스i
라이선스 표시 없음
연결 방식
내 컴퓨터에서 실행
최신 버전i
0.1.2
카테고리i
개발자 도구
레지스트리 공개i
2026년 5월 5일
코드 마지막 변경i
2026년 5월 6일
제작자
json-contracts
패키지
npm: json-contracts
웹사이트
github.com
레지스트리 상태
활성

어떤 앱에서 쓸 수 있나요

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

내 컴퓨터에서 실행하는 앱

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

모든 앱과 장단점 →

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

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

  • ✓ 통과

    제작자와 저장소 일치

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

  • ! 주의

    계속 관리되고 있음

    코드 마지막 변경: 6개월 전, 6개월 넘게 지났어요

  • … 아직 점검 안 함

    라이선스 있음

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

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

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

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

토론

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

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

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

Google로 로그인하고 글쓰기

사용자 리뷰

아직 리뷰가 없어요

Google로 로그인하고 리뷰 쓰기

개발자 도구 카테고리의 다른 서버와 비교i

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

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

자주 묻는 질문

JSON Contracts, 안전한가요?

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

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

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

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

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

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

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.

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

같은 카테고리에는: REA, Netdata, Front-End Checklist

같은 카테고리의 다른 것

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

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

REA

Reverse engineer anything from your terminal or agent with one CLI and MCP server.

제작자: morluto널리 사용됨↓ 38.9만/주★ 45.1만18일 전 업데이트

내 컴퓨터에서 실행

Netdata

Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.

제작자: netdata널리 사용됨★ 8.1만8일 전 업데이트

클라우드에서 실행

Front-End Checklist

Review frontend code and live pages against 386 quality-gated web development rules.

제작자: thedaviddias널리 사용됨★ 7.5만38일 전 업데이트

클라우드에서 실행

제작자의 README

README 열기

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

JSON Contracts MCP Server

JSON Contracts is a local MCP contract server for natural-language-to-JSON workflows. It gives agents Git-controlled JSON contracts, rules, examples, and JSON Schema validation tools so any model can reliably convert natural-language requests into schema-valid JSON.

The MCP server does not call an LLM provider. The MCP server does not need API keys. The MCP server does not use BAML, LangChain, Markdown, or a DSL. The MCP server does not use MCP sampling. The MCP server does not generate JSON by itself.

The optional Studio is a separate package/repo for live demos and local contract testing. The MCP stdio server itself does not call LLM providers.

Your user provides natural language. Your agent chooses the model. Your agent performs the natural-language-to-JSON conversion. json-contracts provides the contract and validates the result.

Correct mental model

Not this:

json-contracts = generator

This:

json-contracts = schema contract registry + validator

Like TypeScript:

developer writes code

TypeScript validates it

With json-contracts:

agent writes JSON

json-contracts validates it

Architecture

User

↓ Agent using whatever model the user picked ↓ json-contracts MCP server

  • lists available JSON contracts
  • returns schemas, rules, examples, and instructions
  • validates agent-produced JSON
  • returns repair contracts when validation fails ↓

Agent generates or repairs JSON itself ↓ App consumes valid JSON

The MCP server never performs natural-language-to-JSON conversion itself. It only provides contracts, validation, and repair guidance.

Install

Install globally:

npm install -g json-contracts

json-contracts --help

Or run without installing:

npx -y json-contracts@latest

The npm package is json-contracts; the installed CLI binary is still json-contracts.

30-second setup

Create a starter contract folder and validate it:

mkdir my-json-contracts

cd my-json-contracts npx -y json-contracts@latest init npx -y json-contracts@latest validate

Then add the MCP config below to your agent host. Point JSON_CONTRACTS_DIR at the json-contracts folder that init created.

Validate contracts in CI without starting MCP:

npx -y json-contracts@latest validate --contracts ./json-contracts

npx -y json-contracts@latest lint --strict --contracts ./json-contracts

By default, the server starts as a local stdio MCP server and loads contracts from:

./json-contracts

MCP config

{

"mcpServers": { "json-contracts": { "command": "npx", "args": ["-y", "json-contracts@latest"], "env": { "JSON_CONTRACTS_DIR": "./json-contracts" } } } }

Adding a new behavior only requires adding a new .json file to the contracts folder. No MCP config change is required.

MCP host config snippets

Most MCP hosts use the same stdio shape. Adapt paths for your machine and point JSON_CONTRACTS_DIR at your app-owned contracts folder.

Claude Desktop
{

"mcpServers": { "json-contracts": { "command": "npx", "args": ["-y", "json-contracts@latest"], "env": { "JSON_CONTRACTS_DIR": "/absolute/path/to/json-contracts" } } } }

Cursor / Windsurf / VS Code MCP-compatible hosts
{

"mcpServers": { "json-contracts": { "command": "npx", "args": ["-y", "json-contracts@latest"], "env": { "JSON_CONTRACTS_DIR": "./json-contracts" } } } }

Continue or generic stdio MCP clients
{

"name": "json-contracts", "command": "npx", "args": ["-y", "json-contracts@latest"], "env": { "JSON_CONTRACTS_DIR": "./json-contracts" } }

If npx startup is too slow or your host requires explicit executables, install globally and use:

{

"command": "json-contracts", "args": [] }

Adopt in your agent/app

Use json-contracts as a local contract/validation tool beside the model your app already uses.

1. Add the MCP server

If your agent host supports MCP, add the server config above and point JSON_CONTRACTS_DIR at the contracts folder your app owns.

If your app has its own agent runtime, connect to the same MCP stdio server and call the tools directly. The important part is the flow, not the host.

2. Write one contract per JSON behavior

Create files such as:

json-contracts/support-ticket.json

json-contracts/real-estate-lead.json json-contracts/chart-generation.json

Each file contains:

  • schema for the final JSON shape
  • rules for app-specific mapping behavior
  • examples for model guidance
  • optional operations for create/edit behavior
3. Pass app/system variables as context

Do not hide runtime variables in the user prompt. Pass them as context:

{

"contract": "real-estate-lead", "input": "I'm pre-approved for a 4 bedroom house in Durham NC up to 900k.", "context": { "current_datetime": "2026-05-03T00:00:00Z", "email": "JohnnyAppleseed@gmail.com", "source": "website-lead-form" } }

json-contracts passes context through unchanged. Contracts decide how to use it through rules/examples. The final JSON still must match the schema.

4. Give your agent this tool policy

Use this as the system/developer instruction for your agent:

When converting natural language into app JSON, use json-contracts.

Create flow:

  1. Call get_json_contract with contract, input, and context.
  2. Generate JSON using the returned schema, rules, examples, input, and context.
  3. Call validate_json.
  4. If invalid, call get_repair_contract, repair the JSON, and validate again.
  5. Return only validated JSON to the app.

Edit flow:

  1. Call get_edit_contract with contract, currentJson, input, and context.
  2. Return the complete updated object, not a patch.
  3. Call validate_json.
  4. Repair and validate again if needed.

Never skip validation. Never add fields that are not allowed by the schema. Do not copy context fields into output unless the schema allows them and the contract rules say to use them.

5. Runtime loop in your app

At request time, your app should do:

user input + app context

-> get_json_contract or get_edit_contract -> your chosen model generates JSON -> validate_json -> if invalid: get_repair_contract -> model repairs -> validate_json -> app consumes valid JSON

The MCP server does not call the model and does not mutate output. Your app/agent remains in control of model choice, provider keys, context, and business defaults.

Contract files

Each contract is one .json file in json-contracts/.

The contract name is derived from the filename:

json-contracts/support-ticket.json -> support-ticket

There is no manifest file and no manually maintained resources file. Git handles versioning.

Contract shape
{

"description": "Convert natural language into a support ticket object.", "rules": [ "If the user says urgent, severity must be critical.", "Summary must be under 80 characters.", "Category must be authentication, billing, bug, feature_request, or other." ], "operations": { "create": { "enabled": true }, "edit": { "enabled": true, "return": "full_object", "rules": [ "Start from currentJson.", "Apply only the user's requested change.", "Preserve all unspecified fields exactly.", "Return the complete updated JSON object." ] } }, "schema": { "type": "object", "additionalProperties": false, "properties": { "summary": { "type": "string", "maxLength": 80 }, "severity": { "type": "string", "enum": ["low", "medium", "high", "critical"] }, "category": { "type": "string", "enum": ["authentication", "billing", "bug", "feature_request", "other"] } }, "required": ["summary", "severity", "category"] }, "examples": [ { "input": "Urgent, users cannot log in after SSO update.", "output": { "summary": "Users cannot log in after SSO update", "severity": "critical", "category": "authentication" } } ] }

Rules:

  • schema is required and must be valid JSON Schema. Omit $schema for the default 2020-12 validator, or set $schema to draft-07 or 2020-12 explicitly.
  • description is optional but recommended.
  • rules is optional and defaults to [].
  • examples is optional and defaults to []. Example output values must validate against schema.
  • operations is optional and defaults to enabled create and edit operations. Operation metadata belongs at the top level, not inside the JSON Schema.
  • name is optional, but the filename is the source of truth.
  • A version field is rejected; use Git for versioning.
  • Contract files are plain JSON.

Included example contracts

The default json-contracts/ folder includes examples from different app categories where teams commonly rebuild the same AI glue code:

ContractIndustry/app patternConverts natural language into
support-ticketSaaS supportTriage-ready support tickets.
create-filterInternal tools/API buildersAPI filter objects.
chart-generationBI/analytics toolsDashboard chart generation specs.
patient-intakeHealthcare intakeTriage and appointment-routing objects.
ecommerce-returnEcommerce supportReturn, refund, exchange, and warranty requests.
real-estate-leadReal estate CRMBuyer, renter, seller, and lease lead profiles.
legal-client-intakeLegal tech intakeMatter routing and conflict-check data.
expense-reportFinance/expense appsReimbursement and expense line items.

Each one uses the same MCP tools: read the contract, let the model create or edit JSON, validate it, and repair if needed. New apps should not need a new bespoke prompt framework just to get reliable JSON.

MCP resources

Every loaded contract is exposed dynamically as:

json-contract://{contractName}

Examples:

json-contract://support-ticket

json-contract://create-filter json-contract://chart-generation

resources/list returns all loaded contracts. resources/read returns the normalized full contract JSON.

Stable MCP tools

list_contracts

Input:

{}

Output:

{

"contracts": [ { "name": "support-ticket", "description": "Convert natural language into a support ticket object.", "contractHash": "sha256:...", "schemaHash": "sha256:..." } ] }

read_contract

Input:

{

"contract": "support-ticket" }

Returns the selected contract's description, rules, operations, schema, examples, contractHash, and schemaHash.

Hashes are deterministic SHA-256 values over the normalized contract/schema payload. They are for logging, cache keys, and audit trails; contract files still use Git for versioning.

get_json_contract

Input:

{

"contract": "support-ticket", "input": "Urgent, users cannot log in after SSO update.", "context": {} }

Output:

{

"contract": "support-ticket", "contractHash": "sha256:...", "schemaHash": "sha256:...", "operation": "create", "instructions": [ "Convert the input into JSON.", "Return JSON only.", "Do not return markdown.", "Do not include commentary.", "Do not include extra keys.", "Match the schema exactly.", "Use enum values exactly.", "Follow all rules.", "Use examples as guidance." ], "description": "Convert natural language into a support ticket object.", "rules": [ "If the user says urgent, severity must be critical.", "Summary must be under 80 characters.", "Category must

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