Skip to main content
Glama
jusi-aalto

biz-journals-mcp

by jusi-aalto

biz-journals-mcp

MCP server for generating Scopus ISSN boolean queries based on journal rankings.

Supported Rankings

System

Grades (highest to lowest)

Year

ABDC

A*, A, B, C

2022

AJG

4*, 4, 3, 2, 1

2021

FT50

FT-50

2016

Related MCP server: research-mcp

Installation

npm install -g biz-journals-mcp

Configuration

Add to your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "biz-journals": {
      "command": "npx",
      "args": ["-y", "biz-journals-mcp"]
    }
  }
}

Tools

generate_scopus_query

Generates a Scopus boolean query of ISSN numbers.

Parameters:

  • filters - Array of ranking filters:

    • system - "abdc", "ajg", or "ft50"

    • grade - Target grade (e.g., "A*", "4*", "FT-50")

    • operator - "at_least" (default) or "exactly"

    • fields - Optional array of disciplines to filter by

Example output:

(ISSN(0001-4826) OR ISSN(0361-3682) OR ISSN(0165-4101) OR ISSN(0021-8456))

list_grades

Lists available grades for a ranking system.

list_fields

Lists available fields/disciplines for a ranking system.

Example Queries

Get ABDC A-level or higher journals in Accounting:

{
  "filters": [{
    "system": "abdc",
    "grade": "A",
    "operator": "at_least",
    "fields": ["Accounting"]
  }]
}

Combine rankings (ABDC A* OR AJG 4*):

{
  "filters": [
    { "system": "abdc", "grade": "A*", "operator": "exactly" },
    { "system": "ajg", "grade": "4*", "operator": "exactly" }
  ]
}

License

MIT

Available Tools

3 tools
generate_scopus_queryA

Generate a Scopus boolean query of ISSN numbers based on journal rankings.

Supports three ranking systems:

  • ABDC (Australian Business Deans Council): Grades A*, A, B, C (highest to lowest)

  • AJG (Academic Journal Guide): Grades 4*, 4, 3, 2, 1 (highest to lowest)

  • FT50 (Financial Times 50): Single grade FT-50

Use 'at_least' operator to include a grade and all higher grades (e.g., 'at_least A' includes A* and A). Use 'exactly' operator to include only the specified grade.

Multiple filters are combined with OR logic (union), and duplicate ISSNs are automatically removed.

Example: To get all ABDC A-level or higher journals in Accounting: { "filters": [{ "system": "abdc", "grade": "A", "operator": "at_least", "fields": ["Accounting"] }] }

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesArray of ranking filters to apply (combined with OR logic)

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations present, the description carries the behavioral disclosure burden. It discloses important behavior: OR-logic union across filters, automatic duplicate ISSN removal, and the inclusive/exclusive semantics of operators. It does not mention output format or error behavior, but the core query-generation logic is transparent.

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 organized with a clear purpose statement, concise bullet lists, and a relevant example. Every sentence adds useful information, and the JSON example is an efficient way to communicate the expected input shape.

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 output schema and no annotations, the description covers the ranking systems, grade semantics, operator behavior, filter combination, and duplicate handling. It does not describe the output format, but that is a minor gap given the clear generate-a-query purpose.

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 100%, so the baseline is 3, but the description adds meaningful value by spelling out grade sets per system, the grade-ordering semantics of 'at_least', and how filters combine. The worked example also clarifies the nested filter structure beyond the raw schema.

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 verb and object: 'Generate a Scopus boolean query of ISSN numbers based on journal rankings.' It further clarifies scope by enumerating the three supported ranking systems, which clearly distinguishes this tool from siblings like list_grades and list_fields.

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?

The description gives clear operating context: how to use 'at_least' vs 'exactly', how multiple filters combine, and a complete example. It does not explicitly contrast with sibling tools or state when not to use it, but the purpose is distinct enough that an agent can infer the right scenario.

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

list_fieldsA

