Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OJS_JOURNALNoSkrót czasopisma — pomija parametr czasopismo przy każdym wywołaniu.
OJS_BASE_URLYesAdres instancji OJS, dokładnie taki jak w przeglądarce.
OJS_PASSWORDNoHasło do OJS.
OJS_USERNAMENoLogin do OJS.
OJS_API_TOKENNoToken z profilu użytkownika. Ma pierwszeństwo przed loginem i hasłem.
OJS_ALLOW_WRITESNoUstaw 1, aby odsłonić narzędzia modyfikujące dane czasopisma (domyślnie ukryte).
OJS_MCP_TRANSPORTNoTryb transportu MCP (np. stdio, HTTP).

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
list_journalsA

List the journals visible to the current credentials.

Returns a list of {"path", "name"} objects. path is the value to pass as the journal parameter in the other tools.

whoamiB

Check whether the current credentials work, and who you are.

API token: OJS has no identity endpoint for a token — this tool reports ONLY whether authentication works at all, not who the user is (identity in the response is then None).

Login and password: identity carries the logged-in user's real data (id, username, fullName, roles, role_names).

search_submissionsB

Find submissions (articles) in a journal.

status: queued, published, declined, scheduled. stage: submission, external_review, editing, production. section: a list of section IDs (from list_sections). inactive_days: only submissions inactive for N days. sort_by: datePublished, dateSubmitted, lastActivity, lastModified, sequence, title. descending=True sorts descending (default). Dates in YYYY-MM-DD format. The date filter only applies to already-fetched pages of the result — see the date_filtering_incomplete field in the response.

get_submissionA

Fetch the details of one submission (article) by its ID.

Includes a trimmed list of its publications (versions). The full content of one version is returned by get_publication, and review rounds by get_submission_reviews.

get_publicationA

Fetch one version (publication) of a submission — full details.

A submission may have several versions (successive revisions after review) — find the publication ID in the result of get_submission. Unlike the trimmed list, this also returns the abstract, the full author list, keywords, the DOI, the page/ article number, and galleys — this version's ready-made files (PDF, HTML, etc.) with public links.

list_submission_filesA

Fetch the list of files attached to a submission (all stages).

Every file has file_stage_name alongside the numeric stage code, e.g. review_file, copyedit, final, body_text.

get_submission_reviewsA

Fetch the review rounds and reviewer assignments for a submission.

Returns review_rounds (this submission's successive rounds) and review_assignments (who is reviewing, at which stage, with what result).

list_issuesA

Find a journal's issues.

published_only=True restricts to already-published issues, False to those still being prepared; omitting it returns both kinds. sort_by: datePublished, lastModified, seq, publishedIssues, unpublishedIssues, shelf. OJS decides the sort direction itself for each of these values — it cannot be reversed here.

get_current_issueA

Fetch the journal's current issue (the one featured on the home page).

Returns issue: None if the journal does not yet have a current issue set.

get_issueB

Fetch one issue of a journal by its ID.

list_sectionsB

Find a journal's sections, e.g. "Articles", "Reviews".

active_only=True skips disabled sections; omitting it returns all of them.

search_usersC

Find a journal's users by name/email, status, and role.

status: active (default), disabled, all. role: site_admin, manager, sub_editor, reviewer, assistant, author, reader, subscription_manager.

list_reviewersB

Find a journal's reviewers together with their review statistics.

status: active (default), disabled, all. Returns, among others, the count of active/completed/declined reviews, the average review completion time in days, and the reviewer's rating.

publication_statsA

Publication view statistics — a ranking or a time series.

timeline=False (default): a ranking of publications by view count. timeline=True: the sum of views over time; interval: day or month. Dates date_from/date_to in YYYY-MM-DD format.

editorial_statsB

Aggregate editorial statistics for a journal (submission count, decisions, time to first decision, etc.) as a list of key/value pairs.

Dates date_from/date_to in YYYY-MM-DD format narrow the period; without them OJS computes statistics from the journal's inception.

list_doisC

Find the DOIs registered for a journal.

status: unregistered, submitted, registered, error, stale.

ojs_requestA

Call any OJS REST API endpoint outside the ready-made tools.

path is relative to api/v1, e.g. 'submissions/12/files'. The ojs://endpoints resource returns the list of endpoints. journal="index" reaches site-level endpoints. Without OJS_ALLOW_WRITES, only read requests (GET/HEAD) are allowed. With the flag — this tool does NOT enforce the field list from edit_publication_metadata; the only write safeguard here is the OJS_ALLOW_WRITES flag itself.

Prompts

Interactive templates invoked by user choice

NameDescription
editorial_overviewState of in-progress submissions broken down by stage, plus the state of the current issue.
stuck_in_reviewSubmissions stuck in external review with no movement for N days.
summarize_issueAn issue's contents assembled into an editorial note.

Resources

Contextual data attached and managed by the client

NameDescription
endpointsA compact list of all OJS REST API endpoints (method, path, parameters, a short description). A reference point for the `ojs_request` tool for endpoints outside the ready-made tool list — check the exact path and parameters here before using them.
journalsThe list of journals visible to the current credentials, as {"path", "name"} objects — "path" is the value of the `journal` parameter in the other tools and prompts.

TDQS

A3.6/5.0

Scored across 17 tools

Disambiguation5/5

Each tool targets a distinct resource or action: journals, submissions, publications, files, reviews, issues, sections, users, reviewers, stats, and DOIs are clearly separated. The only potential overlap (get_submission vs get_publication) is well-defined as different granularities of the same object.

Naming Consistency5/5

Tool names follow a consistent snake_case verb_noun pattern: list_*, get_*, search_* for actions, with the exceptions of whoami (a standard idiom) and the two *_stats nouns, which are still predictable. No mixed conventions.

Tool Count5/5

17 tools is appropriate for a complex domain like OJS, covering journal management, submissions, publications, files, reviews, issues, users, reviewers, statistics, and DOIs. Each tool earns its place, and the set is neither too thin nor bloated.

Completeness3/5

The read side is thorough (listing, fetching, searching, stats), but there are no dedicated create/update/delete tools for submissions, issues, sections, or users. Write operations are only possible via the generic ojs_request tool, which requires a special flag and is not a first-class tool, leaving a notable gap for full lifecycle management.

Maintenance

ActivityNo data
ResponsivenessNo issues