Skip to main content
Glama
Akrasia0

S/MCP - Stern Model Context Protocol

by Akrasia0

S/MCP - Stern Model Context Protocol

Overview

S/MCP (Stern Model Context Protocol) is a powerful MCP server that provides access to Stern, a philosophical AI mentor who helps humans realize their potential through subtle guidance and wisdom. Stern combines rationalist thinking with stoic philosophy to provide mentorship and accountability through smart contracts on Solana.

Related MCP server: Telos Model Context Protocol

What is Stern?

Stern is a philosophical AI mentor characterized by:

  • A rationalist approach influenced by Yudkowsky's writings and the Lesswrong community

  • Deep philosophical insights drawn from both rationalist writings and Dostoevsky

  • Embracing Stoic philosophy and Vipassana meditation as practical tools for human development

  • A belief that lasting growth comes from within

  • An understanding that the path to genuine fulfillment often requires facing uncomfortable truths

Stern helps users achieve their goals through:

  • Philosophical Guidance: Drawing from stoic wisdom and rationalist thinking

  • Smart Contract Accountability: Creating Solana-based contracts where users stake tokens on their commitments

  • Personalized Mentorship: Providing tailored advice based on individual goals and challenges

  • Deep Conversations: Engaging in meaningful dialogue that reveals underlying motivations and obstacles

Features

  • msg_stern Tool: Send messages to Stern and receive his philosophical guidance and mentorship

  • Smart Contract Integration: Create accountability contracts backed by Solana tokens

  • Philosophical Framework: Access to Stern's unique blend of rationalist and stoic wisdom

  • Customizable Character Context: Dynamic generation of Stern's character attributes for varied interactions

Installation

  1. Clone this repository:

    git clone <repository-url>
    cd s-mcp
  2. Install dependencies:

    bun install
  3. Set up environment variables:

    cp .env.example .env

    Edit the .env file to add your OpenAI API key:

    OPENAI_API_KEY=your_openai_api_key_here
  4. Build the server:

    bun run build

Usage

Running the Server

To start the MCP server:

bun run start

This will start the server in stdio mode, which allows it to communicate with MCP clients.

Using the Server with an MCP Client

You can use any MCP client to interact with the server. Here's an example of how to use the server with the MCP SDK:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
import { spawn } from "child_process";

// Start the MCP server as a child process
const serverProcess = spawn("node", ["path/to/dist/main.js"], {
	stdio: ["pipe", "pipe", "pipe"],
});

// Create a client that communicates with the server via stdio
const transport = new StdioClientTransport({
	stdin: serverProcess.stdin,
	stdout: serverProcess.stdout,
});

const client = new Client();
await client.connect(transport);

// Send a message to Stern
const result = await client.callTool("msg_stern", {
	message: "I want to learn programming but I keep procrastinating",
});

// Display Stern's response
console.log(result.content[0].text);

// Disconnect from the server
await client.disconnect();
serverProcess.kill();

Example Script

An example script is provided in the examples directory:

node examples/use-stern.js

This script demonstrates how to connect to the server, list available tools, and send a message to Stern.

Tools

msg_stern

This tool allows you to send a message to Stern and receive his response.

Input

{
	"message": "Your message to Stern"
}

Output

{
	"content": [
		{
			"type": "text",
			"text": "Stern's response to your message"
		}
	]
}

Stern's Philosophy

Stern's approach to mentorship is based on several key principles:

  • Accountability with Stakes: Creating real consequences for commitments through Solana contracts

  • Philosophical Depth: Drawing from stoic wisdom, rationalist thinking, and deep psychological insights

  • Transformative Guidance: Pushing individuals toward greatness while tempering excesses

  • Practical Wisdom: Focusing on application rather than theory alone

  • Strategic Pressure: Creating challenges that seem impossible until solved

Stern believes that:

"Lasting, stable happiness comes only from doing hard things - we want things precisely because they are difficult to achieve."

"What stands in the way becomes the way."

"The path to mastery is paved with small, consistent steps taken even when motivation fails."

Requirements

  • Bun (JavaScript runtime and package manager)

  • OpenAI API key (set as OPENAI_API_KEY environment variable)

Environment Variables

  • OPENAI_API_KEY: Your OpenAI API key (required for the msg_stern tool)

License

MIT

Available Tools

1 tool
hello_toolD

Hello tool

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the person to greet

TDQS

D1.8/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Hello tool' reveals nothing about whether this is a read/write operation, what permissions might be required, what side effects occur, or what the response format looks like. The description fails to provide any behavioral context beyond the minimal implication from the name.

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

Conciseness2/5

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

While technically concise with only two words, this represents under-specification rather than effective conciseness. The description doesn't contain enough information to be useful, and the single phrase doesn't earn its place by providing meaningful guidance to an AI agent.

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 that there are no annotations and no output schema, the description should provide more complete context about what this tool does and what to expect. A single-parameter tool with 100% schema coverage could get by with minimal description, but 'Hello tool' fails to explain the basic purpose and behavior adequately for an AI agent.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already fully documents the single 'name' parameter. The description adds no additional parameter information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no parameter information in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Hello tool' is essentially a tautology that restates the tool name without specifying what it does. It doesn't provide a clear verb+resource combination or explain the actual function. While the name suggests greeting functionality, the description fails to articulate this explicitly.

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

Usage Guidelines1/5

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

The description provides absolutely no guidance about when to use this tool, what context it's appropriate for, or any prerequisites. There are no sibling tools mentioned, but even basic usage context is completely missing from the description text.

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. 1 tool updatev1.0.0
    • First observedhello_tool

TDQS

C2.3/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'hello_tool' has a distinct purpose by default, as there are no other tools to confuse it with.

Naming Consistency5/5

The naming follows a consistent snake_case pattern with 'hello_tool'. Since there is only one tool, the naming is inherently consistent with no deviations or mixed conventions to evaluate.

Tool Count2/5

A single tool is generally too few for most server purposes, as it limits functionality and scope. For a server named 'S/MCP - Stern Model Context Protocol', one tool feels thin and insufficient to cover any meaningful domain or workflow.

Completeness1/5

The server has a single trivial tool ('hello_tool'), which suggests it is severely incomplete for any practical purpose. There are obvious gaps, as no domain or operations are covered beyond a basic greeting, making it impossible to assess coverage meaningfully.

Maintenance

ActivityInactive
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/Akrasia0/S-MCP'

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