Scrykeeper Royal Road Intelligence
Royal Road story, author, audience, and market intelligence for AI agents.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- HIGH
- MEDIUMget_story에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"royal-road-intelligence": {
"url": "https://scrykeeper.com/mcp"
}
}
}원격 엔드포인트
https://scrykeeper.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (4)
🟢get_story(rr_fiction_id)
Get Scrykeeper intelligence for one Royal Road fiction ID. Observed readers are sampled graph observations and are not total readership. Anonymous demo access is available; higher limits are available at https://scrykeeper.com/api/access.
입력 스키마
{
"type": "object",
"properties": {
"rr_fiction_id": {
"title": "Rr Fiction Id",
"type": "integer"
}
},
"required": [
"rr_fiction_id"
],
"title": "get_storyArguments"
}출력 스키마
{
"type": "object",
"additionalProperties": true,
"title": "get_storyDictOutput"
}🟢get_author(identity_id)
Get a resolved Scrykeeper author identity, known works and deduplicated observed audience footprint. Known works are not guaranteed to be a complete bibliography.
입력 스키마
{
"type": "object",
"properties": {
"identity_id": {
"title": "Identity Id",
"type": "integer"
}
},
"required": [
"identity_id"
],
"title": "get_authorArguments"
}출력 스키마
{
"type": "object",
"additionalProperties": true,
"title": "get_authorDictOutput"
}🟢search_market(q, genre, lifecycle, followers_min, followers_max, ...)
Search Scrykeeper's Royal Road market dataset by genre, lifecycle, followers, sampled observed readers, update recency and known commercial mapping. commercial='none' means no accepted mapping in Scrykeeper, not unpublished.
입력 스키마
{
"type": "object",
"properties": {
"q": {
"default": "",
"title": "Q",
"type": "string"
},
"genre": {
"default": "",
"enum": [
"",
"litrpg",
"progression",
"cultivation",
"xianxia",
"dungeon_core",
"time_loop",
"cozy",
"fanfiction"
],
"title": "Genre",
"type": "string"
},
"lifecycle": {
"default": "",
"enum": [
"",
"ongoing",
"completed",
"stubbed",
"hiatus",
"inactive",
"dropped",
"unknown"
],
"title": "Lifecycle",
"type": "string"
},
"followers_min": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Followers Min"
},
"followers_max": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Followers Max"
},
"readers_min": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Readers Min"
},
"readers_max": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Readers Max"
},
"commercial": {
"default": "all",
"enum": [
"all",
"known",
"none"
],
"title": "Commercial",
"type": "string"
},
"updated_days": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Updated Days"
},
"sort": {
"default": "audience",
"enum": [
"audience",
"followers",
"recent"
],
"title": "Sort",
"type": "string"
},
"limit": {
"default": 20,
"title": "Limit",
"type": "integer"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cursor"
}
},
"title": "search_marketArguments"
}출력 스키마
{
"type": "object",
"additionalProperties": true,
"title": "search_marketDictOutput"
}🟢get_data_context
Return Scrykeeper's current data coverage, source-specific freshness, methodology and limitations. Use this when interpreting reader, author or commercial metrics.
입력 스키마
{
"type": "object",
"properties": {},
"title": "get_data_contextArguments"
}출력 스키마
{
"type": "object",
"additionalProperties": true,
"title": "get_data_contextDictOutput"
}커뮤니티
증거