Skip to main content
Glama
returdex

EvidenceLens MCP

by returdex

EvidenceLens MCP

EvidenceLens MCP 是一个 TypeScript Model Context Protocol 服务器,用于确定性的、只读的证据审查契约。唯一的 review_evidence 工具接受 Phase 2 内联内容,并在显式配置时接受 Phase 3 文件系统来源。它将文本、表格、PDF、图像和截图规范化为来源元数据,同时保持发现为空,并且不进行任何提供商调用。

本地开发

npm install
npm run dev
npm test
npm run build

npm run dev 通过 stdio 从 src/server.ts 启动 MCP 服务器。npm test 运行完整的契约、规范化器、夹具、安全性和 MCP 协议测试套件。npm run build 进行类型检查并编译服务器。

Related MCP server: Observability Agent MCP

MCP 契约

参见 docs/mcp-contract.md 了解精确的内联/文件系统请求契约、根配置语法、字节限制、filesystem:// 来源、规范化的证据元数据、稳定的错误,以及只读/无提供商/无发现的边界。

平台说明:默认的文件系统读取器在 Linux 上使用基于描述符的组件遍历。在 macOS 上,该项目没有受支持的 Node openat/openat2 绑定,默认的锚定文件系统读取会以清理后的 ACCESS_DENIED 且无字节的方式失败关闭;没有路径名回退。Phase 2 内联证据仍然受支持,嵌入测试可以注入经过审查的安全文件系统适配器,以获得可移植的文件系统读取覆盖。

可选的文件系统根

当未配置任何根时,文件系统访问被禁用;服务器永远不会回退到当前目录、主目录、仓库或其他宽泛的默认值。使用重复的 id=absolute-path 条目配置显式根,条目之间用逗号或分号分隔:

EVIDENCELENS_ALLOWED_ROOTS='course=/absolute/path/course;examples=/absolute/path/examples' npm run dev

根 ID 匹配 [A-Za-z][A-Za-z0-9_-]{0,31}。空条目、重复 ID、规范路径冲突、不可读的根、非目录、相对路径和格式错误的条目都会以稳定消息 Invalid filesystem root configuration 失败;路径永远不会被回显。

Available Tools

1 tool
review_evidenceReview EvidenceC
Read-onlyIdempotent

Accept Phase 1 evidence review metadata and return a deterministic skeleton response.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitsNo
evidenceNo
reviewIdYes
objectiveYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already document the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), and the description adds the behavioral fact that the response is deterministic and skeleton-shaped. However, it does not say what the skeleton response contains or how input is handled, leaving a partial transparency gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with no filler; the core action and outcome are front-loaded. It is appropriately sized but terse to the point of vagueness, so not a full 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a nested input schema and no output schema, the description is too thin: it does not explain the return shape, what 'Phase 1' means, or what evidence metadata is expected. Annotations cover safety but not operational context needed to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description needed to compensate for parameter meaning, but it mentions no parameter names or semantics. The schema itself provides constraints and enums, but the tool description contributes nothing to clarify reviewId, objective, evidence, or limits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a concrete verb-resource pair ('Accept Phase 1 evidence review metadata') and names the outcome ('return a deterministic skeleton response'), so an agent can tell this is a submission/stub endpoint for the review workflow. However, 'skeleton response' is unexplained and there is no sibling differentiation, though no siblings are listed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to call this tool versus any alternative, no workflow conditions, and no preconditions or exclusions. The only hint is the phrase 'Phase 1,' which is not elaborated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.2
    • First observedreview_evidence

TDQS

C2.3/5.0

Scored across 1 tool

Disambiguation1/5

There is only one tool, so there is no ambiguity between tools, but the single tool's purpose is vague and could overlap with future tools. Since there is no set to disambiguate, it scores minimal.

Naming Consistency1/5

With only one tool, naming consistency is trivial but the naming is not informative; 'review_evidence' is a generic name that doesn't indicate what it does with evidence. No pattern can be assessed.

Tool Count1/5

A single tool for a server called 'EvidenceLens MCP' that claims to 'review evidence' is too thin. The scope suggests a larger toolset for evidence review, but only one trivial tool is provided.

Completeness1/5

The tool description says 'Accept Phase 1 evidence review metadata and return a deterministic skeleton response.' This covers only a tiny fraction of what an evidence review workflow would need; there's no way to submit actual evidence, get details, update reviews, or handle later phases.

Maintenance

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers