adonis-mcp

adonis-mcp

3.4

If you are the rightful owner of adonis-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcpreview.com.

Adonis MCP is a package for the AdonisJS framework that facilitates the creation of remote MCP servers using Server-Sent Events (SSE).

Adonis MCP

Adonis MCP is a package designed for the AdonisJS framework that provides support for the Model Context Protocol (MCP). With this package, you can easily build remote MCP servers using Server-Sent Events (SSE).

Installation

Run the following command to install the package:

node ace add @7nohe/adonis-mcp

Configuration

After installation, a config/mcp.ts file will be generated. Edit this file to customize the MCP server settings.

Example:

import { defineConfig } from '@7nohe/adonis-mcp'

export default defineConfig({
  ssePath: '/sse',
  messagesPath: '/messages',
  serverOptions: {
    name: 'mymcp',
    version: '0.0.1',
  },
})

Usage

Registering Routes

You can use the registerRoutes method in start/routes.ts to define tools and prompts. Below is an example:

import mcp from '@7nohe/adonis-mcp/services/main'
import { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js'
import { z } from 'zod'

await mcp.registerRoutes((server) => {
  server.resource(
    'echo',
    new ResourceTemplate('echo://{message}', { list: undefined }),
    async (uri, { message }) => ({
      contents: [
        {
          uri: uri.href,
          text: `Resource echo: ${message}`,
        },
      ],
    })
  )

  server.tool('echo', { message: z.string() }, async ({ message }) => ({
    content: [{ type: 'text', text: `Tool echo: ${message}` }],
  }))

  server.prompt('echo', { message: z.string() }, ({ message }) => ({
    messages: [
      {
        role: 'user',
        content: {
          type: 'text',
          text: `Please process this message: ${message}`,
        },
      },
    ],
  }))
})

Starting the Server

After defining the routes, start the MCP server by running the following command:

npm run dev

Debugging

Using Configuration File

To debug, edit the MCP server configuration file (e.g., for Claude Desktop or Cursor) as follows:

{
  "mcpServers": {
    "mymcp": {
      "url": "http://localhost:3333/sse"
    }
  }
}

Using Inspector

Another debugging method is to use the Inspector. Start it with the following command:

npx @modelcontextprotocol/inspector
  1. Set the Transport Type to SSE.
  2. Enter the URL http://localhost:3333/sse.
  3. Click the Connect button.
  4. Confirm that the status changes to Connected.

For more details, refer to the Inspector Documentation.

License

This project is provided under the .