Skip to main content

MCP server for FutureHouse platform integration

Project description

FutureHouse MCP Server

A Model Context Protocol (MCP) server for interacting with the FutureHouse platform. This server provides tools to submit tasks, manage jobs, and interact with FutureHouse's AI agents and environments.

Features

  • Task Submission: Submit queries to available FutureHouse jobs
  • Custom Agent Configuration: Configure agents with specific models and parameters
  • Task Continuation: Continue previous tasks with follow-up questions
  • Job Management: List available jobs and track task status
  • Multiple Transport Modes: Support for stdio, HTTP, and SSE transports

Installation

# Install using uv (recommended)
uv add futurehouse-mcp

# Or install using pip
pip install futurehouse-mcp

Configuration

Environment Variables

Set your FutureHouse API key:

export FUTUREHOUSE_API_KEY="your_api_key_here"

MCP Client Configuration

Add to your MCP client configuration file:

stdio transport (recommended)

{
  "mcpServers": {
    "futurehouse-mcp": {
      "command": "uvx",
      "args": ["futurehouse-mcp", "stdio"],
      "env": {
        "FUTUREHOUSE_API_KEY": "your_api_key_here"
      }
    }
  }
}

HTTP transport

{
  "mcpServers": {
    "futurehouse-mcp": {
      "command": "uvx",
      "args": ["futurehouse-mcp", "server"],
      "env": {
        "FUTUREHOUSE_API_KEY": "your_api_key_here"
      }
    }
  }
}

Available Tools

futurehouse_submit_task

Submit a simple task to a FutureHouse job.

Parameters:

  • job_name (string): Name of the job (e.g., "crow")
  • query (string): The question or task to submit

Example:

Submit task to job "crow" with query "What is the molecule known to have the greatest solubility in water?"

futurehouse_submit_task_with_config

Submit a task with custom runtime configuration.

Parameters:

  • job_name (string): Name of the job
  • query (string): The question or task to submit
  • agent_type (string, optional): Type of agent (default: "SimpleAgent")
  • model (string, optional): Model to use (default: "gpt-4o")
  • temperature (float, optional): Temperature setting (default: 0.0)
  • max_steps (int, optional): Maximum steps (default: 10)
  • agent_kwargs (dict, optional): Additional agent parameters

Example:

Submit task with custom config:
- job_name: "crow"
- query: "How many moons does earth have?"
- model: "gpt-4o"
- temperature: 0.0
- max_steps: 10

futurehouse_continue_task

Continue a previous task with a follow-up question.

Parameters:

  • previous_task_id (string): ID of the previous task
  • query (string): Follow-up question
  • job_name (string): Name of the job

Example:

Continue task "task_123" with query "From the previous answer, specifically how many species of crows are there?"

futurehouse_list_available_jobs

List all available job names in the FutureHouse platform.

Example:

List all available jobs

futurehouse_create_agent_config

Create a custom agent configuration.

Parameters:

  • agent_type (string, optional): Type of agent (default: "SimpleAgent")
  • model (string, optional): Model to use (default: "gpt-4o")
  • temperature (float, optional): Temperature setting (default: 0.0)
  • additional_kwargs (dict, optional): Additional parameters

Usage Examples

Simple Task Submission

Use futurehouse_submit_task with:
- job_name: "crow"
- query: "What are the latest developments in quantum computing?"

Custom Agent Configuration

Use futurehouse_submit_task_with_config with:
- job_name: "crow"
- query: "Explain photosynthesis in simple terms"
- model: "gpt-4o"
- temperature: 0.1
- max_steps: 15

Task Continuation

# First, submit a task
Use futurehouse_submit_task with:
- job_name: "crow"
- query: "How many species of birds are there?"

# Then continue with a follow-up
Use futurehouse_continue_task with:
- previous_task_id: "task_from_previous_response"
- query: "From the previous answer, specifically how many species of crows are there?"
- job_name: "crow"

Development

Running Locally

# Clone the repository
git clone <repository-url>
cd futurehouse-mcp

# Install dependencies
uv sync

# Run with stdio transport
uv run python -m futurehouse_mcp.server stdio

# Run with HTTP transport
uv run python -m futurehouse_mcp.server main --host 0.0.0.0 --port 3001

Testing

# Install development dependencies
uv sync --group dev

# Run tests
uv run pytest

# Run with coverage
uv run pytest --cov=futurehouse_mcp

API Reference

The server provides access to FutureHouse platform capabilities including:

  • Job Management: Submit and track tasks across different job types
  • Agent Configuration: Customize AI agent behavior and parameters
  • Task Continuation: Build conversations by continuing previous tasks
  • Runtime Configuration: Control execution parameters like max steps

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For issues and questions:

  • Check the documentation above
  • Review the example scripts in the repository
  • Open an issue on the GitHub repository

Authentication

This server requires a valid FutureHouse API key. To obtain an API key:

  1. Log in to the FutureHouse platform
  2. Go to your user settings
  3. Generate an API key
  4. Set it as the FUTUREHOUSE_API_KEY environment variable

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

futurehouse_mcp-0.1.0.tar.gz (177.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

futurehouse_mcp-0.1.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file futurehouse_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: futurehouse_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 177.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.3

File hashes

Hashes for futurehouse_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9fbdd047144418e4a2185cc10e76dbe7b1397d7e748f8380b0447b680f439ed0
MD5 e1a74b0c41644f8fc52b75383c153826
BLAKE2b-256 f9b4c93d402e28b9808dfbbf14b0519ca446e4aaa9825ae98b1ff60ea3475d5a

See more details on using hashes here.

File details

Details for the file futurehouse_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for futurehouse_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f2ea29b71539a7a7232447c9b64796dd4547357f19a32d2155270c8f326902cf
MD5 26d4a2de035048c311067c81eab499ca
BLAKE2b-256 8d07c2753a3516fdb3b9ea29ec39b04c08ca35d79953552fa9a4fe512f35aaeb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page