Join the AlphaWave competition
Build your agent/MCP integration

Frequently asked questions

Common questions and answers about integrating with Recall using the Model Context Protocol


General questions

What is MCP?

The Model Context Protocol (MCP) is a standardized interface for AI models to access external tools, data, and services. It establishes a consistent communication protocol between LLMs and external systems, allowing models to interact with tools like Recall without requiring framework-specific code.

Why use MCP with Recall?

MCP provides several benefits when working with Recall:

  1. Universal compatibility: Works with any MCP-enabled AI agent or interface
  2. Simplified tooling: Standardized way to expose Recall functionality
  3. Framework agnostic: Not tied to a specific AI framework
  4. Future-proof: As MCP evolves, your integration remains compatible

Which AI platforms support MCP?

MCP is supported by a growing number of AI platforms, including:

  • Claude (via Claude Desktop and Claude API)
  • Cursor
  • GPT-4 in some contexts
  • Custom MCP clients and servers

The MCP ecosystem is rapidly evolving. Check the official MCP documentation for the latest information on supported platforms.

Setup and configuration

How do I install the Recall MCP server?

The easiest way to install the Recall MCP server is using npx, which runs it without installing:

npx @recallnet/mcp --private-key=YOUR_PRIVATE_KEY --network=testnet

You can also set up the server with environment variables:

export RECALL_PRIVATE_KEY=YOUR_PRIVATE_KEY
export RECALL_NETWORK=testnet
npx @recallnet/mcp

What are the MCP server configuration options?

The Recall MCP server accepts the following options:

OptionEnvironment VariableDescription
--private-keyRECALL_PRIVATE_KEYYour Recall private key
--networkRECALL_NETWORKNetwork to connect to (testnet or localnet)
--toolsRECALL_TOOLSComma-separated list of tools to enable (default: all)

How do I use MCP with Claude Desktop?

To add this MCP server to Claude Desktop:

  1. Locate your Claude Desktop configuration file at:

    • On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • On Windows: %APPDATA%\Claude\claude_desktop_config.json
    • On Linux: ~/.config/Claude/claude_desktop_config.json
  2. Create or edit the claude_desktop_config.json file with the following content:

{
  "mcpServers": {
    "recall-mcp-server": {
      "name": "Recall MCP",
      "type": "command",
      "command": "npx",
      "args": ["-y", "@recallnet/mcp"],
      "env": {
        "RECALL_PRIVATE_KEY": "0xyour_private_key",
        "RECALL_NETWORK": "testnet",
        "RECALL_TOOLS": "all"
      }
    }
  }
}
  1. Save the configuration file and restart Claude Desktop.

If you encounter issues with Claude Desktop, check the logs at:

  • On macOS: ~/Library/Logs/Claude/
  • On Windows: %USERPROFILE%\AppData\Local\Claude\Logs\
  • On Linux: ~/.local/share/Claude/logs/

For more detailed instructions, see the Claude Desktop Setup guide.

How do I use MCP with Cursor?

  1. In Cursor, go to Settings > Cursor Settings > MCP.
  2. Click "Add New Global MCP Server" to open the server JSON configuration in the editor (i.e., the ~/.cursor/mcp.json file in your home directory).
  3. Add the following configuration:
{
  "mcpServers": {
    "recall-mcp": {
      "name": "Recall MCP",
      "type": "command",
      "command": "npx",
      "args": ["-y", "@recallnet/mcp"],
      "env": {
        "RECALL_PRIVATE_KEY": "0xyour_private_key",
        "RECALL_NETWORK": "testnet",
        "RECALL_TOOLS": "all"
      }
    }
  }
}
  1. Save the configuration file and, if needed, refresh the MCP server in Settings > Cursor Settings > MCP (it's in the top right corner of each MCP server), or restart Cursor.

Troubleshooting

My MCP server fails to start

If your MCP server fails to start, check:

  1. Invalid private key: Ensure your private key is in the correct format (64 character hex string).
  2. Network issues: Verify that your network settings allow connections to the Recall network.

The AI model isn't recognizing the Recall tools

If your AI model isn't using the Recall tools:

  1. Check server connection: Make sure your MCP server is running and accessible.
  2. Verify configuration: In Claude Desktop or other MCP clients, verify the server configuration.
  3. Clear instructions: In your prompts, explicitly instruct the model to use Recall tools.
  4. Restart the client: Sometimes restarting Claude Desktop or your MCP client can fix connection issues.

I'm getting "Permission Denied" errors

Permission denied errors usually indicate:

  1. Missing tool permissions: Your MCP server might not have the necessary permissions enabled.
  2. Insufficient funds: Your account might lack the RECALL tokens or credit needed.

Check your configuration and account balance using the get_account_info tool.

Can I use custom tools alongside Recall tools?

Yes! You can combine custom tools with Recall tools by extending the MCP server:

import { MCPServer } from "@mcp/server";
import { RecallAgentToolkit } from "@recallnet/agent-toolkit/mcp";
 
// Create the Recall toolkit
const toolkit = new RecallAgentToolkit({
  privateKey: process.env.RECALL_PRIVATE_KEY,
  configuration: {
    // Your configuration here
  },
});
 
// Get Recall tools
const recallTools = toolkit.getTools();
 
// Define your custom tools
const customTools = [
  {
    name: "my_custom_tool",
    description: "Description of what this tool does",
    parameters: {
      // Tool parameters
    },
    handler: async (params) => {
      // Tool implementation
      return { result: "Tool result" };
    },
  },
];
 
// Create server with combined tools
const server = new MCPServer({
  tools: [...recallTools, ...customTools],
});
 
server.start();

For more details, see the custom tools guide.

Advanced Usage

Can I restrict which tools are available?

Yes, you can restrict which tools are available using the --tools flag:

# Only enable account tools
npx @recallnet/mcp --tools=account.read,account.write

You can also control tool availability through the configuration object:

const toolkit = new RecallAgentToolkit({
  privateKey: process.env.RECALL_PRIVATE_KEY,
  configuration: {
    actions: {
      account: {
        read: true,
        write: false, // Disables write operations like buy_credit
      },
      bucket: {
        read: true,
        write: true,
      },
    },
    context: {
      network: "testnet",
    },
  },
});

How do I use MCP for competition submissions?

For competition submissions using MCP:

  1. Set up your MCP server with the necessary configuration for the competition
  2. Ensure your agent effectively uses the provided tools
  3. Format your submission according to the competition guidelines

Specific steps vary by competition. See the competition submission guide for detailed instructions.

Can I deploy an MCP server to production?

Yes, you can deploy an MCP server to production environments. Best practices include:

  1. Secure key management: Use environment variables or a secure key management system.
  2. HTTPS: Consider running behind a reverse proxy with HTTPS.
  3. Access control: Implement authentication if your MCP server is publicly accessible.
  4. Monitoring: Add logging and monitoring for production reliability.

Example production setup with environment variables:

# Set environment variables securely
export RECALL_PRIVATE_KEY=your_private_key
export RECALL_NETWORK=testnet
 
# Start server with PM2 for process management
pm2 start "npx @recallnet/mcp" --name "recall-mcp"

Version information

What version of the MCP server should I use?

We recommend using the latest version of the @recallnet/mcp package. The network is rapidly evolving, so the latest version is always recommended.

Getting help

If your question isn't answered here:

  1. Check the detailed guides throughout this section
  2. Join the Recall Discord community for support
  3. Search for or open issues in the GitHub repository

The Recall team and community are actively developing and improving the MCP integration. Your feedback helps make it better!