bsmi021
MCP Serverbsmi021public

mcp conversation server

MCP Conversation Server 是一个用于管理与OpenRouter语言模型对话的标准接口,支持实时流式传输和多对话跟踪。

Repository Info

1
Stars
1
Forks
1
Watchers
1
Issues
TypeScript
Language
MIT License
License

About This Server

MCP Conversation Server 是一个用于管理与OpenRouter语言模型对话的标准接口,支持实时流式传输和多对话跟踪。

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

MCP Conversation Server

A Model Context Protocol (MCP) server implementation for managing conversations with OpenRouter's language models. This server provides a standardized interface for applications to interact with various language models through a unified conversation management system.

Features

  • MCP Protocol Support

    • Full MCP protocol compliance
    • Resource management and discovery
    • Tool-based interaction model
    • Streaming response support
    • Error handling and recovery
  • OpenRouter Integration

    • Support for all OpenRouter models
    • Real-time streaming responses
    • Automatic token counting
    • Model context window management
    • Available models include:
      • Claude 3 Opus
      • Claude 3 Sonnet
      • Llama 2 70B
      • And many more from OpenRouter's catalog
  • Conversation Management

    • Create and manage multiple conversations
    • Support for system messages
    • Message history tracking
    • Token usage monitoring
    • Conversation filtering and search
  • Streaming Support

    • Real-time message streaming
    • Chunked response handling
    • Token counting
  • File System Persistence

    • Conversation state persistence
    • Configurable storage location
    • Automatic state management

Installation

npm install mcp-conversation-server

Configuration

Configuration

All configuration for the MCP Conversation Server is now provided via YAML. Please update the config/models.yaml file with your settings. For example:

# MCP Server Configuration
openRouter:
  apiKey: "YOUR_OPENROUTER_API_KEY"  # Replace with your actual OpenRouter API key.

persistence:
  path: "./conversations"  # Directory for storing conversation data.

models:
  # Define your models here
  'provider/model-name':
    id: 'provider/model-name'
    contextWindow: 123456
    streaming: true
    temperature: 0.7
    description: 'Model description'

# Default model to use if none specified
defaultModel: 'provider/model-name'

Server Configuration

The MCP Conversation Server now loads all its configuration from the YAML file. In your application, you can load the configuration as follows:

const config = await loadModelsConfig(); // Loads openRouter, persistence, models, and defaultModel settings from 'config/models.yaml'

Note: Environment variables are no longer required as all configuration is provided via the YAML file.

Usage

Basic Server Setup

import { ConversationServer } from 'mcp-conversation-server';

const server = new ConversationServer(config);
server.run().catch(console.error);

Available Tools

The server exposes several MCP tools:

  1. create-conversation

    {
        provider: 'openrouter',    // Provider is always 'openrouter'
        model: string,             // OpenRouter model ID (e.g., 'anthropic/claude-3-opus-20240229')
        title?: string;            // Optional conversation title
    }
    
  2. send-message

    {
        conversationId: string;  // Conversation ID
        content: string;         // Message content
        stream?: boolean;        // Enable streaming responses
    }
    
  3. list-conversations

    {
        filter?: {
            model?: string;      // Filter by model
            startDate?: string;  // Filter by start date
            endDate?: string;    // Filter by end date
        }
    }
    

Resources

The server provides access to several resources:

  1. conversation://{id}

    • Access specific conversation details
    • View message history
    • Check conversation metadata
  2. conversation://list

    • List all active conversations
    • Filter conversations by criteria
    • Sort by recent activity

Development

Building

npm run build

Running Tests

npm test

Debugging

The server provides several debugging features:

  1. Error Logging

    • All errors are logged with stack traces
    • Token usage tracking
    • Rate limit monitoring
  2. MCP Inspector

    npm run inspector
    

    Use the MCP Inspector to:

    • Test tool execution
    • View resource contents
    • Monitor message flow
    • Validate protocol compliance
  3. Provider Validation

    await server.providerManager.validateProviders();
    

    Validates:

    • API key validity
    • Model availability
    • Rate limit status

Troubleshooting

Common issues and solutions:

  1. OpenRouter Connection Issues

    • Verify your API key is valid
    • Check rate limits on OpenRouter's dashboard
    • Ensure the model ID is correct
    • Monitor credit usage
  2. Message Streaming Errors

    • Verify model streaming support
    • Check connection stability
    • Monitor token limits
    • Handle timeout settings
  3. File System Errors

    • Check directory permissions
    • Verify path configuration
    • Monitor disk space
    • Handle concurrent access

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

ISC License

Quick Start

1

Clone the repository

git clone https://github.com/bsmi021/mcp-conversation-server
2

Install dependencies

cd mcp-conversation-server
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Ownerbsmi021
Repomcp-conversation-server
LanguageTypeScript
LicenseMIT License
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation