logr
Query any public logr profile — timelines, events, full context — plus owner-authorized writes.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- LOWget_profile에서
- LOWget_event에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"mcp": {
"url": "https://logr.it/mcp"
}
}
}원격 엔드포인트
https://logr.it/mcpstreamable-http할 수 있는 일
도구 목록
도구 (6)
🟢find_profiles(query, limit)
Search public logr profiles by name, handle, bio, or location. Returns handles to use with the other tools.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Name, handle, or free-text match"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"profiles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"username": {
"type": "string"
},
"name": {
"type": "string"
},
"bio": {
"type": "string"
},
"location": {
"type": "string"
},
"unverified": {
"type": "boolean"
},
"url": {
"type": "string"
}
},
"required": [
"username",
"name",
"bio",
"location",
"unverified",
"url"
],
"additionalProperties": false
}
}
},
"required": [
"profiles"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_profile(username)
A profile's identity card: who they are, what they're doing now, socials, and timeline stats.
입력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The profile's @handle (its URL slug), e.g. \"koshik\""
}
},
"required": [
"username"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string"
},
"name": {
"type": "string"
},
"bio": {
"type": "string"
},
"currently": {
"type": "string"
},
"location": {
"type": "string"
},
"about": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"avatarUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"socials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
}
},
"unverified": {
"type": "boolean",
"description": "true when auto-generated and not claimed by its subject"
},
"disclosure": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"eventCount": {
"type": "number"
},
"years": {
"anyOf": [
{
"type": "object",
"properties": {
"first": {
"type": "number"
},
"last": {
"type": "number"
}
},
"required": [
"first",
"last"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"updatedAt": {
"type": "string"
},
"urls": {
"type": "object",
"properties": {
"profile": {
"type": "string"
},
"context": {
"type": "string"
}
},
"required": [
"profile",
"context"
],
"additionalProperties": false
}
},
"required": [
"username",
"name",
"bio",
"currently",
"location",
"about",
"avatarUrl",
"socials",
"unverified",
"disclosure",
"eventCount",
"years",
"updatedAt",
"urls"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_timeline(username, tag, year, featured, pinned, ...)
A profile's timeline events, newest first, optionally filtered by tag, year, featured, or pinned.
입력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The profile's @handle (its URL slug), e.g. \"koshik\""
},
"tag": {
"description": "Event tag: work | milestone | talk | side_quest | writing",
"type": "string"
},
"year": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"featured": {
"description": "Only events marked as highlights",
"type": "boolean"
},
"pinned": {
"description": "Only events the owner pinned",
"type": "boolean"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"username"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string"
},
"total": {
"type": "number",
"description": "Matches before limit/offset"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"date": {
"type": "string",
"description": "ISO date (YYYY-MM-DD)"
},
"displayDate": {
"type": "string"
},
"year": {
"type": "number"
},
"title": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"featured": {
"type": "boolean"
},
"pinned": {
"type": "boolean"
},
"body": {
"type": "string"
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"sourceUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Citation URL for seeded events"
},
"mediaCount": {
"type": "number"
}
},
"required": [
"id",
"date",
"displayDate",
"year",
"title",
"tags",
"featured",
"pinned",
"body",
"link",
"sourceUrl",
"mediaCount"
],
"additionalProperties": false
}
}
},
"required": [
"username",
"total",
"events"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_event(username, id)
One timeline event in full, including its media (image/video/link URLs).
입력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The profile's @handle (its URL slug), e.g. \"koshik\""
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [
"username",
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"date": {
"type": "string",
"description": "ISO date (YYYY-MM-DD)"
},
"displayDate": {
"type": "string"
},
"year": {
"type": "number"
},
"title": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"featured": {
"type": "boolean"
},
"pinned": {
"type": "boolean"
},
"body": {
"type": "string"
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"sourceUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Citation URL for seeded events"
},
"mediaCount": {
"type": "number"
},
"media": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"url": {
"type": "string"
},
"poster": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"provider": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"kind",
"url",
"poster",
"provider",
"title"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"date",
"displayDate",
"year",
"title",
"tags",
"featured",
"pinned",
"body",
"link",
"sourceUrl",
"mediaCount",
"media"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_events(username, query, limit)
Keyword search over a profile's timeline (title, body, tags). All terms must match. Plain text matching — no semantic search.
입력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The profile's @handle (its URL slug), e.g. \"koshik\""
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": [
"username",
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string"
},
"total": {
"type": "number"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"date": {
"type": "string",
"description": "ISO date (YYYY-MM-DD)"
},
"displayDate": {
"type": "string"
},
"year": {
"type": "number"
},
"title": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"featured": {
"type": "boolean"
},
"pinned": {
"type": "boolean"
},
"body": {
"type": "string"
},
"link": {
"anyOf": [
{
"type": "object",
"properties": {
"label": {
"type": "string"
},
"href": {
"type": "string"
}
},
"required": [
"label",
"href"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"sourceUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Citation URL for seeded events"
},
"mediaCount": {
"type": "number"
}
},
"required": [
"id",
"date",
"displayDate",
"year",
"title",
"tags",
"featured",
"pinned",
"body",
"link",
"sourceUrl",
"mediaCount"
],
"additionalProperties": false
}
}
},
"required": [
"username",
"total",
"events"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_context(username)
The complete Markdown context for a profile — identity, about, and full timeline with sources. Same content as the logr://profiles/{username} resource, for clients that prefer tools.
입력 스키마
{
"type": "object",
"properties": {
"username": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The profile's @handle (its URL slug), e.g. \"koshik\""
}
},
"required": [
"username"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}권장 프롬프트
find_profilesfind_profilesget_profileget_profilefind_profilesget_profile커뮤니티
증거