ContextBase (MCP Server)

by imfeniljikadara

1 stars
136 downloads
Not rated
GitHub Website

About

A mcp server for storing and managing user context for ai apps via api

Details

Author
imfeniljikadara
GitHub stars
1
Downloads
136
Categories
Other

- Secure user authentication using JWT and bcrypt
- API endpoints for storing and retrieving memory data
- Comprehensive logging of user actions
- PostgreSQL for persistent storage
- Redis for high-performance caching
- Modern tech stack: TypeScript, Fastify, Prisma ORM

Install Node.js v14+, PostgreSQL, and Redis. Clone the repository, install dependencies, configure environment variables (DATABASE_URL, REDIS_HOST, REDIS_PORT, JWT_SECRET, PORT), run database migrations with npx prisma migrate dev, then start the server with npm start or docker-compose up. Use the provided REST API endpoints (e.g., POST /api/auth/register, POST /api/memory) to register users, login, and manage memory objects.

ContextBase (MCP Server)

ContextBase – A Model Context Protocol (MCP) server for AI agents, assistants, and apps which store, retrieve, and manage per-user context using a simple API.

Features

- Authentication System: Secure user authentication using JWT and bcrypt
- Memory Management: API endpoints for storing and retrieving memory data
- Logging System: Comprehensive logging of user actions
- Modern Tech Stack: Built with TypeScript, Fastify, Prisma ORM
- Database Integration: PostgreSQL for persistent storage
- Caching: Redis for high-performance caching

Prerequisites

- Node.js (v14 or higher)
- PostgreSQL
- Redis
- Docker and Docker Compose (optional, for containerized deployment)

Installation

1. Clone the repository

   git clone https://github.com/imfeniljikadara/contextbase.git
cd mcp

2. Install dependencies

   cd mcp-server
npm install

3. Set up environment variables
Create a .env file in the mcp-server directory with the following variables:

   DATABASE_URL=postgresql://username:password@localhost:5432/mcp
REDIS_HOST=localhost
REDIS_PORT=6379
JWT_SECRET=your_jwt_secret
PORT=3000

4. Run database migrations

   npx prisma migrate dev

5. Start the server

   npm start

Or using Docker:

   docker-compose up

API Endpoints

- Authentication
- POST /api/auth/register - Register a new user
- POST /api/auth/login - Login and get JWT token

- Memory
- GET /api/memory - Get all memories
- POST /api/memory - Create a new memory
- GET /api/memory/:id - Get a specific memory
- PUT /api/memory/:id - Update a memory
- DELETE /api/memory/:id - Delete a memory

- Logs
- GET /api/logs - Get user action logs

Development

- Run in development mode:

  npm run dev

- Run tests:

  npm test

Project Structure

mcp-server/
├── prisma/              # Database schema and migrations
├── src/
│   ├── api/             # API routes and controllers
│   ├── config/          # Configuration files
│   ├── db/              # Database connections (PostgreSQL, Redis)
│   ├── middleware/      # Custom middleware
│   ├── models/          # Data models
│   ├── services/        # Business logic
│   ├── utils/           # Utility functions
│   └── index.ts         # Application entry point
├── scripts/             # Helper scripts
├── .env                 # Environment variables
└── package.json         # Dependencies and scripts

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.