npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@iflow-mcp/picahq-mcp

v2.0.4

Published

A Model Context Protocol Server for Pica

Readme

Pica MCP Server

npm version

A Model Context Protocol (MCP) server that integrates with Pica, enabling seamless interaction with various third-party services through a standardized interface. This server provides direct access to platform integrations, actions, execution capabilities, and robust code generation capabilities.

Features

🔧 Tools

  • list_pica_integrations - List all available platforms and your active connections
  • search_pica_platform_actions - Search for available actions for a specific platform
  • get_pica_action_knowledge - Get detailed documentation for a specific action including parameters and usage
  • execute_pica_action - Execute API actions with full parameter support

Key Capabilities

🔌 Platform Integration

  • Connect to 200+ platforms through Pica
  • Manage multiple connections per platform
  • Access real-time connection status

🎯 Smart Intent Detection

  • Execute actions immediately (e.g. "read my last gmail email", "send a message to the slack channel #general")
  • Generate integration code (e.g. "build a form to send emails using gmail", "create a UI for messaging")
  • Intelligent context handling

🔒 Enhanced Security

  • Never exposes secrets in generated code
  • Uses environment variables: PICA_SECRET, PICA_[PLATFORM]_CONNECTION_KEY
  • Sanitized request configurations for production use

Direct Execution

  • Execute actions directly through the MCP interface
  • Support for all HTTP methods (GET, POST, PUT, DELETE, etc.)
  • Handle form data, URL encoding, and JSON payloads
  • Pass path variables, query parameters, and custom headers

🔒 Secure Authentication

  • All requests authenticated through Pica's secure proxy
  • No need to manage individual platform API keys
  • Environment variable configuration for security

Installation

npm install @picahq/mcp

Setup

Required

PICA_SECRET=your-pica-secret-key

Get your Pica secret key from the Pica dashboard.

Optional: Identity Scoping

You can scope connections to a specific identity (e.g., a user, team, or organization) by setting these optional environment variables:

PICA_IDENTITY=user_123
PICA_IDENTITY_TYPE=user

| Variable | Description | Values | |----------|-------------|--------| | PICA_IDENTITY | The identifier for the entity (e.g., user ID, team ID) | Any string | | PICA_IDENTITY_TYPE | The type of identity | user, team, organization, project |

When set, the MCP server will only return connections associated with the specified identity. This is useful for multi-tenant applications where you want to scope integrations to specific users or entities.

Usage

As a Standalone Server

npx @picahq/mcp

In Claude Desktop

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "pica": {
      "command": "npx",
      "args": ["@picahq/mcp"],
      "env": {
        "PICA_SECRET": "your-pica-secret-key",
        "PICA_IDENTITY": "user_123",
        "PICA_IDENTITY_TYPE": "user"
      }
    }
  }
}

Note: PICA_IDENTITY and PICA_IDENTITY_TYPE are optional. Only include them if you want to scope connections to a specific identity.

In Cursor

In the Cursor menu, select "MCP Settings" and update the MCP JSON file to include the following:

{
  "mcpServers": {
    "pica": {
      "command": "npx",
      "args": ["@picahq/mcp"],
      "env": {
        "PICA_SECRET": "your-pica-secret-key",
        "PICA_IDENTITY": "user_123",
        "PICA_IDENTITY_TYPE": "user"
      }
    }
  }
}

Note: PICA_IDENTITY and PICA_IDENTITY_TYPE are optional. Only include them if you want to scope connections to a specific identity.

Using the Remote MCP Server

The remote MCP server is available at https://mcp.picaos.com.

Using Docker

Build the Docker Image:

docker build -t pica-mcp-server .

Run the Docker Container:

docker run -e PICA_SECRET=your_pica_secret_key \
  -e PICA_IDENTITY=user_123 \
  -e PICA_IDENTITY_TYPE=user \
  pica-mcp-server

Note: PICA_IDENTITY and PICA_IDENTITY_TYPE are optional.

Deploy to Vercel

