Skip to main content
Glama
masa-med-ai

typesafe-screening-mcp

by masa-med-ai

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NCBI_API_KEYNoOptional NCBI API key for higher E-utilities rate limits.
TYPESAFE_MODELNoThe TypeSafe model to use. Defaults to 'jev-latest'.jev-latest
TYPESAFE_API_KEYNoYour TypeSafe API key. If not set, the server will attempt to read it from the macOS keychain (service name 'typesafe-api-key').

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_and_screenA

Run a PubMed search and judge every hit against the user's query / clinical question (CQ).

Search, abstract retrieval and judgement all happen server-side; only the decisions come back. Use a broad, sensitive query - screening is cheap (hundreds of articles in seconds) - and let the judgement do the narrowing.

Args: pubmed_query: PubMed search expression (field tags, MeSH, boolean operators). Put date, language and numeric limits here, e.g. ("2021/01/01"[dp] : "3000"[dp]); Jev is unreliable with numbers and dates. research_question: The user's query or CQ, as ONE self-contained sentence in ENGLISH (Jev is most accurate in English and reads literally - translate Japanese input, spell out abbreviations, avoid negations/double negatives). max_results: Screen at most this many hits, taken in PubMed relevance order (max 5000). Check "total_hits" against "screened" in the result to see whether hits were left out. inclusion_criteria: Optional extra criteria, each a short positive English statement (e.g. "The study is a randomized controlled trial"). An unmet criterion demotes include to maybe; it never excludes, since abstracts often omit such details. exclusion_criteria: Optional; a confidently met criterion excludes the article (e.g. "The article is a case report"). include_threshold: match probability at or above which an article is included. exclude_threshold: match probability at or below which an article is excluded. return_decisions: Which groups to list in "results". Default ["include", "maybe", "error"]; "counts" always covers every article. Add "exclude" only for small batches. save_full_results_to: Optional file path (.json). Every result, including excluded articles, is written there in full detail. Fails if the file already exists. detailed: False (default) returns one line per article, grouped by decision: "PMID | match | title". True returns every probability per article (much longer).

screen_pmidsA

Judge whether the given PubMed articles match the user's query / clinical question (CQ).

Use this when you already have PMIDs; use search_and_screen to search and judge in one step. Titles and abstracts are fetched server-side from PubMed, so abstracts stay out of the conversation. Each article gets include / maybe / exclude plus the underlying probabilities, sorted by match probability.

Args: research_question: The user's query or CQ, as ONE self-contained sentence in ENGLISH (Jev is most accurate in English and reads literally - translate Japanese input, spell out abbreviations, avoid negations/double negatives). pmids: PubMed IDs to screen. inclusion_criteria: Optional extra criteria, each a short positive English statement (e.g. "The study is a randomized controlled trial"). An unmet criterion demotes include to maybe; it never excludes, since abstracts often omit such details. exclusion_criteria: Optional; a confidently met criterion excludes the article (e.g. "The article is a case report"). include_threshold: match probability at or above which an article is included. exclude_threshold: match probability at or below which an article is excluded. return_decisions: Which groups to list in "results". Default ["include", "maybe", "error"]; "counts" always covers every article. Add "exclude" only for small batches. save_full_results_to: Optional file path (.json). Every result, including excluded articles, is written there in full detail. Fails if the file already exists. detailed: False (default) returns one line per article, grouped by decision: "PMID | match | title". True returns every probability per article (much longer).

screen_recordsB

Same as screen_pmids, for articles that are not in PubMed (CiNii, arXiv, Embase exports...).

Args: research_question: The user's query or CQ as one self-contained English sentence. records: List of {"id": str, "title": str, "abstract": str}. English text works best. Other arguments: see screen_pmids.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation4/5

Each tool has a distinct input path: search-then-screen, screen specific PMIDs, and screen arbitrary non-PubMed records. screen_pmids and screen_records are similar in action but clearly separated by input type, so an agent can select correctly with the descriptions.

Naming Consistency4/5

Tools follow a mostly consistent verb-first snake_case pattern (screen_pmids, screen_records), with search_and_screen as the one oddity using a compound verb form. The naming is predictable and readable despite this minor deviation.

Tool Count5/5

Three tools is a well-scoped set for a narrow screening workflow: one search+screening tool and two variants for different input sources. Each tool earns its place and there is no bloat.

Completeness4/5

The tools cover the full screening pipeline: searching PubMed, screening known PMIDs, and screening external records. A minor gap is the lack of a raw article/metadata retrieval tool, but it is not essential for the stated screening purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues