PlainRouter
Inspect an approved ad account and first-party signal health, then propose policy-gated actions.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"mcp": {
"url": "https://plainrouter.com/mcp"
}
}
}원격 엔드포인트
https://plainrouter.com/mcpstreamable-httphttps://plainrouter.com/mcp/sandboxstreamable-http할 수 있는 일
도구 목록
도구 (4)
🟢get_account_state(account_id)
Synthetic twin of the production tool. Returns an invented advertising account in the real response shape, marked "sandbox": true. Requires no account, API key, or OAuth flow.
입력 스키마
{
"type": "object",
"properties": {
"account_id": {
"description": "Advertising account ID. Required when the workspace has more than one active account.",
"minimum": 1,
"type": "integer"
}
}
}🟢get_signal_health(account_id, days, months)
Synthetic twin of the production tool. Returns invented Signal health in the real response shape, marked "sandbox": true. Requires no account, API key, or OAuth flow.
입력 스키마
{
"type": "object",
"properties": {
"account_id": {
"description": "Advertising account ID. Required when the workspace has more than one active account.",
"minimum": 1,
"type": "integer"
},
"days": {
"description": "Trailing window in days. One of 7, 30, 90.",
"default": 7,
"enum": [
7,
30,
90
],
"minimum": 7,
"maximum": 90,
"type": "integer"
},
"months": {
"description": "Trailing window of 12 calendar months, in place of days. Offered only where the workspace plan keeps that history and the workspace is set to keep it.",
"enum": [
12
],
"type": "integer"
}
}
}🟢get_performance(account_id, days)
Synthetic twin of the production tool. Returns invented reconciliation evidence in the real response shape, marked "sandbox": true. Requires no account, API key, or OAuth flow.
입력 스키마
{
"type": "object",
"properties": {
"account_id": {
"description": "Advertising account ID. Required when the workspace has more than one active account.",
"minimum": 1,
"type": "integer"
},
"days": {
"description": "Number of reporting days to compare, from 1 to 90.",
"default": 7,
"minimum": 1,
"maximum": 90,
"type": "integer"
}
}
}🟢validate_sandbox_event(event_name, event_id, action_source, value_data)
Validate a synthetic, identity-free conversion event against the Plainrouter schema. Requires no account, API key, or OAuth flow. Nothing is stored and nothing is sent to an advertising provider. Use this to confirm the server is reachable and that an event payload is well formed before requesting credentials.
입력 스키마
{
"type": "object",
"properties": {
"event_name": {
"description": "Synthetic event name, such as Purchase. Maximum 100 characters.",
"maxLength": 100,
"type": "string"
},
"event_id": {
"description": "Optional synthetic idempotency key. Maximum 128 characters. One is derived when omitted.",
"maxLength": 128,
"type": "string"
},
"action_source": {
"description": "Where the synthetic event originated: website, app, or other.",
"default": "website",
"type": "string"
},
"value_data": {
"description": "Optional synthetic commerce data. Identity-bearing fields are rejected.",
"properties": {
"value": {
"description": "Decimal string such as \"49.90\".",
"type": "string"
},
"currency": {
"description": "Three-letter uppercase ISO 4217 code such as EUR.",
"type": "string"
},
"order_id": {
"description": "Synthetic order reference. Maximum 128 characters.",
"type": "string"
}
},
"type": "object"
}
},
"required": [
"event_name"
]
}커뮤니티
증거