Skip to main content
Glama
nebula-technological-innovation

AetherTech MCP Server

AetherTech MCP Server

A production-ready TypeScript MCP (Model Context Protocol) server with comprehensive tools and type safety.

Features

  • Text Analysis Tools: Analyze, count words, detect sentiment, extract keywords

  • Key-Value Store: In-memory storage for temporary data

  • Resources: System info and dynamic store access

  • Dual Transport: Support for both stdio and HTTP (Streamable HTTP)

  • Type Safety: Full TypeScript with Zod validation

  • Error Handling: Comprehensive try-catch with meaningful error messages

Related MCP server: @zuupee/mcp-server

Installation

cd packages/mcp-server
npm install

Running the Server

Option 1: Stdio Transport (Default)

# Development mode
npm run dev:stdio

# Production mode
npm run start:stdio

Option 2: HTTP Transport

# Development mode
npm run dev:http

# Production mode
npm run start:http

# With custom port
PORT=8080 npm run start:http

The HTTP server runs at http://localhost:3000/mcp (or custom PORT).

Available Tools

text_analysis

Analyze text with various operations.

Input Schema:

{
  text: string;           // Required, 1-100000 chars
  operation: "analyze" | "word_count" | "sentiment" | "extract_keywords"
}

Example:

{
  "name": "text_analysis",
  "arguments": {
    "text": "This is an amazing product! I love it so much.",
    "operation": "sentiment"
  }
}

word_count

Count words in text with statistics.

Input Schema:

{
  text: string;
  includeWhitespace?: boolean;  // Default: false
}

key_value_store

In-memory key-value storage.

Input Schema:

{
  action: "get" | "set" | "delete" | "list";
  key?: string;
  value?: string;
}

Examples:

Set a value:

{
  "name": "key_value_store",
  "arguments": {
    "action": "set",
    "key": "user:1",
    "value": "John Doe"
  }
}

Get a value:

{
  "name": "key_value_store",
  "arguments": {
    "action": "get",
    "key": "user:1"
  }
}

List all:

{
  "name": "key_value_store",
  "arguments": {
    "action": "list"
  }
}

Testing with MCP Inspector

npm run inspector

For HTTP transport:

npx @modelcontextprotocol/inspector http://localhost:3000/mcp

Configuration

Environment Variable

Description

Default

PORT

HTTP server port

3000

Building

npm run build

Type Checking

npm run typecheck

Troubleshooting

Server won't start

  • Ensure Node.js 18+ is installed: node --version

  • Verify dependencies are installed: npm install

HTTP transport not connecting

  • Check the port is not in use: lsof -i :3000

  • Verify firewall settings

  • Try a different port: PORT=8080 npm run start:http

Tools not working

  • Run MCP Inspector to verify connection

  • Check server logs for errors

  • Ensure valid JSON is passed to tools

Available Tools

4 tools
key_value_storeKey-Value StoreA

Simple in-memory key-value store for temporary data. Supports get, set, delete, and list operations. Data persists while the server is running.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNo
valueNo
actionYes

TDQS

A3.6/5.0
Behavior3/5

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

No annotations provided. Description discloses in-memory, temporary nature and server-lifetime persistence, but does not cover thread safety, size limits, concurrency, or error handling.

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?

Two concise sentences with no unnecessary details, directly conveying the core functionality.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Provides essential context for a simple tool but lacks parameter-action dependencies and error behavior; moderately complete given no output schema and basic requirements.

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

Parameters2/5

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

Schema has 0% description coverage. Description only lists operations, offering minimal extra meaning beyond the schema; does not clarify which parameters are required for each action or constraints on key/value.

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 clearly identifies the tool as a simple in-memory key-value store with explicit supported operations (get, set, delete, list). It distinguishes well from sibling tools which are text analysis, word count, and mDNS discovery.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states 'for temporary data' and 'persists while the server is running,' implying ephemeral use, but lacks explicit when-to-use or when-not-to-use guidance nor mentions alternatives.

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

mdns_discoverymDNS Service DiscoveryB

