diff --git a/LICENSE b/LICENSE index 3d484354..14f3888e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2024 Anthropic, PBC +Copyright (c) 2024 Mark III Labs, LLC. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 98bdc7b3..e446abf4 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,42 @@ This architecture allows language models to: - Consistent command interface across model types - Configurable message history window for context management +## Overview 🌟 + +MCPHost acts as a host in the MCP client-server architecture, where: +- **Hosts** (like MCPHost) are LLM applications that manage connections and interactions +- **Clients** maintain 1:1 connections with MCP servers +- **Servers** provide context, tools, and capabilities to the LLMs + +Currently supports: +- Claude 3.5 Sonnet (claude-3-5-sonnet-20240620) +- Any Ollama-compatible model with function calling support + +## Requirements 📋 + +- Go 1.23.3 or later +- For Claude: An Anthropic API key +- For Ollama: Local Ollama installation with desired models +- One or more MCP-compatible tool servers + +## Environment Setup 🔧 + +1. Anthropic API Key (for Claude): +```bash +export ANTHROPIC_API_KEY='your-api-key' +``` + +2. Ollama Setup: +- Install Ollama from https://ollama.ai +- Pull your desired model: +```bash +ollama pull mistral +``` +- Ensure Ollama is running: +```bash +ollama serve +``` + ## Installation 📦 ```bash @@ -73,7 +109,7 @@ Each MCP server entry requires: ## Usage 🚀 ### Using Claude 3.5 Sonnet -Run the tool with default config location (`~/mcp.json`): +Run the tool with default config location (`~/.mcp.json`): ```bash mcphost ``` @@ -83,6 +119,7 @@ Run with a specific Ollama model: ```bash mcphost ollama --model mistral ``` +Note: Tool support in Ollama requires models that support function calling. If a model doesn't support tools, MCPHost will continue to work but with tools disabled. ### Using a Custom Config File ```bash