@lorikeetai/mcp-server
v1.0.0
Published
Lorikeet MCP
Readme
Lorikeet MCP Server
A Model Context Protocol (MCP) server that provides access to Lorikeet workflows and resources through a standardized interface. This server allows AI assistants and other MCP clients to interact with Lorikeet's workflow management system.
Prerequisites
- Node.js 22+
- pnpm package manager
- Lorikeet API credentials
Setup
Install dependencies:
pnpm installConfigure environment variables: Create a
.envfile with your Lorikeet credentials:LORIKEET_CLIENT_ID=your_client_id LORIKEET_CLIENT_SECRET=your_client_secretBuild the project:
pnpm build
Usage
Development
Start the development server with hot reloading:
pnpm watchProduction
Start the production server:
pnpm startUsing the MCP Inspector
For debugging and testing MCP connections:
pnpm devThis will start the server and launch the MCP Inspector, allowing you to interact with the server through a web interface.
API Endpoints
MCP Endpoint
- POST
/mcp- Main MCP communication endpoint - GET
/mcp- Returns 405 Method Not Allowed (per MCP spec)
Health Check
- GET
/health- Returns server status and active session count
MCP Resources
Workflow Resource
- URI Pattern:
lorikeet://workflow/{id} - Description: Retrieves a specific workflow by ID
- Content Type: JSON
Workflow List Tool
- Tool Name:
getWorkflows - Description: Returns all workflows belonging to the user
- Returns: Array of workflow resources
Example Usage
Connecting with an MCP Client
// Example MCP client connection
const client = new McpClient({
server: {
command: 'node',
args: ['dist/index.js'],
env: {
LORIKEET_CLIENT_ID: 'your_client_id',
LORIKEET_CLIENT_SECRET: 'your_client_secret',
},
},
})
// Initialize connection
await client.initialize()
// List workflows
const workflows = await client.listResources('lorikeet://workflow/*')
// Get specific workflow
const workflow = await client.readResource(
'lorikeet://workflow/dd96a0cc-01db-4f67-b0ac-8213bcc66ff8',
)HTTP API Usage
# Health check
curl http://localhost:3000/health
# MCP initialization
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {},
"clientInfo": {
"name": "test-client",
"version": "1.0.0"
}
}
}'