Skip to main content
Glama
instructa
by instructa

MCP Server Starter

mcp starter

Want to build your own MCP server?

MCP Server Starter gives you a basic structure to run local tools with Cursor, Claude, and others using the MCP standard.


Features

  • 📡 Flexible Communication

    • Supports multiple communication protocols between client and server,

    • stdio: Local usage

    • Streamable HTTP: Remote and local useage

    • sse: Remote and local usage (deprecated)~~

  • 📦 Minimal Setup - Get started quickly with a basic server implementation.

  • 🤖 Cursor AI Integration - Includes example .cursor/mcp.json configuration.

  • ⌨️ TypeScript - Add type safety to your project.

Related MCP server: MCP Server Starter

Todo

  • Add option to publish your own packages

  • Better CLI support for scaffolding

  • Prompts to build tools on the fly

Getting Started

Prerequisites

  • Node.js (Specify version if necessary)

  • An MCP-compatible client (e.g., Cursor)

Usage

Supported Transport Options

Model Context Protocol Supports multiple Transport methods.

stdio

mcp starter

Recommend for local setups

Code Editor Support

Add the code snippets below

  • Cursor: .cursor/mcp.json

Local development/testing

Use this if you want to test your mcp server locally

{
  "mcpServers": {
    "my-starter-mcp-stdio": {
      "command": "node",
      "args": ["./bin/cli.mjs", "--stdio"]
    }
  }
}

Published Package

Use this when you have published your package in the npm registry

{
  "mcpServers": {
    "my-starter-mcp-stdio": {
      "command": "npx",
      "args": ["my-mcp-server", "--stdio"]
    }
  }
}

Streamable HTTP

mcp starter

Important: Streamable HTTP is not supported in Cursor yet

Recommend for remote server usage

Important: In contrast to stdio you need also to run the server with the correct flag

Local development Use the streamable http transport

  1. Start the MCP Server Run this in your terminal

node ./bin/cli.mjs --http --port 4200

Or with mcp inspector

npm run dev-http
# npm run dev-sse (deprecated)
  1. Add this to your config

{
  "mcpServers": {
    "my-starter-mcp-http": {
      "command": "node",
      "args": ["./bin/cli.mjs", "--http", "--port", "4001"]
      // "args": ["./bin/cli.mjs", "--sse", "--port", "4002"] (or deprecated sse usage)
    }
  }
}

Published Package

Use this when you have published your package in the npm registry

Run this in your terminal

npx my-mcp-server --http --port 4200
# npx my-mcp-server --sse --port 4201 (deprecated)
{
  "mcpServers": {
    "my-starter-mcp-http": {
      "url": "http://localhost:4200/mcp"
      // "url": "http://localhost:4201/sse"
    }
  }
}

Use the Inspector

Use the inspect command to debug your mcp server

mcp starter mcp starter

Command-Line Options

Protocol Selection

Protocol

Description

Flags

Notes

stdio

Standard I/O

(None)

Default

http

HTTP REST

--port <num> (def: 3000), --endpoint <path> (def: /mcp)

sse

Server-Sent Events

--port <num> (def: 3000)

Deprecated

License

This project is licensed under the MIT License - see the LICENSE file for details.


Courses

Available Tools

1 tool
doSomethingD

What is the capital of Austria?

ParametersJSON Schema
NameRequiredDescriptionDefault
param1YesThe name of the track to search for
param2YesThe name of the track to search for

TDQS

D1.4/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. The description fails to indicate what the tool does, whether it's a read/write operation, any side effects, or response format. It offers no behavioral context beyond the confusing question, leaving the agent with no understanding of the tool's behavior.

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?

The description is a single sentence, but it is not appropriately sized for the tool—it is under-specified and misleading rather than concise. It does not front-load useful information about the tool's purpose, wasting the opportunity to clarify functionality.

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

Completeness1/5

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

Given the complexity (2 required parameters, no annotations, no output schema) and the description's complete failure to explain the tool's purpose or behavior, it is inadequate. The description does not compensate for the lack of annotations or output schema, leaving the agent with insufficient information to use the tool correctly.

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%, with both parameters documented as 'The name of the track to search for'. The description adds no parameter information beyond what the schema provides. According to the rules, with high schema coverage (>80%), the baseline is 3 even with no param info in the description.

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

Purpose1/5

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

The description 'What is the capital of Austria?' is a question about geography, not a description of what the tool does. It provides no verb indicating an action (e.g., search, retrieve, calculate) and no mention of resources or operations. This is misleading as it suggests a trivia answer rather than tool functionality.

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?

No guidance is provided on when to use this tool. The description does not mention any context, prerequisites, or alternatives. Given the mismatch between the description and input schema (which references track searching), there is no usable information for an agent to determine appropriate usage scenarios.

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

TDQS

D1.8/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion or overlap between tools. The tool 'doSomething' stands alone with a distinct purpose, making disambiguation trivial.

Naming Consistency3/5

There is only one tool, so consistency cannot be assessed across multiple tools. The naming 'doSomething' is clear but does not follow a strong pattern, placing it in the middle range.

Tool Count2/5

A single tool is generally too few for most server purposes, as it limits functionality and scope. This feels thin and inadequate for typical MCP server applications.

Completeness1/5

The server has a single tool that answers a specific trivia question, which is severely incomplete for any meaningful domain. There are obvious gaps, as it lacks any operational coverage or lifecycle management.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A streamlined foundation for building Model Context Protocol servers in Python, designed to make AI-assisted development of MCP tools easier and more efficient.
    12
  • F
    license
    B
    quality
    D
    maintenance
    A basic starter project for building Model Context Protocol (MCP) servers that enables standardized interactions between AI systems and various data sources through secure, controlled tool implementations.
    2
  • A
    license
    B
    quality
    D
    maintenance
    A template repository for building Model Context Protocol (MCP) servers that enable LLM clients to interact with custom tools and services through standardized JSON-RPC communication.
    3
    MIT

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/instructa/mcp-starter'

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