California Justice Watch
California criminal-justice accountability: DAs, defenders, judges, officers, CJP, POST.
我该使用它吗
质量与安全性
发现(1)
- LOW在 top_judges 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"cajusticewatch": {
"url": "https://cajusticewatch.com/api/mcp"
}
}
}远程端点
https://cajusticewatch.com/api/mcpstreamable-http它能做什么
工具清单
工具(15)
🟢search_das(query, county, limit)
Search the public database of California District Attorneys with documented misconduct or controversy. Returns name, county, in-office date, misconduct type, description, source URL.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text query — matched against any field"
},
"county": {
"type": "string",
"description": "Filter to a specific California county"
},
"limit": {
"type": "integer",
"default": 20,
"minimum": 1,
"maximum": 100
}
}
}🟢get_da(name)
Get a full DA record by name (exact or close partial match).
输入模式
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "DA name"
}
},
"required": [
"name"
]
}🟢search_defenders(query, county, status, limit)
Search the public database of California public defenders with documented case outcomes, failures, or systemic-context entries. Includes Bar number, county, office, score.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"county": {
"type": "string"
},
"status": {
"type": "string",
"description": "e.g. \"Active\", \"Suspended\""
},
"limit": {
"type": "integer",
"default": 20,
"minimum": 1,
"maximum": 100
}
}
}🟢get_defender(id, name)
Get a full defender record by Bar number id or name.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
}🟢search_judges(query, court_type, limit)
Search current California judges by name and/or court type (e.g., "superior", "appeal", "supreme"). Returns name + court type pairs.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"court_type": {
"type": "string",
"description": "\"superior\", \"appeal\", \"supreme\", etc."
},
"limit": {
"type": "integer",
"default": 50,
"minimum": 1,
"maximum": 500
}
}
}🟢search_officers(query, agency, limit)
Search the public database of California law enforcement officers with documented misconduct or decertification. Includes name, agency, basis.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Police department or agency name"
},
"limit": {
"type": "integer",
"default": 20,
"minimum": 1,
"maximum": 100
}
}
}🟢get_officer(name, agency)
Get a full officer record by name (with optional agency filter for disambiguation).
输入模式
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"agency": {
"type": "string"
}
},
"required": [
"name"
]
}🟢search_cjp(query, limit)
Search the California Commission on Judicial Performance (CJP) public-discipline records — judges censured, admonished, or removed for misconduct. Source: cjp.ca.gov public decisions.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text query against any field"
},
"limit": {
"type": "integer",
"default": 20,
"minimum": 1,
"maximum": 100
}
}
}🟢search_cjp_documents(query, judge, year, limit)
Semantic search over the full text of CJP public-discipline decisions (250 PDFs ingested). Use this for topic questions ("racial bias", "drug-related misconduct", "ex parte communications") or when you need passages, not just summary records. Returns matching passages with citations. Distinct from search_cjp (which searches the summary-record JSON).
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Topic or phrase to find in the decision text"
},
"judge": {
"type": "string",
"description": "Optional judge-name filter (substring match)"
},
"year": {
"type": "integer",
"description": "Optional year filter (e.g. 2020)"
},
"limit": {
"type": "integer",
"default": 5,
"minimum": 1,
"maximum": 20
}
},
"required": [
"query"
]
}🟡search_capost(query, agency, limit)
Search the California POST decertification database — law enforcement officers stripped of their POST certification. Source: post.ca.gov public records.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"agency": {
"type": "string",
"description": "Police department or agency name"
},
"limit": {
"type": "integer",
"default": 20,
"minimum": 1,
"maximum": 100
}
}
}🟢list_databases
List all public databases exposed by this MCP server with their metadata (entry counts, last updated, descriptions).
输入模式
{
"type": "object",
"properties": {}
}⚪top_das(limit, county)
Return the top-N California DAs by editorial severity score (descending). Use for "worst DA" / "most-disciplined DA" / ranking questions. Optional county filter. Only manually-scored records are returned.
输入模式
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"minimum": 1,
"maximum": 25
},
"county": {
"type": "string",
"description": "Optional county filter, e.g. \"San Mateo\""
}
}
}⚪top_judges(limit)
Return the top-N California judges by CJP discipline severity (removal > censure > admonishment, descending). Use for "worst judge" / "most-disciplined judge" / ranking questions.
输入模式
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"minimum": 1,
"maximum": 25
}
}
}⚪top_officers(limit, agency)
Return the top-N California law enforcement officers by editorial severity score (descending). Use for "worst officer" / "most-disciplined officer" / ranking questions. Optional agency filter.
输入模式
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"minimum": 1,
"maximum": 25
},
"agency": {
"type": "string",
"description": "Optional agency filter, e.g. \"Riverside County Sheriff\""
}
}
}🟢list_pages
Return the canonical list of pages on cajusticewatch.com — slug, URL, label, and purpose. Use this when the user asks about features/pages/tools of the site, OR when you need to recommend a page, OR before saying "I do not have access to X" — the page may actually exist.
输入模式
{
"type": "object",
"properties": {}
}社区
证据