FilmRightsProof
Server Details
Film/TV public-record rights intelligence for AI agents with provenance and bounded verification.
- Status
- Healthy
- Uptime
- 100.0% over 23 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one is a free candidate search for public records, the other is a paid, comprehensive trace that produces a dossier. They explicitly cross-reference each other, eliminating any ambiguity about which to use.
Both tool names follow the same pattern: server prefix 'filmrightsproof.' followed by a verb_noun structure ('search_public_records' and 'trace_public_rights'). The naming is consistent and descriptive.
With only two tools, the set feels thin, but the server's scope is highly focused on searching and tracing public rights. The count is borderline appropriate for the narrow domain, but it is still on the low end of the acceptable range.
The two tools cover the core operations for the domain: a free initial search for candidates and a paid, in-depth trace that resolves relationships and provides provenance. This is a complete lifecycle for the stated purpose of public records investigation for film rights.
Available Tools
2 toolsfilmrightsproof.search_public_recordsSearch public copyright recordsARead-onlyIdempotentInspect
Search likely U.S. Copyright Office public records for a film, television, or underlying creative work. Use this free bounded search to identify candidates or evaluate applicability. If you need reconciled evidence, source-supported relationships, provenance, ambiguity, and freshness in one dossier, use filmrightsproof.trace_public_rights instead.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Optional release, publication, creation, or registration year used to narrow candidate matches. | |
| limit | No | Maximum number of candidate public-record matches to return or inspect. | |
| title | Yes | Film, television, or underlying creative-work title to search in U.S. Copyright Office public records. | |
| creator | No | Optional creator, author, writer, director, producer, or other credited name used to disambiguate similarly titled works. | |
| workType | No | Optional work-type hint, such as motion picture, television, screenplay, book, or other underlying creative work. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| coverage | Yes | |
| freshness | Yes | |
| candidates | Yes | |
| legalNotice | Yes | |
| evidenceGaps | Yes | |
| schemaVersion | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral context beyond that: results are 'likely' candidates, the search is 'bounded', and it is not producing reconciled/provenance-backed evidence. This helps set the right expectations for result reliability.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the primary purpose, and then immediately provides the alternative-tool condition. Every sentence earns its place, with no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema, strong annotations, complete parameter documentation, and an explicit sibling-tool pointer, an agent has everything it needs to invoke this tool correctly and decide whether it is the right choice for the task. No critical contextual gap is evident.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the input schema documents all five parameters with descriptions, examples, constraints, and required fields. The tool description itself does not need to repeat parameter details, so it meets the baseline for high schema coverage without adding extra per-parameter semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Search'), a clear resource ('U.S. Copyright Office public records'), and a scope ('film, television, or underlying creative work'). It also explicitly distinguishes itself from the sibling tool by positioning this as a candidate-finding, bounded search rather than a reconciled-evidence dossier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states exactly when to use this tool ('Use this free bounded search to identify candidates or evaluate applicability') and names the alternative condition explicitly ('If you need reconciled evidence... use filmrightsproof.trace_public_rights instead'). This gives an agent unambiguous routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
filmrightsproof.trace_public_rightsTrace public rights evidenceARead-onlyIdempotentInspect
Trace a bounded film or television public-record rights dossier when an agent needs more than candidate lookup. Resolve the work, reconcile maintained Copyright Office evidence, build only source-supported relationships, and return provenance, ambiguity, and bounded freshness. $0.50 per completed authorized invocation. For candidate lookup or free applicability evaluation, use filmrightsproof.search_public_records instead. Not legal clearance, definitive ownership, exhaustive chain of title, or private-contract analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Optional release, publication, creation, or registration year used to narrow candidate matches. | |
| limit | No | Maximum number of candidate public-record matches to return or inspect. | |
| title | Yes | Film, television, or underlying creative-work title to search in U.S. Copyright Office public records. | |
| creator | No | Optional creator, author, writer, director, producer, or other credited name used to disambiguate similarly titled works. | |
| workType | No | Optional work-type hint, such as motion picture, television, screenplay, book, or other underlying creative work. |
Output Schema
| Name | Required | Description |
|---|---|---|
| edges | Yes | |
| query | Yes | |
| state | Yes | |
| status | Yes | |
| methods | Yes | |
| records | Yes | |
| traceId | Yes | |
| coverage | Yes | |
| evidence | Yes | |
| dossierId | Yes | |
| freshness | Yes | |
| operation | Yes | |
| candidates | Yes | |
| provenance | Yes | |
| legalNotice | Yes | |
| limitations | Yes | |
| evidenceGaps | Yes | |
| resolvedWork | No | |
| corpusVersion | No | |
| nonInferences | Yes | |
| schemaVersion | Yes | |
| canonicalRequest | Yes | |
| normalizedParties | Yes | |
| unresolvedQuestions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, and the description adds meaningful behavior beyond them: per-invocation cost, bounded scope, source-supported relationship building, provenance/ambiguity/freshness outputs, and explicit non-goals. It does not contradict any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but every sentence earns its place: the use case is front-loaded, the process is summarized, cost is stated, the sibling alternative is offered, and exclusions are listed. There is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, scope, cost, output characteristics, alternatives, and limitations. Since an output schema exists, detailed return values need not be repeated in prose. This is complete for an agent deciding to invoke and use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters thoroughly. The description adds contextual meaning about boundedness and evidence reconciliation but does not need to repeat parameter-level details. Baseline 3 is appropriate for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Trace') and a well-scoped object ('a bounded film or television public-record rights dossier'), and explicitly contrasts the operation with candidate lookup. It clearly distinguishes itself from the sibling tool filmrightsproof.search_public_records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states when to use the tool ('when an agent needs more than candidate lookup') and explicitly directs agents to the alternative for the other case ('use filmrightsproof.search_public_records instead'). It also lists what this tool is not for, which helps prevent misuse.
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.
2 tool updates
- Changed
filmrightsproof.search_public_records7 fields changed- added
Input schema / descriptionAdded value: +"Identify a film, television title, or underlying creative work for bounded U.S. Copyright Office public-record research. Title is required; creator, year, and workType are disambiguation hints; limit only bounds returned or inspected candidates." - added
Input schema / examplesAdded value: +[ + { + "limit": 10, + "title": "The Godfather", + "workType": "motion picture", + "year": 1972 + }, + { + "creator": "Frank Herbert", + "limit": 10, + "title": "Dune", + "workType": "book" + } +] - added
Input schema / properties / creator / examplesAdded value: +[ + "Francis Ford Coppola" +] - added
Input schema / properties / limit / examplesAdded value: +[ + 10 +] - added
Input schema / properties / title / examplesAdded value: +[ + "The Godfather" +] - added
Input schema / properties / workType / examplesAdded value: +[ + "motion picture" +] - added
Input schema / properties / year / examplesAdded value: +[ + 1972 +]
- Changed
filmrightsproof.trace_public_rights7 fields changed- added
Input schema / descriptionAdded value: +"Identify a film, television title, or underlying creative work for bounded U.S. Copyright Office public-record research. Title is required; creator, year, and workType are disambiguation hints; limit only bounds returned or inspected candidates." - added
Input schema / examplesAdded value: +[ + { + "limit": 10, + "title": "The Godfather", + "workType": "motion picture", + "year": 1972 + }, + { + "creator": "Frank Herbert", + "limit": 10, + "title": "Dune", + "workType": "book" + } +] - added
Input schema / properties / creator / examplesAdded value: +[ + "Francis Ford Coppola" +] - added
Input schema / properties / limit / examplesAdded value: +[ + 10 +] - added
Input schema / properties / title / examplesAdded value: +[ + "The Godfather" +] - added
Input schema / properties / workType / examplesAdded value: +[ + "motion picture" +] - added
Input schema / properties / year / examplesAdded value: +[ + 1972 +]
2 tool updates
- Changed
filmrightsproof.search_public_records5 fields changed- added
Input schema / properties / creator / descriptionAdded value: +"Optional creator, author, writer, director, producer, or other credited name used to disambiguate similarly titled works." - added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of candidate public-record matches to return or inspect." - added
Input schema / properties / title / descriptionAdded value: +"Film, television, or underlying creative-work title to search in U.S. Copyright Office public records." - added
Input schema / properties / workType / descriptionAdded value: +"Optional work-type hint, such as motion picture, television, screenplay, book, or other underlying creative work." - added
Input schema / properties / year / descriptionAdded value: +"Optional release, publication, creation, or registration year used to narrow candidate matches."
- Changed
filmrightsproof.trace_public_rights5 fields changed- added
Input schema / properties / creator / descriptionAdded value: +"Optional creator, author, writer, director, producer, or other credited name used to disambiguate similarly titled works." - added
Input schema / properties / limit / descriptionAdded value: +"Maximum number of candidate public-record matches to return or inspect." - added
Input schema / properties / title / descriptionAdded value: +"Film, television, or underlying creative-work title to search in U.S. Copyright Office public records." - added
Input schema / properties / workType / descriptionAdded value: +"Optional work-type hint, such as motion picture, television, screenplay, book, or other underlying creative work." - added
Input schema / properties / year / descriptionAdded value: +"Optional release, publication, creation, or registration year used to narrow candidate matches."
2 tool updates
- Changed
filmrightsproof.search_public_records1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "candidates": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "publicationYear": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "reasons": { + "items": { + "type": "string" + }, + "type": "array" + }, + "registrationNumber": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "score": { + "type": "number" + }, + "title": { + "type": "string" + }, + "workType": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "title" + ], + "type": "object" + }, + "type": "array" + }, + "coverage": { + "type": "object" + }, + "evidenceGaps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "freshness": { + "additionalProperties": true, + "properties": { + "currentEvidenceUsable": { + "type": "boolean" + }, + "currentLookupAttempted": { + "type": "boolean" + }, + "currentLookupVerified": { + "description": "Narrow compatibility summary. True only when the bounded current lookup completed without normalization rejection; it does not mean exhaustive coverage.", + "type": "boolean" + }, + "error": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "evidenceStatus": { + "enum": [ + "usable", + "usable_no_qualifying_match", + "partial", + "partial_no_qualifying_match", + "zero_hits", + "normalization_failed", + "unavailable" + ] + }, + "fallback": { + "type": "object" + }, + "observation": { + "type": "object" + }, + "observedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "parsingStatus": { + "enum": [ + "succeeded", + "failed", + "not_completed", + "not_attempted" + ] + }, + "queryCompletedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "queryStartedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": "filmrightsproof-freshness.v2" + }, + "searchScope": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "null" + } + ] + }, + "sourceMix": { + "type": "object" + }, + "transportStatus": { + "enum": [ + "succeeded", + "failed", + "not_attempted" + ] + } + }, + "required": [ + "schemaVersion", + "currentLookupAttempted", + "currentLookupVerified", + "currentEvidenceUsable", + "transportStatus", + "parsingStatus", + "evidenceStatus", + "observation", + "fallback" + ], + "type": "object" + }, + "legalNotice": { + "type": "string" + }, + "query": { + "type": "object" + }, + "schemaVersion": { + "const": "public-record-search.v1" + } + }, + "required": [ + "schemaVersion", + "query", + "candidates", + "coverage", + "freshness", + "evidenceGaps", + "legalNotice" + ], + "type": "object" +}
- Changed
filmrightsproof.trace_public_rights1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": true, + "properties": { + "candidates": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "publicationYear": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "reasons": { + "items": { + "type": "string" + }, + "type": "array" + }, + "registrationNumber": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "score": { + "type": "number" + }, + "title": { + "type": "string" + }, + "workType": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "title" + ], + "type": "object" + }, + "type": "array" + }, + "canonicalRequest": { + "type": "object" + }, + "corpusVersion": { + "type": "integer" + }, + "coverage": { + "type": "object" + }, + "dossierId": { + "type": "string" + }, + "edges": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "sourceSemantics": { + "type": "object" + }, + "support": { + "items": { + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "type": { + "type": "string" + } + }, + "required": [ + "id", + "type", + "support", + "sourceSemantics" + ], + "type": "object" + }, + "type": "array" + }, + "evidence": { + "additionalProperties": false, + "properties": { + "cancellations": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + }, + "recordations": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + }, + "registrations": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + }, + "renewals": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + }, + "terminations": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "registrations", + "renewals", + "recordations", + "terminations", + "cancellations" + ], + "type": "object" + }, + "evidenceGaps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "freshness": { + "additionalProperties": true, + "properties": { + "currentEvidenceUsable": { + "type": "boolean" + }, + "currentLookupAttempted": { + "type": "boolean" + }, + "currentLookupVerified": { + "description": "Narrow compatibility summary. True only when the bounded current lookup completed without normalization rejection; it does not mean exhaustive coverage.", + "type": "boolean" + }, + "error": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "evidenceStatus": { + "enum": [ + "usable", + "usable_no_qualifying_match", + "partial", + "partial_no_qualifying_match", + "zero_hits", + "normalization_failed", + "unavailable" + ] + }, + "fallback": { + "type": "object" + }, + "observation": { + "type": "object" + }, + "observedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "parsingStatus": { + "enum": [ + "succeeded", + "failed", + "not_completed", + "not_attempted" + ] + }, + "queryCompletedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "queryStartedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": "filmrightsproof-freshness.v2" + }, + "searchScope": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "null" + } + ] + }, + "sourceMix": { + "type": "object" + }, + "transportStatus": { + "enum": [ + "succeeded", + "failed", + "not_attempted" + ] + } + }, + "required": [ + "schemaVersion", + "currentLookupAttempted", + "currentLookupVerified", + "currentEvidenceUsable", + "transportStatus", + "parsingStatus", + "evidenceStatus", + "observation", + "fallback" + ], + "type": "object" + }, + "legalNotice": { + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "type": "array" + }, + "methods": { + "type": "object" + }, + "nonInferences": { + "items": { + "type": "string" + }, + "type": "array" + }, + "normalizedParties": { + "items": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "roles": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "type": "array" + }, + "operation": { + "const": "trace_public_rights" + }, + "provenance": { + "items": { + "type": "object" + }, + "type": "array" + }, + "query": { + "type": "object" + }, + "records": { + "items": { + "additionalProperties": true, + "properties": { + "id": { + "type": "string" + }, + "recordType": { + "type": "string" + }, + "source": { + "type": "object" + }, + "title": { + "type": "string" + } + }, + "required": [ + "id", + "recordType", + "title", + "source" + ], + "type": "object" + }, + "type": "array" + }, + "resolvedWork": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": "trace-public-rights.v1" + }, + "state": { + "type": "object" + }, + "status": { + "enum": [ + "recorded_lineage_found", + "partial_recorded_lineage", + "ambiguous_work_identity", + "no_match_within_search_scope", + "insufficient_public_evidence" + ] + }, + "traceId": { + "type": "string" + }, + "unresolvedQuestions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "operation", + "traceId", + "dossierId", + "status", + "query", + "canonicalRequest", + "candidates", + "records", + "evidence", + "normalizedParties", + "edges", + "provenance", + "freshness", + "coverage", + "unresolvedQuestions", + "nonInferences", + "evidenceGaps", + "limitations", + "methods", + "state", + "legalNotice" + ], + "type": "object" +}
2 tool updates
- First observed
filmrightsproof.search_public_records - First observed
filmrightsproof.trace_public_rights
Related MCP Connectors
Film/TV public-record rights intelligence for AI agents with provenance and bounded verification.
US public-records intelligence for AI agents — companies, SEC, courts, spending, licenses.
Licensed, rights-cleared content for AI agents - verifiable license keys + EU AI Act attestation.
Provenance-backed EU and UK legislation for AI agents, addressable to the individual provision.
Related MCP Servers
- AlicenseAqualityAmaintenanceLicensed, rights-cleared content for AI agents, 17 tools to discover, license, retrieve, and verify expert content with on-chain proof and EU AI Act Article 53 support.8272 npm1MIT
- AlicenseAqualityBmaintenanceProvenance-first web access for AI agents, delivering clean content with verifiable source metadata and SEC EDGAR financial data.841 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to query cryptographically verified facts with zero-knowledge proofs, selective disclosure, and tamper-evident provenance.50 npm1Apache 2.0
- AlicenseAqualityBmaintenanceAI agent provenance, trust, and auditability layer. VERITAS multi-gate scoring, Cortex approval gates, S.E.A.L. hash-chain audit ledger, and semantic RAG with cryptographic provenance tracking for every decision an agent makes.275MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.