You can deploy this MCP server to Vercel for remote access:

  1. Install dependencies including Vercel adapter:

    npm install @vercel/mcp-adapter zod
  2. Deploy to Vercel:

    vercel
  3. Configure your MCP client to use the remote server:

    • For Cursor: https://your-project.vercel.app/api/mcp
    • For Claude/Cline: Use npx mcp-remote https://your-project.vercel.app/api/mcp

See DEPLOYMENT.md for detailed Vercel deployment instructions.

Examples for Inspiration

📋 Integration Code Generation

Build Email Form:

"Create me a React form component that can send emails using Gmail using Pica"

Linear Dashboard:

"Create a dashboard that displays Linear users and their assigned projects with filtering options using Pica"

QuickBooks Table:

"Build a paginatable table component that fetches and displays QuickBooks invoices with search and sort using Pica"

Slack Integration:

"Create a page with a form that can post messages to multiple Slack channels with message scheduling using Pica"

🚀 Direct Action Execution

Gmail Example:

"Get my last 5 emails from Gmail using Pica"

Slack Example:

"Send a slack message to #general channel: 'Meeting in 10 minutes' using Pica"

Shopify Example:

"Get all products from my Shopify store using Pica"

API Reference

Tools

list_pica_integrations

List all available Pica integrations and platforms. Always call this tool first to discover available platforms and connections.

Parameters: None

Returns:

  • connections: Array of active user connections with platform and key
  • availablePlatforms: Array of active platforms with name and category
  • summary: Statistics including connected and available counts

search_pica_platform_actions

Search for relevant actions on a specific platform using a query. Returns the top 5 most relevant actions based on vector similarity search.

Parameters:

  • platform (string, required): Platform name in kebab-case format (e.g., 'ship-station', 'shopify')
  • query (string, required): Search query describing what you want to do (e.g., 'search contacts', 'create invoice', 'send email')
  • agentType (enum, optional): Agent context type - either "execute" or "knowledge". Defaults to "knowledge" if not specified
    • Use "execute" when the user wants to perform an action
    • Use "knowledge" when the user wants to get information or write code

Returns:

  • actions: Array of up to 5 most relevant actions, each with:
    • actionId: Unique identifier for the action
    • title: Human-readable action name
    • method: HTTP method (GET, POST, etc.)
    • path: API endpoint path
  • metadata: Search metadata with platform, query, and result count

get_pica_action_knowledge

Get comprehensive documentation for a specific action. Must be called before execute_pica_action to understand requirements.

Parameters:

  • actionId (string, required): Action ID from search_pica_platform_actions
  • platform (string, required): Platform name in kebab-case format

Returns:

  • Detailed action documentation
  • Parameter requirements and structure
  • API-specific guidance and caveats
  • Usage examples and implementation notes

execute_pica_action

Execute a Pica action to perform operations on third-party platforms. Critical: Only call this when the user wants to execute an action, not when building applications.

Parameters:

  • platform (string, required): Platform name
  • actionId (string, required): Action ID from search_pica_platform_actions
  • connectionKey (string, required): Connection key for the platform
  • data (object, optional): Request body data
  • pathVariables (object, optional): Variables to replace in the path
  • queryParams (object, optional): Query parameters
  • headers (object, optional): Additional headers
  • isFormData (boolean, optional): Send as multipart/form-data
  • isFormUrlEncoded (boolean, optional): Send as URL-encoded form data

Returns:

  • requestConfig: Sanitized request configuration
  • responseData: Actual API response from the platform

Error Handling

The server implements comprehensive error handling:

  • ✅ Parameter validation for all tools
  • ✅ Connection verification before execution
  • ✅ Path variable validation and substitution
  • ✅ Graceful handling of API failures
  • ✅ Detailed error messages for debugging
  • ✅ MCP-compliant error responses

Security

  • 🔐 Required environment variable: PICA_SECRET
  • 🔐 Optional environment variables: PICA_IDENTITY, PICA_IDENTITY_TYPE
  • 🛡️ All requests authenticated through Pica's secure proxy
  • 🔒 No direct platform API key management needed
  • 🚫 Secrets never exposed in responses
  • ✅ Request configurations sanitized
  • 🔍 Sensitive data filtered from logs
  • 🛡️ Input validation and sanitization

License

MIT

Support

For support, please contact [email protected] or visit https://picaos.com