mcp-emust
v0.0.1
Published
MCP server for eMUST with tools for charging station management
Maintainers
Readme
mcp-emust
MCP server for eMUST with tools for charging station management. This package provides a set of tools for managing charging stations and can be used with n8n.
Installation
npm install mcp-emustUsage in n8n
- Install the package in your n8n environment:
npm install mcp-emustConfigure n8n to use the MCP server:
- Go to your n8n settings
- Add a new MCP server configuration
- Set the command to:
npx mcp-emust - The server will use stdio transport by default
Available Tools:
toggle_tag_status: Toggle the status of a charging station tagcheck_tag_status: Check the current status of a charging station taggenerate_charging_station_qrcode: Generate a QR code for a charging stationfind_nearest_charging_station: Find the nearest charging station to a given location
Development
# Install dependencies
npm install
# Build the project
npm run build
# Start the server
npm startLicense
MIT
Project Structure
mcp-eMUST/
├── src/
│ ├── tools/ # MCP Tools
│ │ └── ExampleTool.ts
│ └── index.ts # Server entry point
├── package.json
└── tsconfig.jsonAdding Components
The project comes with an example tool in src/tools/ExampleTool.ts. You can add more tools using the CLI:
# Add a new tool
mcp add tool my-tool
# Example tools you might create:
mcp add tool data-processor
mcp add tool api-client
mcp add tool file-handlerTool Development
Example tool structure:
import { MCPTool } from "mcp-framework";
import { z } from "zod";
interface MyToolInput {
message: string;
}
class MyTool extends MCPTool<MyToolInput> {
name = "my_tool";
description = "Describes what your tool does";
schema = {
message: {
type: z.string(),
description: "Description of this input parameter",
},
};
async execute(input: MyToolInput) {
// Your tool logic here
return `Processed: ${input.message}`;
}
}
export default MyTool;Publishing to npm
Update your package.json:
- Ensure
nameis unique and follows npm naming conventions - Set appropriate
version - Add
description,author,license, etc. - Check
binpoints to the correct entry file
- Ensure
Build and test locally:
npm run build npm link mcp-eMUST # Test your CLI locallyLogin to npm (create account if necessary):
npm loginPublish your package:
npm publish
After publishing, users can add it to their claude desktop client (read below) or run it with npx
Using with Claude Desktop
Local Development
Add this configuration to your Claude Desktop config file:
MacOS: `
