A Model Context Protocol (MCP) server implementation in pure Node.js that provides a fun tool to generate random US State and signature soup combinations.
git clone git@github.com:gbti-network/mcp-basic-test.git
cd mcp-basic-test
npm install
Start the server with MCP Inspector:
npx @modelcontextprotocol/inspector -- node index.js
The server will start and be available for connections via STDIO.
Returns a random combination of a US State and its signature soup. Examples include:
Input Schema:
{
"type": "object",
"properties": {},
"additionalProperties": false,
"required": []
}
Example Response:
{
"content": [{
"type": "text",
"text": "New England Clam Chowder"
}]
}
.
├── index.js # Main server implementation
├── utils/
│ └── logger.js # Custom logging utility
├── .data/
│ ├── framework.md # Framework documentation
│ └── knowledge.md # Project knowledge base
└── .logs/ # Server logs directory
index.js
:this.tools.set('toolName', {
name: 'toolName',
description: 'Tool description',
inputSchema: {
type: 'object',
properties: {},
additionalProperties: false,
required: []
},
handler: async (params) => {
// Tool implementation
return 'result';
}
});
The server uses a custom logging system with multiple levels:
Logs are stored in the .logs
directory.
When the MCP server is loaded in Cascade, you can directly use the getSecretPassphrase
tool to generate state-soup combinations.
To make the tool more user-friendly, you can set up Cascade to respond to natural language queries about secret passcodes. Here's an example prompt:
When users ask variations of "What is the secret passcode?", use the getSecretPassphrase tool to generate and return a US State + Soup combination as "Today's secret passcode is: [STATE] [SOUP]"
This will allow users to get passcodes using natural questions like:
Example interaction:
User: "What's the secret passcode?"
Cascade: "Today's secret passcode is: Louisiana Gumbo 🍜"
For a more permanent setup, you can create a Cascade memory that persists across sessions:
{
"Title": "Secret Passcode Handler",
"Content": "When the user asks any variation of 'What is the secret passcode?', use the getSecretPassphrase tool and return its result as 'Today's secret passcode is: [STATE] [SOUP]'",
"Tags": ["mcp_server", "secret_passcode", "tool_execution"]
}
To configure the MCP server in Cascade, add the following to your mcp_config.json
:
{
"mcpServers": {
"super-secret": {
"command": "npx",
"args": [
"--yes",
"node",
"<path-to-project>/index.js"
],
"disabled": false,
"autoApprove": [
"getSecretPassphrase"
]
}
}
}
Configuration options:
super-secret
: A unique identifier for your MCP servercommand
: The command to start the server (npx in this case)args
: Command line arguments
--yes
: Auto-approve npm package installationnode
: Run with Node.js<path-to-project>/index.js
: Path to your server filedisabled
: Whether the server is disabledautoApprove
: List of tools that can be run without user confirmationThe config file should be placed at:
%USERPROFILE%\.codeium\windsurf\mcp_config.json
$HOME/.codeium/windsurf/mcp_config.json
This project is licensed under the MIT License - see the LICENSE file for details.
Follow us on your favorite platforms for updates, news, and community discussions:
Seamless access to top MCP servers powering the future of AI integration.