Discover services on the local network using mDNS/Bonjour. Finds services like HTTP, HTTPS, MCP servers, and other network services.

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceTypeNohttp

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states the basic function (discovery) without detailing network traffic, permissions needed, side effects, or performance implications. This is insufficient for safe and effective agent use.

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 extremely concise, consisting of two sentences with no extraneous information. Every word contributes to conveying the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has one optional parameter and no output schema. The description does not mention what the tool returns (e.g., list of service names/addresses), error handling, or behavior when no services are found. Given the simplicity, more detail is needed for an agent to use it reliably.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must explain the 'serviceType' parameter. The description lists examples (HTTP, HTTPS, MCP) but does not explicitly state that the parameter controls the service type filter, nor does it clarify valid values or format. The 'default' of 'http' is not noted.

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 clearly states the action (discover services) and the technology (mDNS/Bonjour) with concrete examples (HTTP, HTTPS, MCP servers). It distinguishes well from unrelated sibling tools like text_analysis, word_count, and key_value_store.

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 on when to use this tool or when not to. There is no mention of prerequisites, alternatives, or context such as network requirements. The description implies use cases but lacks explicit direction.

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

text_analysisText AnalysisC

Analyze text with various operations: basic analysis, word counting, sentiment detection, and keyword extraction. Useful for processing and understanding text content.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
operationYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of disclosing behavioral traits. It lists the operations but does not state whether the tool is read-only, what side effects it has, or any rate limits. The behavioral transparency is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences with no redundant information. It is front-loaded with the tool's purpose and lists operations briefly. However, the structure could be improved by separating usage guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, annotations, and the presence of a closely related sibling tool, the description is insufficiently complete. It fails to explain return values, prerequisites, or when to use this tool instead of 'word_count'. The description covers only the basic purpose.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must add meaning. It mentions the operations in prose, which aligns with the 'operation' enum, but adds no additional context about the 'text' parameter or any constraints beyond what the schema provides (e.g., max length is not mentioned). The description adds marginal value.

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 clearly states the tool's purpose ('Analyze text with various operations') and lists the available operations, which provides a specific verb+resource combination. However, it does not differentiate from the sibling tool 'word_count', which likely performs the same operation, missing an opportunity to clarify when to use this tool over the alternative.

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 offers no explicit guidance on when to use this tool versus alternatives. It merely states it is 'useful for processing and understanding text content,' which is too generic and fails to address exclusion criteria or when to prefer a sibling tool like 'word_count'.

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

word_countWord CounterC

Count words in text with optional whitespace handling. Provides detailed statistics about text content.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
includeWhitespaceNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It mentions optional whitespace handling and detailed statistics but does not specify what statistics are provided (e.g., character count, sentence count). Missing behavioral details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff. First sentence states main action, second adds value. Could be slightly more structured but efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Description lacks completeness: 'detailed statistics' undefined, no output schema. Agent cannot fully understand what counts or returned, given sibling text_analysis overlaps.

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

Parameters2/5

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

Schema coverage is 0%, so description should elaborate parameters. It only relates 'includeWhitespace' to whitespace handling but doesn't explain 'text' parameter's format or constraints. Inadequate for a 2-param tool.

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 uses specific verb 'Count' and resource 'words in text', clearly stating the primary function. It mentions 'detailed statistics' hinting at additional outputs, and differentiates from siblings like text_analysis by focusing on word count.

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 on when to use or not use this tool versus alternatives like text_analysis. No prerequisites or context provided.

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. Dates show when Glama detected each change.

  1. 4 tool updatesv1.0.0
    • First observedkey_value_store
    • First observedmdns_discovery
    • First observedtext_analysis
    • First observedword_count

TDQS

B3/5.0

Scored across 4 tools

Disambiguation3/5

Most tools are distinct, but word_count overlaps with text_analysis which already includes word counting. This could lead to confusion about which to use.

Naming Consistency4/5

All tools use snake_case, but the grammatical structure varies (noun_noun vs abbreviation_noun). No verb_noun pattern, but consistent casing and underscore use.

Tool Count3/5

Four tools is borderline low for a server that covers three unrelated domains (text, storage, network). It feels thin but not extremely so.

Completeness3/5

Each tool provides basic functionality for its domain, but there are gaps (e.g., no detail resolution for mDNS, redundant word_count tool). Overall surface is shallow.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nebula-technological-innovation/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server