Bayesian MCP

Bayesian MCP

A Model Calling Protocol server that enables LLMs to perform rigorous Bayesian analysis and probabilistic reasoning, including inference, model comparison, and predictive modeling with uncertainty quantification.

Category
访问服务器

README

Bayesian MCP

A Model Calling Protocol (MCP) server for Bayesian reasoning, inference, and belief updating. This tool enables LLMs to perform rigorous Bayesian analysis and probabilistic reasoning.

Features

  • 🧠 Bayesian Inference: Update beliefs with new evidence using MCMC sampling
  • 📊 Model Comparison: Compare competing models using information criteria
  • 🔮 Predictive Inference: Generate predictions with uncertainty quantification
  • 📈 Visualization: Create visualizations of posterior distributions
  • 🔌 MCP Integration: Seamlessly integrate with any LLM that supports MCP

Installation

Development Installation

Clone the repository and install dependencies:

git clone https://github.com/wrenchchatrepo/bayesian-mcp.git
cd bayesian-mcp
pip install -e .

Requirements

  • Python 3.9+
  • PyMC 5.0+
  • ArviZ
  • NumPy
  • Matplotlib
  • FastAPI
  • Uvicorn

Quick Start

Starting the Server

# Run with default settings
python bayesian_mcp.py

# Specify host and port
python bayesian_mcp.py --host 0.0.0.0 --port 8080

# Set log level
python bayesian_mcp.py --log-level debug

The server will start and listen for MCP requests on the specified host and port.

API Usage

The Bayesian MCP server exposes several functions through its API:

1. Create Model

Create a new Bayesian model with specified variables.

# MCP Request
{
    "function_name": "create_model",
    "parameters": {
        "model_name": "my_model",
        "variables": {
            "theta": {
                "distribution": "normal",
                "params": {"mu": 0, "sigma": 1}
            },
            "likelihood": {
                "distribution": "normal",
                "params": {"mu": "theta", "sigma": 0.5},
                "observed": [0.1, 0.2, 0.3, 0.4]
            }
        }
    }
}

2. Update Beliefs

Update model beliefs with new evidence.

# MCP Request
{
    "function_name": "update_beliefs",
    "parameters": {
        "model_name": "my_model",
        "evidence": {
            "data": [0.1, 0.2, 0.3, 0.4]
        },
        "sample_kwargs": {
            "draws": 1000,
            "tune": 1000,
            "chains": 2
        }
    }
}

3. Make Predictions

Generate predictions using the posterior distribution.

# MCP Request
{
    "function_name": "predict",
    "parameters": {
        "model_name": "my_model",
        "variables": ["theta"],
        "conditions": {
            "x": [1.0, 2.0, 3.0]
        }
    }
}

4. Compare Models

Compare multiple models using information criteria.

# MCP Request
{
    "function_name": "compare_models",
    "parameters": {
        "model_names": ["model_1", "model_2"],
        "metric": "waic"
    }
}

5. Create Visualization

Generate visualizations of model posterior distributions.

# MCP Request
{
    "function_name": "create_visualization",
    "parameters": {
        "model_name": "my_model",
        "plot_type": "trace",
        "variables": ["theta"]
    }
}

Examples

The examples/ directory contains several examples demonstrating how to use the Bayesian MCP server:

Linear Regression

A simple linear regression example to demonstrate parameter estimation:

python examples/linear_regression.py

A/B Testing

An example of Bayesian A/B testing for conversion rates:

python examples/ab_test.py

Supported Distributions

The Bayesian engine supports the following distributions:

  • normal: Normal (Gaussian) distribution
  • lognormal: Log-normal distribution
  • beta: Beta distribution
  • gamma: Gamma distribution
  • exponential: Exponential distribution
  • uniform: Uniform distribution
  • bernoulli: Bernoulli distribution
  • binomial: Binomial distribution
  • poisson: Poisson distribution
  • deterministic: Deterministic transformation

MCP Integration

This server implements the Model Calling Protocol, making it compatible with a wide range of LLMs and frameworks. To use it with your LLM:

import requests

response = requests.post("http://localhost:8000/mcp", json={
    "function_name": "create_model",
    "parameters": {
        "model_name": "example_model",
        "variables": {...}
    }
})

result = response.json()

License

MIT

Credits

Based on concepts and code from the Wrench AI framework.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
mcp-server-qdrant

mcp-server-qdrant

这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。

官方
精选
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选