Video History Project

Search experimental video history, read public records, follow sources and export citations.

사용해야 할까요

품질 및 안전성

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

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

컨텍스트 비용

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

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "research": {
      "url": "https://www.videohistoryproject.org/mcp"
    }
  }
}

원격 엔드포인트

https://www.videohistoryproject.org/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (6)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢export_citations(ids, format, target)

Export citations for 1–25 VHP IDs or URLs. format is text or ris; target is publication (the cataloged work) or page (the VHP web page). Missing publication metadata returns a per-item error; choose page to cite a biography or history page.

입력 스키마

{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "format": {
      "type": "string",
      "default": "text"
    },
    "target": {
      "type": "string",
      "default": "publication"
    }
  },
  "required": [
    "ids"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string"
    },
    "target": {
      "type": "string"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "null"
            ]
          },
          "error": {
            "type": [
              "object",
              "null"
            ],
            "properties": {
              "code": {
                "type": "string"
              },
              "message": {
                "type": "string"
              }
            },
            "required": [
              "code",
              "message"
            ]
          }
        },
        "required": [
          "id",
          "url",
          "text",
          "error"
        ]
      }
    }
  },
  "required": [
    "format",
    "target",
    "results"
  ]
}
🟢get_record(id, section, offset, limit, version)

Read a public VHP record by ID or VHP URL, resolving old addresses locally. Returns metadata, source links, citations and a section of existing text. Default section is body; choose other section names from sections. Follow content.nextOffset with the same section and version for complete text. Linked scans are not read.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "section": {
      "type": "string",
      "default": "body"
    },
    "offset": {
      "type": "integer",
      "default": 0
    },
    "limit": {
      "type": "integer",
      "default": 12000
    },
    "version": {
      "type": [
        "string",
        "null"
      ],
      "default": null
    }
  },
  "required": [
    "id"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "title": {
      "type": "string"
    },
    "kind": {
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "modified": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "credits": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "role",
          "name"
        ]
      }
    },
    "authorKeys": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "subjects": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "metadata": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "url": {
            "type": [
              "string",
              "null"
            ],
            "default": null
          }
        },
        "required": [
          "label",
          "value"
        ]
      }
    },
    "citations": {
      "type": "object",
      "properties": {
        "page": {
          "type": "string"
        },
        "publication": {
          "type": [
            "string",
            "null"
          ]
        },
        "risUrl": {
          "type": "string"
        }
      },
      "required": [
        "page",
        "publication",
        "risUrl"
      ]
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "relationship": {
            "type": "string"
          },
          "contentType": {
            "type": [
              "string",
              "null"
            ],
            "default": null
          }
        },
        "required": [
          "label",
          "url",
          "relationship"
        ]
      }
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "generated": {
            "type": "boolean"
          },
          "characters": {
            "type": "integer"
          }
        },
        "required": [
          "name",
          "source",
          "generated",
          "characters"
        ]
      }
    },
    "content": {
      "type": "object",
      "properties": {
        "section": {
          "type": "string"
        },
        "source": {
          "type": "string"
        },
        "generated": {
          "type": "boolean"
        },
        "text": {
          "type": "string"
        },
        "offset": {
          "type": "integer"
        },
        "nextOffset": {
          "type": [
            "integer",
            "null"
          ]
        },
        "totalCharacters": {
          "type": "integer"
        },
        "complete": {
          "type": "boolean"
        }
      },
      "required": [
        "section",
        "source",
        "generated",
        "text",
        "offset",
        "nextOffset",
        "totalCharacters",
        "complete"
      ]
    },
    "rightsUrl": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "title",
    "kind",
    "url",
    "version",
    "modified",
    "credits",
    "authorKeys",
    "subjects",
    "metadata",
    "citations",
    "links",
    "sections",
    "content",
    "rightsUrl"
  ]
}
🟢list_terms(field, query, page, limit)

Find catalog author or subject filter keys by part of a name. Returns exact keys, display labels and counts of discoverable records. field is author or subject. Follow nextPage; use a returned key in search_records.

입력 스키마

{
  "type": "object",
  "properties": {
    "field": {
      "type": "string"
    },
    "query": {
      "type": "string",
      "default": ""
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "limit": {
      "type": "integer",
      "default": 25
    }
  },
  "required": [
    "field"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "field": {
      "type": "string"
    },
    "total": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "nextPage": {
      "type": [
        "integer",
        "null"
      ]
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "records": {
            "type": "integer"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "key",
          "label",
          "records",
          "url"
        ]
      }
    }
  },
  "required": [
    "field",
    "total",
    "page",
    "nextPage",
    "results"
  ]
}
🟢search_records(query, type, author, subject, from, ...)

Search public VHP records by words or quoted phrases. Empty query browses. Combine exact author/subject keys from list_terms, recorded years and a type from describe_collection. Follow nextPage. Excerpts label their source; read get_record before quoting.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "default": ""
    },
    "type": {
      "type": [
        "string",
        "null"
      ],
      "default": null
    },
    "author": {
      "type": [
        "string",
        "null"
      ],
      "default": null
    },
    "subject": {
      "type": [
        "string",
        "null"
      ],
      "default": null
    },
    "from": {
      "type": [
        "integer",
        "null"
      ],
      "default": null
    },
    "to": {
      "type": [
        "integer",
        "null"
      ],
      "default": null
    },
    "page": {
      "type": "integer",
      "default": 1
    },
    "limit": {
      "type": "integer",
      "default": 10
    }
  }
}

출력 스키마

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "limit": {
      "type": "integer"
    },
    "nextPage": {
      "type": [
        "integer",
        "null"
      ]
    },
    "filters": {
      "type": "object",
      "properties": {
        "query": {
          "type": "string"
        },
        "type": {
          "type": [
            "string",
            "null"
          ]
        },
        "author": {
          "type": [
            "string",
            "null"
          ]
        },
        "subject": {
          "type": [
            "string",
            "null"
          ]
        },
        "from": {
          "type": [
            "integer",
            "null"
          ]
        },
        "to": {
          "type": [
            "integer",
            "null"
          ]
        }
      },
      "required": [
        "query",
        "type",
        "author",
        "subject",
        "from",
        "to"
      ]
    },
    "searchUrl": {
      "type": "string"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "title": {
            "type": "string"
          },
          "kind": {
            "type": [
              "string",
              "null"
            ]
          },
          "path": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "year": {
            "type": [
              "integer",
              "null"
            ]
          },
          "snippet": {
            "type": "string"
          },
          "snippetSource": {
            "type": "string"
          },
          "snippetContainsQueryWord": {
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "title",
          "kind",
          "path",
          "url",
          "year",
          "snippet",
          "snippetSource",
          "snippetContainsQueryWord"
        ]
      }
    }
  },
  "required": [
    "total",
    "page",
    "limit",
    "nextPage",
    "filters",
    "searchUrl",
    "results"
  ]
}
🟢get_related_records(id, limit)

Get the site's existing similarity suggestions for a public record. These are research leads, not evidence of a historical relationship. May return no suggestions when the index has none or the editor has disabled them.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "default": 6
    }
  },
  "required": [
    "id"
  ]
}

출력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "method": {
      "type": "string"
    },
    "note": {
      "type": "string"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "title": {
            "type": "string"
          },
          "kind": {
            "type": [
              "string",
              "null"
            ]
          },
          "path": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "year": {
            "type": [
              "integer",
              "null"
            ]
          },
          "snippet": {
            "type": "string"
          },
          "snippetSource": {
            "type": "string"
          },
          "snippetContainsQueryWord": {
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "title",
          "kind",
          "path",
          "url",
          "year",
          "snippet",
          "snippetSource",
          "snippetContainsQueryWord"
        ]
      }
    }
  },
  "required": [
    "id",
    "method",
    "note",
    "results"
  ]
}
🟢describe_collection

Describe the Video History Project collection, searchable text, filters, citation practices and response limits. Useful when beginning research.

입력 스키마

{
  "type": "object",
  "properties": {}
}

출력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "records": {
      "type": "integer"
    },
    "types": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "key",
          "label"
        ]
      }
    },
    "guide": {
      "type": "string"
    },
    "guideUrl": {
      "type": "string"
    },
    "defaultLimit": {
      "type": "integer",
      "default": 10
    },
    "maximumLimit": {
      "type": "integer",
      "default": 25
    },
    "maximumTextCharacters": {
      "type": "integer",
      "default": 12000
    }
  },
  "required": [
    "name",
    "website",
    "records",
    "types",
    "guide",
    "guideUrl"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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