1. Conduid
  2. Developer Tools
  3. mcp
MCP server · Developer Tools

mcp

Model Context Protocol server that exposes Elephant data graph tooling

Unclaimed devtools
39Low

Scored 10 days ago · breakdown

About mcp

mcp is an MCP server published by git+elephant-xyz in the Developer Tools category: model Context Protocol server that exposes Elephant data graph tooling.

Install

Install
npx @elephant-xyz/mcp
Claude Code
claude mcp add elephant-mcp -- npx -y @elephant-xyz/mcp
npx
npx -y @elephant-xyz/mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (19)

analyzePlaceColocationReturns diagnostic bounded occupied-cell evidence for one exact Overture category pair, including conditioned spatial evidence, raw embedding distance, and immutable places-table provenance when the catalog IPNS path resolves. It explicitly returns no calibrated semantic percentile and remains non-publishable; discovery is the publishable Class H source unless separate auditable percentile evidence exists.

Parameters not published.

discoverPlaceColocationCandidatesAccepts `{ county }` only, embeds every eligible category, and calibrates raw semantic distance against all eligible unordered category pairs before applying the `distance >= 0.35 AND inclusive percentile >= 0.80` guard. It returns bounded top-32/top-5 evidence plus corpus, full-distribution, spatial-ledger, and immutable table-identity digests. Discovery fails closed for publication if immutable table provenance is unavailable or inconsistent. The percentile is relative semantic distance—not statistical improbability or a publish decision.

Parameters not published.

executeDatasetQueryPlanExecutes a typed `count`, `share`, or `average` plan over properties or permits. Callers cannot provide SQL, URLs, joins, expressions, or raw-row projections; values are parameter-bound and row/group/time budgets fail closed.

Parameters not published.

findPropertiesInAreaReturns properties whose centroid falls inside a user-supplied bounding box or polygon, sourced from the derived geo index.

Parameters not published.

getDatasetQueryCapabilitiesReturns the per-county allowlisted aggregate fields, operators, measures, hard budgets, null semantics, and query-table provenance for bounded dataset access.

Parameters not published.

getOracleDatasetInfoPer-county dataset summary (property count, export time, source) plus per-source coverage `datasets[]` (count, %, date range). When the configured query-table and coverage artifacts match the canonical county catalog, the exact appraisal row count comes from that small catalog-bound coverage snapshot; mismatches fail closed to the existing query-table count.

Parameters not published.

getOraclePropertyFetches the full consolidated record for one property (by parcel id, property id, or CID).

Parameters not published.

getPlaceQuerySchemaReturns the real places columns, exact `queryPlaces` contract, safety limits, release/attribution/licence-gate provenance, and honest null completeness for a county.

Parameters not published.

getPropertyPermitsOn-demand permit harvest for a parcel.

Parameters not published.

getPropertyQuerySchemaReturns the query-table's columns and types for a county so callers know what they can query.

Parameters not published.

Show all 19 tools
getPropertySchemaFetches the full JSON Schema for a specific property and class combination.

Parameters not published.

getVerifiedScriptExamplesReturns a list of working examples of the code, that maps data to the Elephant schema.

Parameters not published.

listClassesByDataGroupLists classes attached to an Elephant data group, including friendly names and descriptions.

Parameters not published.

listOraclePropertiesPaginated per-county property listing.

Parameters not published.

listPropertiesByClassNameReturns schema property keys for a class (excluding transport-only fields).

Parameters not published.

listPublishedCountiesEnumerates Oracle's canonical catalog of published counties, stable county FIPS identities, public data URLs (including nullable `placesTableUrl`), update timestamps, and catalog revision. Use this for county and places-availability discovery instead of a hard-coded list.

Parameters not published.

queryPlacesRuns a structured, read-only query over a county's catalog-authorized Overture places parquet. Supports category/hierarchy/name/location/status/hosted-service/confidence filters, count mode, deterministic pages, and grouped `taxonomy_primary` aggregates; callers cannot submit SQL or URLs.

Parameters not published.

