Seed MCP Server
Enables creating and inspecting Seed tables and relationships through the Seed backend HTTP API.
README
Seed MCP Server
MCP server for creating and inspecting Seed tables and relationships through the existing seed-backend HTTP API.
Setup
npm install
npm run build
Configuration
Set either an access token:
SEED_API_BASE=http://localhost:3007
SEED_ACCESS_TOKEN=...
Or login credentials:
SEED_API_BASE=http://localhost:3007
SEED_ORG=visual-sql
SEED_EMAIL=admin@admin.com
SEED_PASSWORD=admin
For organization listing, set a Maint token or Maint password:
SEED_MAINT_ACCESS_TOKEN=...
# or
SEED_MAINT_PASSWORD=...
Run
npm start
Tools
seed_get_access_tokenseed_list_orgsseed_register_orgseed_create_orgseed_update_orgseed_delete_orgseed_list_tablesseed_get_tableseed_create_tableseed_add_relationshipseed_list_framesseed_get_frameseed_create_frameseed_update_frameseed_delete_framesseed_list_viewsseed_get_viewseed_create_viewseed_update_viewseed_delete_viewsseed_list_documentsseed_add_documentsseed_add_mock_dataseed_delete_documentsseed_grant_permission
seed_get_access_token
Get a Seed API access token for either a regular organization user or Maint. The MCP server prompts for credentials through the client instead of accepting them as tool arguments.
User token:
{ "type": "user" }
Maint token:
{ "type": "maint" }
seed_grant_permission
Grant a role access to a table/resource by creating a row in permissions and linking it to the role.
{
"resourceId": "accounts",
"access": 15,
"roleName": "admin"
}
Access bitmask: create 1, read 2, update 4, delete 8, full CRUD 15.
seed_create_frame
Create a frame on top of an existing table. Frames select the fields and relations that a view can render.
{
"name": "accounts_frame",
"table": "accounts",
"label": "Accounts",
"fields": [
{ "name": "name", "type": "string", "label": "Name" },
{ "name": "accountType", "type": "enum", "label": "Account Type" }
],
"relations": []
}
Optional filter/order inputs are JSON strings: fieldFiltersJson, fieldOrderJson, and relationFiltersJson.
For user-scoped frames, use relationFiltersJson with Seed's current-user sentinel. The backend treats
"___current___" as the logged-in user's email when the dot-walk path ends at a related users.email
field. The path uses Seed's generated join table name:
{
"relationFiltersJson": "{\"[Op.and]\":[{\"users_contacts_user.email\":{\"[Op.like]\":\"___current___\"}}]}"
}
Join table names are generated as <lexicographically larger table>_<lexicographically smaller table>_<relationName>.
For example, a contacts.user -> users relation uses users_contacts_user.email, while
voice_notes.user -> users uses voice_notes_users_user.email.
seed_create_view
Create a view on top of an existing frame.
{
"name": "accounts_web_view",
"frame": "accounts_frame",
"label": "Accounts",
"layoutJson": "{\"device\":\"web\",\"group\":\"CRM\",\"list\":{\"type\":\"default\"}}"
}
Optional role inputs are JSON strings: viewRolesJson and editRolesJson.
seed_list_documents
List documents from a table, usually to inspect data or find ids for relations.
{
"tableName": "accounts",
"pageNumber": 0,
"pageSize": 25
}
seed_add_documents
Add exact Seed document payloads. Use this when rows include relations.
{
"tableName": "contacts",
"documents": [
{
"fields": {
"firstName": "Avery",
"lastName": "Stone",
"email": "avery@example.com"
},
"relations": {
"account": {
"type": "OneToOne",
"table": "accounts",
"id": "1"
}
}
}
]
}
seed_add_mock_data
Add simple field-only mock rows. Use seed_add_documents when you need relations.
{
"tableName": "accounts",
"rows": [
{
"name": "Horizon Capital",
"accountType": "Company",
"vertical": "Dealmakers"
}
]
}
seed_delete_documents
Delete documents by id. Useful for cleaning up generated mock data.
{
"tableName": "accounts",
"documentIds": ["1", "2"]
}
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.