List available fields/disciplines for a specific ranking system

ParametersJSON Schema
NameRequiredDescriptionDefault
systemYesThe ranking system to list fields for

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. The verb 'List' implies a non-mutating read operation, which is useful, but the description does not state whether there are any side effects, authentication requirements, pagination behavior, or output conventions. This is adequate but not deeply transparent.

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 a single concise sentence with no filler. The key verb-object pair is front-loaded, and every word contributes meaning.

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?

Given the low complexity—one required enum parameter, no nested objects, no output schema—the description is nearly complete: it states what the tool returns and what input is required. It could mention the return format or sibling alternatives, but those are minor gaps for such a simple tool.

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

Parameters3/5

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

Schema description coverage is 100%: the single required 'system' parameter has an enum and a description ('The ranking system to list fields for'). The tool description adds no new parameter-level meaning beyond restating the scope, so the baseline of 3 applies.

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 is specific: it names the verb 'List' and the resource 'available fields/disciplines' scoped to 'a specific ranking system'. This clearly differentiates it from siblings like generate_scopus_query and list_grades, which target different actions or resources.

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?

No guidance is given about when to use this tool instead of list_grades or generate_scopus_query. The only contextual hint is that it is scoped to a ranking system, but there is no explicit when-to-use or exclusionary language.

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

list_gradesB

List available grades for a specific ranking system

ParametersJSON Schema
NameRequiredDescriptionDefault
systemYesThe ranking system to list grades for

TDQS

B3.4/5.0
Behavior3/5

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

Without annotations, the description carries the behavioral disclosure burden. The verb 'List' implies a read-only operation, and 'available grades' suggests the return value is a set of grade options. However, it does not explicitly state that no side effects occur, nor does it describe response format or ordering.

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 a single, clear sentence with no filler. It front-loads the action and object, making the tool's purpose immediately recognizable.

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 simple tool with one enum-constrained parameter and no output schema, the description is reasonably complete: it identifies the input (ranking system) and the expected result (available grades). It does not elaborate on the exact format of grades, but this is a minor gap for such a targeted list operation.

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

Parameters3/5

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

Schema coverage is 100%, and the only parameter 'system' has an enum and its own description. The description mainly rephrases the parameter's role ('specific ranking system') without adding new semantic detail beyond what the schema already provides.

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 names a specific verb ('List') and resource ('available grades') scoped by 'ranking system', which clearly conveys the tool's purpose. It distinguishes itself from sibling tools like generate_scopus_query and list_fields, though it does not explicitly contrast with list_fields.

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 implies the tool is used when someone needs grades for a ranking system, but it provides no explicit when-to-use guidance or exclusions relative to siblings. There is no mention of when list_fields or generate_scopus_query would be more appropriate.

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. 3 tool updatesv1.0.0
    • First observedgenerate_scopus_query
    • First observedlist_fields
    • First observedlist_grades

TDQS

A4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool performs a distinct function: one generates queries, one lists grades, and one lists fields. There is no semantic overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow the same verb_noun snake_case pattern: generate_scopus_query, list_grades, list_fields. The convention is uniform and predictable.

Tool Count5/5

Three tools is well-scoped for this server's focused purpose. Each tool is necessary and there are no redundant or filler tools.

Completeness5/5

The server covers the full workflow: discover available fields, discover available grades, and generate a Scopus query from those dimensions. The supported ranking systems are documented in the generation tool, so there are no dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    An MCP server for academic literature research that integrates Scopus, CrossRef, OpenAlex, and Unpaywall to search documents, get abstracts, author profiles, citing papers, and open-access PDF links.
    9
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Serves academic conference and journal data via MCP and REST, including CFP deadlines, CCF/CORE/QUALIS rankings, acceptance rates, journal impact factors, and special issues.
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Scopus MCP Server enables researchers to interact with the Scopus database through natural language. It provides tools for searching documents, fetching abstracts, finding author profiles, and viewing citation overviews.
    -