Skip to main content
Glama

corpus

Server Details

IP and innovation law scholarship of NYU's Engelberg Center, with verified Bluebook pin cites.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

TDQS

Score is being calculated.

Available Tools

4 tools
fetchAInspect

Retrieve the full text of an Engelberg Center publication by the id returned from search. Returns id, title, text, url, and metadata (citation, version, and how to cite — including that author-draft page numbers must never be presented as journal pin cites; see metadata.citation_note).

Very long documents (casebooks) are truncated; metadata.truncated is true and fetch_document(document_id, start_chunk=...) pages through the remainder.

Args: id: The document id from a search result

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
textYes
titleYes
metadataYes

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries full behavioral burden and does so well. It discloses the truncation behavior, the metadata.truncated flag, and the citation rule about never presenting author-draft page numbers as journal pin cites. It also lists exact return fields, giving the agent a clear model of the tool's behavior.

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

Conciseness5/5

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

The description is well-structured and front-loaded with the primary action, followed by necessary return-field details, truncation caveats, and an Args section. Every sentence adds useful information without redundancy or fluff.

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

Completeness5/5

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

The output schema covers return value structure, so the description need not restate that. The description adds essential context beyond the schema: truncation behavior, paging via fetch_document, and the citation-note caveat. For a single-parameter, read-style retrieval tool, this is fully complete.

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

Parameters4/5

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

The input schema provides only the type 'string' with no description, and schema coverage is 0%. The description compensates by explaining that id is 'The document id from a search result,' which is the key semantic meaning needed to call the tool correctly. It could add more about expected format, but the source of the id is the critical information and it is present.

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

Purpose5/5

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

The description states a specific verb ('Retrieve') and resource ('full text of an Engelberg Center publication') and clarifies that the id must come from search. It also distinguishes itself from fetch_document, which handles truncated documents, and from search, which produces the id.

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

Usage Guidelines4/5

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

It clearly indicates when to use this tool: after obtaining an id from search, to retrieve the full text. It also provides an explicit alternative for long documents: use fetch_document to page through truncated casebooks. It does not explicitly mention list_documents, but the context is sufficient for an agent to choose correctly.

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

fetch_documentAInspect

Retrieve the text of a specific Engelberg Center publication by document ID. Use after a search() call to get more context around a relevant chunk, or to read a paper in page order.

Long documents are paged: at most max_chunks chunks are returned per call, starting at start_chunk. The response includes total_chunks and next_start_chunk (null when you have reached the end) — pass next_start_chunk back to continue reading.

Returns document metadata (including version: "published" or "author_draft" — see citation_note for how to cite drafts) and text chunks in sequence with page numbers and section headings.

Args: document_id: The document ID returned by search() or list_documents() start_chunk: Zero-based chunk offset to start from (default 0) max_chunks: Maximum chunks to return (default 40, max 100)

ParametersJSON Schema
NameRequiredDescriptionDefault
max_chunksNo
document_idYes
start_chunkNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
chunksYes
documentYes
returnedYes
total_chunksYes
next_start_chunkYes

TDQS

A4.8/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently explains the paging mechanism (max_chunks per call, start_chunk offset, total_chunks and next_start_chunk in the response) and the metadata (including version and citation_note). It does not mention error handling or authentication, but for a read-only retrieval tool this is a strong disclosure of the key behaviors an agent needs to correctly manage long documents.

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

Conciseness5/5

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

The description is well-organized and efficient. It leads with the core purpose, then usage context, then paging, then return content, and finally parameter explanations in a clean list. Every sentence adds necessary information without repetition or filler. The structure makes it easy for an agent to scan and extract the important details.

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

Completeness5/5

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

Given the tool's moderate complexity (paging, metadata, multiple parameters) and the existence of an output schema, the description covers all the essential aspects: how to start, how to continue reading via next_start_chunk, the nature of the returned data, and parameter semantics. It even includes guidance on citing drafts. Nothing an agent needs to successfully use this tool is missing.

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

Parameters5/5

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

The input schema has zero parameter descriptions (schema coverage is 0%), so the description must compensate. It does so thoroughly in the Args section, explaining document_id (source and usage), start_chunk (zero-based offset and default), and max_chunks (default and maximum). This goes beyond the schema's bare defaults, giving the agent the semantic meaning needed to invoke the tool correctly.

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

Purpose5/5

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

The description opens with a specific action and resource: 'Retrieve the text of a specific Engelberg Center publication by document ID.' This clearly distinguishes fetch_document from its siblings: search() locates documents and list_documents() enumerates them, while this tool fetches content for a known ID. The purpose is unambiguous and differentiated.

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

Usage Guidelines5/5

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

Explicitly states when to use the tool: 'Use after a search() call to get more context around a relevant chunk, or to read a paper in page order.' It also references the sibling list_documents() as a source of document_id, giving the agent a clear mental model of the workflow. No exclusions are needed because the tool has a focused role.

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

list_documentsAInspect

List publications from the Engelberg Center on Innovation Law & Policy at NYU Law. Filter by author name, publication type, or cited case.

Publication types: Articles, Books, Chapters, Short Articles, Briefs & Testimony (amicus briefs and congressional testimony by the co-directors), Reports (clinic white papers and policy reports) Directors include the eight Engelberg Center co-directors and affiliated co-authors.

Use to browse available sources before searching, to find all work by a specific author, or to find which publications discuss a specific judicial decision (cites_case) — e.g. cites_case="MercExchange" or cites_case="547 U.S. 388". Results matched on a case include cited_case_matches showing how often each matched case is cited — higher counts mean the case is analyzed, not just cited in passing.

Args: director: Filter by author name (partial match, case-insensitive) publication_type: Filter by type — Articles, Books, Chapters, Short Articles cites_case: Filter to publications citing a case; matches on party names or the reporter citation (partial, case-insensitive)

ParametersJSON Schema
NameRequiredDescriptionDefault
directorNo
cites_caseNo
publication_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
documentsYes

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description does the heavy lifting: it discloses partial/case-insensitive matching, defines the director pool, explains the cited_case_matches semantics, and gives concrete example values. This is rich behavioral context that goes well beyond the bare schema.

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?

The description is fairly long but well organized: purpose, domain context, use cases, examples, then Args. All content contributes, with only a minor redundancy in the publication-type enumerations keeping it from being perfectly tight.

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

Completeness4/5

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

For a tool with no required parameters and an output schema, the definition covers the core invocation needs thoroughly. The one material gap is the ambiguous set of accepted publication_type values; otherwise an agent can call this tool correctly from the description alone.

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

Parameters4/5

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

Schema coverage is 0%, so the description must explain each parameter, and it largely does: matching rules, examples, and allowed type names. The only blemish is that the publication_type argument lists four categories while the prose earlier had mentioned five, leaving it unclear whether Reports and Briefs & Testimony are valid filter values.

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

Purpose5/5

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

The description states a clear verb and resource: 'List publications from the Engelberg Center on Innovation Law & Policy at NYU Law,' and enumerates the three filter dimensions. This immediately distinguishes it from the sibling tools (search, fetch, fetch_document), which are not listing tools.

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

Usage Guidelines4/5

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

It explicitly says to use this tool to browse available sources before searching, to find all work by an author, or to find publications discussing a case. This covers most selection situations, though it never names the search/fetch siblings or says when NOT to use this tool.

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. 4 tool updates
    • First observedfetch
    • First observedfetch_document
    • First observedlist_documents
    • First observedsearch

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources