aether-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@aether-mcpCan you generate a UUID for me?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Aether MCP Server
Warning: This project has not completed a security review and is not suitable for production use. See SECURITY_REVIEW.md for known issues.
A Model Context Protocol (MCP) server providing system utilities, file operations, data tools, a creative idea generator, prompts, and dynamic resources with bearer-token and OAuth 2.0 authentication.
Features
System Tools
system_info — Detailed OS, CPU, memory, and disk information (basic or full report)
File Tools
read_file — Read files with optional line-range support
write_file — Create or overwrite files
list_files — List directory contents with file sizes and timestamps (recursive + filter support)
Utility Tools
generate_uuid — Generate UUIDs (v4) in string, brackets, or URN format
generate_password — Generate secure passwords with customizable character sets
base64_handler — Encode/decode strings to/from base64
json_handler — Pretty-print, minify, list keys, or validate JSON
timestamp_converter — Convert between Unix timestamps and ISO dates; generate current timestamps
Creative Idea Tools
generate_idea — Generate unique business/product/startup ideas by combining random concepts, techniques, and domains
generate_name — Generate brandable names for products, startups, or projects
combine_concepts — Fuse arbitrary concepts, techniques, and domains into creative combinations
MCP Prompts
business_plan — Generate a structured business plan outline
code_review — Return a comprehensive code review checklist
market_analysis — Generate a market analysis framework
product_requirements — Generate a PRD outline
tech_stack_advisor — Recommend a complete technical stack
debug_assistant — A systematic debugging workflow
MCP Resources
system://hostname — System hostname
system://uptime — System uptime, load averages, memory/CPU summary
system://env — Environment variables (sensitive values redacted)
system://cpus — Detailed CPU architecture information
process://info — Current Node.js process information
file:///{path} — Read files within the workspace root (dynamic template resource)
Related MCP server: MCP Complete Implementation Guide
Authentication
Bearer Token (API Key)
Set AETHER_API_KEY to enable simple bearer token authentication for HTTP mode:
AETHER_API_KEY=my-secret AETHER_TRANSPORT=http node dist/index.jsClients send Authorization: Bearer my-secret with requests.
OAuth 2.0
Set AETHER_OAUTH_CLIENT_SECRETS to enable OAuth 2.0 with a self-hosted token endpoint:
AETHER_TRANSPORT=http AETHER_OAUTH_CLIENT_SECRETS='{"my-client":"my-secret"}' \
AETHER_PUBLIC_URL=http://127.0.0.1:3000/mcp node dist/index.jsEndpoints (auto-served when OAuth is enabled):
GET /.well-known/oauth-authorization-server— RFC 8414 authorization server metadataGET /.well-known/oauth-protected-resource/mcp— RFC 9728 protected resource metadataGET /.well-known/jwks.json— JWKS (RS256 signing keys)POST /oauth/token— Token endpoint (client_credentials, authorization_code, refresh_token)POST /oauth/revoke— Token and refresh token revocationPOST /oauth/introspect— Token introspectionPOST /oauth/register— Dynamic client registrationGET /health— Health check endpoint
Token endpoint (client credentials):
curl -X POST http://127.0.0.1:3000/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=my-client&client_secret=my-secret&scope=mcp"Returns a JWT access token plus a refresh token:
{
"access_token": "...",
"token_type": "Bearer",
"issued_token_type": "urn:ietf:params:oauth:token-type:jwt",
"expires_in": 3600,
"scope": "mcp",
"refresh_token": "..."
}Refresh token (rotate access tokens without re-authenticating):
curl -X POST http://127.0.0.1:3000/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=refresh_token&refresh_token=...&client_id=my-client"Authorization code flow with PKCE:
# 1. Get authorization code
open "http://127.0.0.1:3000/oauth/authorize?response_type=code&client_id=my-client&redirect_uri=http://127.0.0.1:3000/callback&code_challenge=abc123&code_challenge_method=S256"
# 2. Exchange code for token
curl -X POST http://127.0.0.1:3000/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code&code=...&code_verifier=abc123&client_id=my-client&redirect_uri=http://127.0.0.1:3000/callback"Use the token in the Authorization: Bearer <token> header for MCP requests.
Transports
stdio (local)
Default mode. Connects as a subprocess — used by Claude Desktop, Claude Code, Cursor, etc.
HTTP (remote)
Set AETHER_TRANSPORT=http to enable Streamable HTTP transport.
AETHER_TRANSPORT=http AETHER_PORT=3000 node dist/index.js
AETHER_TRANSPORT=http AETHER_ENABLE_SESSIONS=true node dist/index.js # statefulRegister with http://localhost:3000/mcp in MCP clients that support HTTP/SSE transport.
Environment Variables
Variable | Default | Description |
|
| Transport mode: |
|
| HTTP server port |
|
| HTTP server host |
| — | Bearer token for API key auth mode |
| — | JSON map of |
|
| Public URL for OAuth discovery |
|
| Max requests per minute per client IP |
|
| Max request body size in KB (default 1MB) |
|
| Allowed CORS origins |
|
| Require PKCE for authorization code flow |
|
| Enable stateful sessions |
Security
This project is a work in progress and has not completed a security audit. Known issues are documented in SECURITY_REVIEW.md. Do not expose this server to the public internet or use it with sensitive data until the issues identified in that review have been addressed.
Prerequisites
Node.js 20+
Installation & Usage
Local Development
npm install
npm run dev # stdio mode
npm run dev:http # HTTP mode
npm run build # compile TypeScript
npm start # stdio mode (built)
npm run start:http # HTTP mode (built)Connect to an MCP Client
Claude Desktop / Claude Code (stdio mode):
{ "mcpServers": { "aether": { "command": "node", "args": ["/PATH/TO/aether-mcp/dist/index.js"] } } }Claude Code HTTP mode:
claude mcp add aether --transport http http://localhost:3000/mcpTesting
Unit tests (vitest + InMemoryTransport):
npm test # watch mode
npm run test:run # single runMCP Inspector:
npx @modelcontextprotocol/inspector node dist/index.jsOpen http://localhost:6274 to interact with all tools, resources, and prompts in a web UI.
Project Structure
aether-mcp/
├── package.json
├── tsconfig.json
├── vitest.config.ts
├── README.md
├── SECURITY_REVIEW.md
├── .gitignore
└── src/
├── index.ts # Entry point: transport selection (stdio or HTTP), HTTP server with auth
├── server.ts # Server factory — registers all tools, resources, and prompts
├── resources.ts # MCP resource registrations (system, process, file template)
├── auth.ts # Auth: JWT tokens, refresh tokens, bearer auth gate
├── oauth.ts # OAuth 2.0: discovery, token/revoke/introspect/register endpoints, PKCE
├── rateLimit.ts # Rate limiter: in-memory store with per-IP tracking
├── prompts.ts # 6 MCP prompts
├── tools/
│ ├── system.ts # System info tool
│ ├── files.ts # File read/write/list tools
│ ├── utils.ts # Data utility tools
│ └── ideas.ts # Creative idea generation tools
└── test/
├── tools.test.ts # 22 tests for all 12 tools
├── resources.test.ts # 13 tests for resources and templates
├── prompts.test.ts # 8 tests for all 6 prompts
└── auth.test.ts # 4 tests for token store and auth configLicense
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
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
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Automate 1,000+ services from any MCP-compatible AI agent: build Applets, run actions and queries.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA comprehensive utility MCP server that enables AI assistants to execute system commands, manage files, integrate with Google Sheets and Tasks, perform AI-powered text processing, and load dynamic prompts from markdown files.MIT
- FlicenseBqualityDmaintenanceProvides a complete end-to-end MCP server implementation with file system tools, web scraping capabilities, and system information access. Includes ready-to-use configuration files and integration examples for Claude Desktop, ChatGPT, and other AI models.6-
- FlicenseNot gradedqualityDmaintenanceProvides comprehensive utility tools including file operations, weather information, system monitoring, mathematical calculations, text search, and safe command execution. Enables users to perform various system and data operations through a unified MCP interface with built-in security features.-
- AlicenseNot gradedqualityDmaintenanceProvides essential utility tools for text processing, file operations, hashing, temperature conversion, password generation, and date/time operations through a comprehensive MCP interface.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/alrazihi/aether-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server