classic-nlp-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_capabilitiesA | Report which NLP engines are installed and which capabilities each language supports. Always call this first if unsure what is available. |
| tokenizeA | Segment text into tokens with exact character offsets. Chinese: jieba by default; English: spaCy when installed, then stanza,
then a regex fallback. |
| pos_tagA | Part-of-speech tagging (+ lemma with stanza). Chinese: jieba.posseg;
English: spaCy then stanza; other languages: stanza. |
| nerA | Named entity recognition with exact spans. Chinese: stanza statistical NER when installed (recommended), otherwise
the jieba POS-tag heuristic (nr/ns/nt -> PER/LOC/ORG). English: spaCy,
then stanza. Other languages: stanza. |
| keyword_extractB | Keyword extraction with weights. Chinese: jieba TF-IDF or TextRank. English: word-frequency fallback (honest, cheap, deterministic). |
| sent_splitA | Sentence segmentation with offsets - the foundation for RAG chunking.
Chinese: jieba + rule regex; English: spaCy sents by default, or the
zero-dependency regex fallback with |
| openie_triplesA | Open Information Extraction: (subject, predicate, object) triples. Engine priority for English (
Chinese: naive (noun, verb, noun) pattern mining over jieba POS (confidence 0.35 - draft quality by design). CoreNLP's OpenIE is English-focused. Every triple carries the source character span and is a candidate for downstream KG normalization - not a fact. |
| constituency_parseB | Phrase-structure (constituency) parses via stanza - exclusive to the Stanford stack among the wrapped engines. Returns bracketed trees plus the set of node labels per sentence. Requires the language's stanza models with the 'constituency' processor. |
| dependency_parseA | Neural/statistical dependency parse: head, relation label, POS and morphological features per word (universal-dependencies for stanza). English: spaCy (en_core_web) by default, stanza also available. Chinese: stanza only - spaCy zh labels are coarse; jieba cannot parse. This is the entry point for syntax-aware extraction: definitional clauses, subject/object probing, syntactic patterns - far above keyword statistics. |
| noun_phrasesB | Extract base noun phrases (chunking) with spans and syntactic roots. English: spaCy's statistical chunker. Chinese: jieba rule-merge of consecutive noun tokens (a heuristic, honestly labeled), or the stanza engine via dependency_parse for higher quality. Noun phrases are the natural topic units - cleaner than raw keyword statistics. |
| sentimentA | Sentiment classification with pretrained models. English: NLTK VADER (valence lexicon, compound score). Chinese: stanza neural classifier (REN model) with per-sentence labels - a trained model, not a lexicon lookup. Use auto to get the best installed engine. |
| seme_lookupB | HowNet sememe (义原) lookup for a Chinese word via OpenHowNet. Fine-grained interpretable lexical semantics - useful for entity typing and sememe-based similarity. |
| wordnet_lookupB | WordNet synsets, definitions, synonyms and hypernyms for an English word via NLTK. |
| wordnet_similarityB | Best WordNet path similarity between two English words via NLTK. |
| annotate_fullA | Run every available capability in one call and merge the results - one round trip instead of seven. Includes tokenize/pos/ner/keywords/sent_split/openie; adds
seme_lookup/wordnet lookups when |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool targets a clearly distinct NLP capability, and the descriptions actively distinguish the near-neighbors (e.g. dependency_parse vs constituency_parse, noun_phrases vs keyword_extract vs openie_triples). The only mild overlap is between the individual analyzers and annotate_full, which is explicitly framed as an aggregator.
All names are snake_case, which is consistent, and most combine a domain noun with an operation (pos_tag, sent_split, seme_lookup, wordnet_similarity). A few deviate from a strict verb_noun pattern (plain 'tokenize', 'ner', 'sentiment' as bare capability names), but the set is still highly predictable.
Fifteen tools sit squarely in the well-scoped range for an NLP toolkit, and each maps to a distinct capability (plus one legitimate aggregate). Nothing feels redundant or padded.
The surface covers a full classic NLP pipeline: tokenization, POS/lemma, NER, keywords, sentence splitting, constituency/dependency parsing, noun phrases, OpenIE, sentiment, and lexical semantics, plus a batch aggregator. Minor gaps remain (no standalone language detection, coreference, or summarization/classification beyond sentiment), but core workflows are covered.