CSL MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PYTHONPATH | Yes | Path to the src directory containing the csl_mcp module (e.g., D:/xm/CSL/src) | |
| CSL_DB_PATH | Yes | Path to the SQLite database file (e.g., D:/xm/CSL/data/csl.sqlite) |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_papersC | Search CSL papers by title, abstract and keywords. |
| get_paperB | Get one CSL paper by id. |
| list_categoriesA | List CSL categories with counts. |
| list_disciplinesC | List CSL disciplines with counts. Optionally filter by category. |
| get_dataset_statisticsA | Get CSL dataset statistics from the local SQLite database. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| dataset_info | Read CSL dataset information. |
TDQS
Scored across 5 tools
Each tool targets a distinct operation: statistics, single paper retrieval, categories, disciplines, and search. No overlap in purpose.
All tools use consistent verb_noun pattern with snake_case (get_, list_, search_). Uniform and predictable.
5 tools is well-scoped for a read-only CSL data server, covering statistics, lookup, listing, and search without overloading.
Covers core read operations (get, search, list) and statistics. Minor gaps like a bulk paper listing are covered by search, so no dead ends for typical queries.