MCP Activities
Enables users to create and manage activities in the meupontoonline system through natural language. It handles automatic DTO transformation and authenticated form-data submission to the meupontoonline API.
README
MCP Activities
A Model Context Protocol (MCP) server that allows Cursor to interact with the meupontoonline system to create activities. The server is deployed on Railway and supports both local development and cloud deployment.
Features
- Create activities with start date, end date, and description
- Automatic DTO transformation according to the meupontoonline API format
- Form-data submission to the meupontoonline API
- HTTP transport for cloud deployment
- TypeScript support for development
Installation
- Clone or download this project
- Install dependencies:
npm install
Usage
Running the MCP Server
Local Development
Start the server in development mode:
npm run dev
Or start in production mode:
npm start
Railway Deployment
The server is deployed on Railway and accessible via HTTP transport.
Cursor Integration
To use this MCP server with Cursor, follow these steps:
Method 1: Railway Deployment (Recommended)
- Open Cursor
- Go to Settings → Features → Model Context Protocol
- Add a new server with this configuration:
{
"mcpServers": {
"mcp-activities": {
"url": "https://mcp-activities.up.railway.app/mcp"
}
}
}
Method 2: Local Development
For local development, use this configuration:
{
"mcpServers": {
"mcp-activities": {
"url": "http://localhost:3000/mcp"
}
}
}
Troubleshooting
- For Railway deployment: Ensure the URL is correct and the server is running
- For local development: Ensure Node.js is installed and accessible from PATH
- Verify the file paths are correct for your system
- Check that all dependencies are installed with
npm install - Restart Cursor after adding the configuration
- Build the project with
npm run buildbefore running locally
Available Tools
create_activity
Creates a new activity in the meupontoonline system.
Parameters:
startDate(string, required): Start date and time in ISO format (YYYY-MM-DDTHH:mm:ss or YYYY-MM-DD HH:mm)endDate(string, required): End date and time in ISO format (YYYY-MM-DDTHH:mm:ss or YYYY-MM-DD HH:mm)project(string, required): Project namedescription(string, required): Activity descriptionemail(string, required): Login email for meupontoonlinepassword(string, required): Login password for meupontoonline
Example usage in Cursor:
Create an activity from 2025-01-15 09:00 to 2025-01-15 17:00 for project "Frontend Development" with description "Component Implementation" using email "user@example.com" and password "password123"
DTO Transformation
The server automatically transforms user input to the required DTO format:
Input:
- Start Date:
2025-01-15T09:00:00 - End Date:
2025-01-15T17:00:00 - Description:
"Project Development - Frontend Implementation"
Transformed DTO:
{
"dataLancamento": "2025-01-15 09:00",
"horarioInicio": "09:00:00",
"horarioFim": "17:00:00",
"observacao": "",
"idTarefa": 233,
"detalheTarefa": "Project Development - Frontend Implementation"
}
Authentication
The server requires authentication to access the meupontoonline API. The login process:
- Login Request: Sends credentials to
https://app.meupontoonline.com/Login/RealizaLogin - Cookie Extraction: Extracts authentication cookies from the response
- Session Management: Uses cookies for subsequent API requests
Required Credentials:
email: Your meupontoonline login emailpassword: Your meupontoonline login password
API Integration
The server sends the transformed DTO as form-data to:
- URL:
https://app.meupontoonline.com/Lancamentos/Create - Method: POST
- Content-Type: multipart/form-data
- Authentication: Uses cookies from login session
Error Handling
The server includes comprehensive error handling for:
- Missing required parameters
- Invalid date formats
- End date before start date
- Authentication failures (invalid credentials)
- API request failures
- Network errors
- Session expiration
Development
Project Structure
mcp-activities/
├── src/
│ ├── index.ts # Main MCP server implementation (TypeScript)
│ └── tools/ # Tool implementations
├── dist/ # Compiled JavaScript output
├── dto-template.json # DTO template reference
├── package.json # Project configuration
├── tsconfig.json # TypeScript configuration
└── README.md # This file
Scripts
npm run build: Compile TypeScript to JavaScriptnpm run dev: Run in development mode with hot reloadnpm start: Run compiled versionnpm run dev:watch: Run with file watching
Dependencies
@modelcontextprotocol/sdk: MCP server frameworkexpress: HTTP server frameworkaxios: HTTP client for API requeststypescript: TypeScript compilertsx: TypeScript execution environment
Author
Yohan Fraga Santos
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.