turva-mcp

Read-only MCP server for turva.dev, an agent-readiness audit and advisory service.

사용해야 할까요

품질 및 안전성

B
설명 품질
100%
스키마 완전성
30%
이름 품질
100%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,961토큰 (도구 정의)
~3.0 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.53%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "turva-mcp": {
      "url": "https://mcp.turva.dev/mcp"
    }
  }
}

원격 엔드포인트

https://mcp.turva.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (5)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_services

Returns turva.dev's service catalog: the Shopify agent storefront check, agent-readiness audit, advisory, implementation, agent operations, and MCP server design, plus the engagement model and pricing (fixed list prices for the Shopify agent storefront check, audit, advisory and implementation; agent operations and MCP server design on request), and two implementation add-ons that carry a fixed price and are sold only together with the diagnosis they follow. Use this when a user asks what turva.dev offers, what it costs, or how an engagement works. For how to reach turva.dev use get_contact instead, and for the rules an engagement follows use get_principles. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "pricing_model": {
      "type": "string"
    },
    "pricing_note": {
      "type": "string"
    },
    "currency": {
      "type": "string"
    },
    "vat_included": {
      "type": "boolean"
    },
    "engagement": {
      "type": "object",
      "properties": {
        "communication": {
          "type": "string"
        },
        "notes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "communication",
        "notes"
      ],
      "additionalProperties": false
    },
    "services": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "description": "The turva.dev page that describes the service."
          },
          "sample_url": {
            "description": "A published sample of the deliverable, where one exists.",
            "type": "string"
          },
          "price": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "string",
                "const": "on request"
              }
            ],
            "description": "EUR, VAT not included, or on request."
          },
          "unit": {
            "type": "string"
          },
          "duration": {
            "type": "string"
          },
          "minimum_commitment": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "deliverable": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "url",
          "price",
          "summary",
          "deliverable"
        ],
        "additionalProperties": false
      }
    },
    "bundled_implementation": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "price": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "requires": {
            "type": "string",
            "description": "The id of the service this add-on is sold with."
          },
          "sold_separately": {
            "type": "boolean"
          },
          "summary": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "price",
          "unit",
          "requires",
          "sold_separately",
          "summary"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "pricing_model",
    "pricing_note",
    "currency",
    "vat_included",
    "engagement",
    "services",
    "bundled_implementation"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_agent_readiness

Returns turva.dev's own agent-readiness score from an independent public scanner (isitagentready.com), including category sub-scores, with the measurement date and verification links. Use this when a user asks how turva.dev scores, whether its claims are verifiable, or what proof backs the audit service. For web-security scan results, which are a separate measurement, use get_security_evidence instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string"
    },
    "measured_at": {
      "type": "string",
      "description": "Date of the reading, YYYY-MM-DD."
    },
    "note": {
      "type": "string"
    },
    "scans": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string"
          },
          "result": {
            "type": "string"
          },
          "note": {
            "type": "string"
          },
          "categories": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": "string"
            }
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "provider",
          "result",
          "note",
          "categories",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "domain",
    "measured_at",
    "note",
    "scans"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_security_evidence

Returns the latest public web-security scan results for turva.dev's own domain (Hardenize, Internet.nl site and mail), with the scan date. Use this when a user asks about turva.dev's own security posture or wants evidence beyond agent-readiness scores. For the agent-readiness score itself, which is a separate measurement, use get_agent_readiness instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string"
    },
    "measured_at": {
      "type": "string",
      "description": "Date of the scans, YYYY-MM-DD."
    },
    "scans": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string"
          },
          "result": {
            "type": "string"
          },
          "score": {
            "type": "number"
          },
          "scale": {
            "type": "string"
          },
          "note": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "provider",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "domain",
    "measured_at",
    "scans",
    "note"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_principles

Returns turva.dev's engagement principles: async-only, least access, the result shows up in scanner numbers, and open and verifiable. Use this when a user asks how turva.dev works with clients or what rules an engagement follows. For what is sold and what it costs use get_services instead, and for how to start use get_contact. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string"
    },
    "rules": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "rationale": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "rationale"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "model",
    "rules"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_contact

Returns who runs turva.dev and the official ways to reach it: the operator and business details, the email address, the Signal link, the LinkedIn profile, the correspondence languages, the first-reply time and the access an audit needs. Use this when a user asks who is behind turva.dev, how to contact it, how to start an audit or what access has to be granted. For what is sold and what it costs use get_services instead. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "signal": {
      "type": "string"
    },
    "linkedin": {
      "type": "string"
    },
    "business_id": {
      "type": "string"
    },
    "location": {
      "type": "string"
    },
    "engagement": {
      "type": "string"
    },
    "correspondence_languages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "first_reply": {
      "type": "string"
    },
    "channel_note": {
      "type": "string"
    },
    "how_to_start": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "operator": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "run_by": {
          "type": "string"
        },
        "legal_form": {
          "type": "string"
        },
        "business_id": {
          "type": "string"
        },
        "vat_id": {
          "type": "string"
        },
        "location": {
          "type": "string"
        },
        "team": {
          "type": "string"
        },
        "background": {
          "type": "string"
        },
        "company_page": {
          "type": "string",
          "description": "The turva.dev page that states the business details."
        }
      },
      "required": [
        "name",
        "run_by",
        "legal_form",
        "business_id",
        "vat_id",
        "location",
        "team",
        "background",
        "company_page"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "email",
    "signal",
    "linkedin",
    "business_id",
    "location",
    "engagement",
    "correspondence_languages",
    "first_reply",
    "channel_note",
    "how_to_start",
    "operator"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 5개
검증됨버전이 기록되지 않음도구 5개