queryPropertiesRuns a read-only SQL `SELECT`/`WITH` over a county's query-table (view `properties`) via embedded DuckDB, for arbitrary counts, filters, and aggregates over owner, address, zip, value, acreage, material, and more.

Parameters not published.

sumPropertyValueInAreaSums the current AVM value of properties whose centroid falls inside a bounding box or polygon.

Parameters not published.

Ask AI

✦

Ask AI about mcp

Powered by Claude · Grounded in docs

I know everything about mcp. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

4 checks have not been run yet.

README

Elephant MCP Server

Elephant MCP connects Claude-compatible clients to the Elephant data graph, exposing discoverable tools for listing data groups, classes, and individual property schemas. The server is published on npm as @elephant-xyz/mcp.

Embedding Provider: The getVerifiedScriptExamples tool uses text embeddings for semantic code search. The server supports two embedding providers:

  • OpenAI (preferred when OPENAI_API_KEY is set) - Uses text-embedding-3-small with 1024 dimensions
  • AWS Bedrock (automatic fallback) - Uses amazon.titan-embed-text-v2 via IAM authentication

When running on AWS, the server automatically uses Bedrock if no OpenAI key is provided.

🚀 Prompt Recommendations

For best results with Elephant MCP, always specify the Data Group you're working on in your prompts and add use elephant mcp at the end.

Example prompts:

"I'm working on the 'County' data group. Can you help me explore the available classes? use elephant mcp"

"What properties are available in the 'property' class? I'm working with the 'County' data group. use elephant mcp"

This helps the AI understand which data context to use and ensures it leverages the Elephant MCP tools effectively.

Install MCP Server

Why Elephant?

  • Ready-to-use npx launcher compatible with Claude, Cursor, VS Code, Gemini CLI, and other MCP clients.
  • Tools to enumerate Elephant data groups, related classes, and full JSON Schema fragments.
  • Structured MCP logging to stream diagnostics into every connected client.

Available Tools

  • listClassesByDataGroup – Lists classes attached to an Elephant data group, including friendly names and descriptions.
  • listPropertiesByClassName – Returns schema property keys for a class (excluding transport-only fields).
  • getPropertySchema – Fetches the full JSON Schema for a specific property and class combination.
  • getVerifiedScriptExamples – Returns a list of working examples of the code, that maps data to the Elephant schema.

Supported MCP Clients

Cursor

Install MCP Server

  1. Ensure Node.js 22.18+ is installed.
  2. Cursor will open a configuration screen pre-filled with:
    {
      "command": "npx",
      "args": ["-y", "@elephant-xyz/mcp@latest"],
      "env": {
        // Option 1: Use OpenAI embeddings
        "OPENAI_API_KEY": "sk-your-openai-key",
        // Option 2: Use AWS Bedrock (omit OPENAI_API_KEY)
        // "AWS_REGION": "us-east-1"  // optional, defaults to us-east-1
      },
    }
    
    For OpenAI, replace the placeholder with your actual key. For AWS Bedrock, remove the OPENAI_API_KEY line and ensure your environment has valid AWS credentials (IAM role, environment variables, or AWS credentials file).
  3. Save and toggle the Elephant connection inside Cursor's MCP panel.
  4. If you are hacking on a local checkout, switch the command to npm start and set cwd to your repository path.

Visual Studio Code

  1. Install the Model Context Protocol extension.
  2. Accept the pre-populated install flow above or add manually under Settings → MCP → Servers with:
    • OpenAI: OPENAI_API_KEY=sk-your-openai-key npx -y @elephant-xyz/mcp@latest
    • AWS Bedrock: npx -y @elephant-xyz/mcp@latest (uses IAM credentials from environment)
  3. Reload VS Code and enable the Elephant server in the MCP panel.

Claude Code

macOS/Linux with OpenAI:

claude mcp add elephant --env OPENAI_API_KEY=sk-your-openai-key -- npx -y @elephant-xyz/mcp@latest

macOS/Linux with AWS Bedrock (uses IAM credentials):

claude mcp add elephant -- npx -y @elephant-xyz/mcp@latest

Restart Claude Code after adding the server so the tools appear in the @tools palette.

