A lightweight and extendable Model Context Protocol (MCP) server toolkit for building custom tools that integrate with AI assistants.
This package provides a ready-to-use MCP server, a clean structure for defining tools, and the option for developers to add their own tools without modifying the package.
npm install @netmex/mcpyarn add @netmex/mcpAfter installing, you can run the MCP server using:
npx netmex-mcpTo add your own tools, create a tool file inside a mcp-tools/ directory in your project root:
Example Tool (TypeScript)
import type { Tool } from "@netmex/mcp/types";
const GreetTool: Tool = {
name: "greet",
description: "Returns a friendly greeting",
inputSchema: {
type: "object",
properties: {
name: { type: "string", description: "Name to greet" }
},
required: ["name"]
},
handler: async ({ name }) => ({
content: [
{
type: "text",
text: `Hello, ${name}!`
}
]
})
};
export default GreetTool;Once placed inside mcp-tools/, tools are automatically discovered by the loader and exposed to MCP clients.
No registration needed. No editing package code. Just drop the tool file in place.
Each tool receives structured arguments, validated according to its inputSchema.
your-project/
├── mcp-tools/
│ ├── GreetTool.ts
│ └── AnotherTool.ts
├── node_modules/
├── package.json
└── ...
You can also install tools from npm. Any dependency whose name starts with:
netmex-mcp-tool-
will be auto-loaded by the server.
Example:
npm install netmex-mcp-tool-analytics
If a tool throws or returns an invalid value, the server automatically returns a JSON-RPC error:
{
"error": {
"code": -32603,
"message": "Internal error",
"data": { "details": "Something went wrong" }
}
}Use try/catch inside handlers for custom error responses.
This package includes a few tools by default:
- about
- hello
- (more coming soon)
To build the MCP server locally:
npm install
npm run build
To start it directly:
npm run start
For more information on the Model Context Protocol, visit the official MCP documentation.
This project is licensed under the MIT License.