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 jobquery(string): The question or task to submitagent_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 taskquery(string): Follow-up questionjob_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
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- 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:
- Log in to the FutureHouse platform
- Go to your user settings
- Generate an API key
- Set it as the
FUTUREHOUSE_API_KEYenvironment 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9fbdd047144418e4a2185cc10e76dbe7b1397d7e748f8380b0447b680f439ed0
|
|
| MD5 |
e1a74b0c41644f8fc52b75383c153826
|
|
| BLAKE2b-256 |
f9b4c93d402e28b9808dfbbf14b0519ca446e4aaa9825ae98b1ff60ea3475d5a
|
File details
Details for the file futurehouse_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: futurehouse_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2ea29b71539a7a7232447c9b64796dd4547357f19a32d2155270c8f326902cf
|
|
| MD5 |
26d4a2de035048c311067c81eab499ca
|
|
| BLAKE2b-256 |
8d07c2753a3516fdb3b9ea29ec39b04c08ca35d79953552fa9a4fe512f35aaeb
|