OpenAI Codex

  • CLI setup

    With OpenAI:

    codex mcp add elephant --env OPENAI_API_KEY=sk-your-openai-key -- npx -y @elephant-xyz/mcp@latest
    

    With AWS Bedrock:

    codex mcp add elephant -- npx -y @elephant-xyz/mcp@latest
    

    You can explore additional options with codex mcp --help. Inside the Codex TUI, run /mcp to view currently connected servers.

  • config.toml setup Edit ~/.codex/config.toml (or open MCP settings → Open config.toml from the IDE extension) and add:

    For OpenAI:

    [mcp.elephant]
    command = "npx"
    args = ["-y", "@elephant-xyz/mcp@latest"]
    env = { OPENAI_API_KEY = "sk-your-openai-key" }
    

    For AWS Bedrock:

    [mcp.elephant]
    command = "npx"
    args = ["-y", "@elephant-xyz/mcp@latest"]
    # Uses IAM credentials from environment; optionally set AWS_REGION
    

    Save the file and restart Codex to load the new server.

Gemini CLI

Create (or edit) .gemini/settings.json in your project and add:

With OpenAI:

{
  "mcpServers": {
    "elephant": {
      "command": "npx",
      "args": ["-y", "@elephant-xyz/mcp@latest"],
      "env": {
        "OPENAI_API_KEY": "sk-your-openai-key",
      },
    },
  },
}

With AWS Bedrock:

{
  "mcpServers": {
    "elephant": {
      "command": "npx",
      "args": ["-y", "@elephant-xyz/mcp@latest"],
      // Uses IAM credentials from environment
    },
  },
}

Restart Gemini CLI or run gemini tools sync to pick up the new server.

Configuration

The stdio transport means no port or server identity flags are required. Environment variables handled by src/config.ts:

Variable Description Default
OPENAI_API_KEY OpenAI API key for embeddings. When set, OpenAI is used; otherwise falls back to AWS Bedrock. (optional)
AWS_REGION AWS region for Bedrock API calls. us-east-1
LOG_LEVEL Pino log level (error, warn, info, debug). info

AWS Bedrock Authentication

When using AWS Bedrock (no OPENAI_API_KEY set), the server authenticates using the standard AWS credential chain:

  1. Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
  2. Shared credentials file (~/.aws/credentials)
  3. ECS/Lambda container credentials (AWS_CONTAINER_CREDENTIALS_*)
  4. IAM instance role (when running on EC2/ECS/Lambda)

Ensure your IAM role or user has the bedrock:InvokeModel permission and access to the amazon.titan-embed-text-v2:0 embedding model in the configured AWS_REGION. In some regions, you must explicitly request access to this model in the AWS Bedrock Console before it can be invoked.

Important: At least one embedding provider must be configured. If neither OPENAI_API_KEY nor AWS credentials are available, the getVerifiedScriptExamples tool will return an error prompting you to configure credentials.

Credential Verification

At startup, the server verifies embedding provider credentials:

  • For OpenAI: Checks that OPENAI_API_KEY is set
  • For AWS Bedrock: Resolves credentials through the full AWS credential provider chain and logs the detected source

The verification result is logged and included in the MCP startup message for debugging.

Database Compatibility

The embedding database is automatically rebuilt when switching between embedding models with different vector dimensions (e.g., switching from a 1536-dimension model to a 1024-dimension model). This ensures the getVerifiedScriptExamples tool works correctly after model changes. The server will re-index all verified scripts after a rebuild.

Zod compatibility note: this server and its dependencies require zod v3. Installs will fail if a v4 copy is hoisted into node_modules; the postinstall script enforces the v3 constraint to avoid runtime errors such as keyValidator._parse is not a function.

Need to Contribute?

Development setup, testing, and release workflows live in CONTRIBUTING.md.

Support

Open an issue with your Node.js version, client details, and any relevant log output if you run into trouble. We're happy to help you get connected.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About mcp

How do I install mcp?

Run npx @elephant-xyz/mcp, then add the server to your MCP client's configuration.

Is mcp safe to use with an AI agent?

Its trust score is 39 out of 100 (low). It passes 1 of the 2 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is mcp still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.