Ed Fi SDK
БесплатноНе проверенEnables AI assistants to explore Ed-Fi API endpoints, schemas, and generate entity relationship diagrams, aiding development of Ed-Fi client applications.
Описание
Enables AI assistants to explore Ed-Fi API endpoints, schemas, and generate entity relationship diagrams, aiding development of Ed-Fi client applications.
README
Tools for use with AI Assistants when developing client applications that interact with Ed-Fi APIs.
[!NOTE] At this time, there is a single tool available: an MCP server. Given that is about information discovery, but not data access, MCP might not be the right choice. We will also explore use of CLI tools and/or Skills for similar purposes.
Features
- Version Selection: Choose from Ed-Fi Data Standard versions 4.0, 5.0, 5.1, or 5.2
- Custom URL Support: Configure alternative URLs for custom Ed-Fi Data Standard instances
- OpenAPI Integration: Automatically fetches and parses OpenAPI specifications from Ed-Fi APIs
- Intelligent Caching: Caches OpenAPI specs locally to reduce network requests and improve response times
- Endpoint Discovery: Search and explore available API endpoints
- Schema Exploration: Browse and understand data models and schemas
- Detailed Documentation: Get comprehensive information about endpoints and data structures
- 🆕 Schema Visualization: Generate entity relationship diagrams in multiple formats (Mermaid, PlantUML, Graphviz)
- 🆕 Interactive Entity Analysis: Explore relationships between core entities (students, schools, assessments, etc.)
- 🆕 Domain Filtering: Filter diagrams by entity type or domain area
- 🆕 Multiple Export Formats: Export diagrams as text for use in various visualization tools
- 🆕 Prompt Documentation: Access comprehensive guides and best practices through AI prompts
Documentation & Prompts
The MCP server includes built-in prompt templates that provide detailed guidance on working with Ed-Fi APIs:
- ed-fi-authentication-guide: Complete OAuth 2.0 authentication guide with code examples
- ed-fi-api-quickstart: Quick start guide for common API operations (GET, POST, PUT, DELETE)
- ed-fi-data-validation: Data validation strategies and error handling techniques
These prompts can be accessed through any MCP-compatible AI assistant and provide contextual help for Ed-Fi development tasks.
For more information on using this server, see:
AI Assistant Integration
[!WARNING] These installation instructions are not ready for usage yet.
- Written by Copilot and not verified, other than the VS Code instructions.
- They will only work once
ed-fi-sdk-mcphas been published to npmjs.com.
This MCP server can be integrated with popular AI coding assistants to provide Ed-Fi Data Standard context during development.
Claude Desktop
Add the following to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"ed-fi-data-standard": {
"command": "npx",
"args": ["ed-fi-sdk-mcp"],
"env": {}
}
}
}
VS Code with Cline
- Install the Cline extension in VS Code
- Configure the MCP server in Cline's settings:
- Command:
npx ed-fi-sdk-mcp - Transport: stdio
- Command:
Continue.dev
Add the following to your Continue configuration:
{
"mcp": {
"servers": {
"ed-fi-data-standard": {
"command": "npx",
"args": ["ed-fi-sdk-mcp"]
}
}
}
}
Cursor
Configure the MCP server in Cursor's MCP settings:
- Server name: ed-fi-data-standard
- Command:
npx ed-fi-sdk-mcp
GitHub Copilot
VS Code
Ensure you have the GitHub Copilot and GitHub Copilot Chat extensions installed
Create or update your VS Code settings file (
.vscode/mcp.jsonin your workspace or global settings):{ "servers": { "ed-fi-sdk-mcp": { "type": "stdio", "command": "npx", "args": [ "ed-fi-sdk-mcp" ] } }, "inputs": [] }Restart VS Code and use
@ed-fi-data-standardin GitHub Copilot Chat to access Ed-Fi Data Standard tools
Visual Studio
- Ensure you have the GitHub Copilot extension installed
- See instructions in Use MCP servers.
Custom Installation
If you've installed the package globally or locally, you can also use:
# Global installation
npm install -g ed-fi-sdk-mcp
# Then reference it directly
ed-fi-mcp-server
Available Tools
The MCP server provides the following tools:
1. list_available_versions
Lists all supported Ed-Fi Data Standard versions and their corresponding OpenAPI specification URLs.
2. set_data_standard_version
Loads the OpenAPI specification for a specific Ed-Fi Data Standard version.
Parameters:
version(required): One of "4.0", "5.0", "5.1", or "5.2"
3. set_custom_data_standard_url
Loads the OpenAPI specification from a custom URL (e.g., for custom Ed-Fi implementations).
Parameters:
url(required): The URL to the custom OpenAPI specificationname(required): A descriptive name for this custom data standard
4. search_endpoints
Searches for API endpoints that match a query term.
Parameters:
query(required): Search term (e.g., "student", "school", "assessment")
5. get_endpoint_details
Gets detailed information about a specific API endpoint.
Parameters:
path(required): The API endpoint path (e.g., "/ed-fi/students")method(optional): HTTP method (default: "GET")
6. search_schemas
Searches for data models/schemas that match a query term.
Parameters:
query(required): Search term (e.g., "Student", "School", "Assessment")
7. get_schema_details
Gets detailed information about a specific data model/schema.
Parameters:
schemaName(required): The name of the schema
🎨 Schema Visualization Tools
8. generate_entity_diagram
Generate entity relationship diagrams from the OpenAPI specification.
Parameters:
format(optional): Diagram format - "mermaid", "plantuml", or "graphviz" (default: "mermaid")includeProperties(optional): Include entity properties in diagram (default: true)includeDescriptions(optional): Include entity descriptions (default: false)filterDomains(optional): Array of domain names to filter by (e.g., ["student", "school"])maxEntities(optional): Maximum number of entities to include (default: 20)
9. list_entity_relationships
List relationships between entities in the current specification.
Parameters:
entityName(optional): Show relationships for a specific entity onlyrelationshipType(optional): Filter by relationship type ("one-to-one", "one-to-many", "many-to-one", "many-to-many")
10. get_entities_by_domain
Get entities grouped by domain areas (Student, School, Staff, Assessment, etc.).
Parameters:
domain(optional): Get entities for a specific domain only
11. export_diagram_as_text
Export a diagram as text that can be rendered by various visualization tools.
Parameters:
format(required): Diagram format - "mermaid", "plantuml", or "graphviz"filename(optional): Filename to save the diagram textfilterDomains(optional): Filter entities by domain areasmaxEntities(optional): Maximum number of entities to include (default: 15)
Configuration
The MCP server supports the following environment variables for configuration:
Environment Variables
ED_FI_CUSTOM_BASE_URL(optional): Set a custom base URL for Ed-Fi API instances. When set, standard version URLs will be rewritten to use this base instead ofhttps://api.ed-fi.org.Example:
ED_FI_CUSTOM_BASE_URL=https://my-ed-fi-instance.org/v7.3ED_FI_CACHE_DIR(optional): Specify a custom directory for caching OpenAPI specifications. Defaults to the system temporary directory.Example:
ED_FI_CACHE_DIR=/home/user/.cache/ed-fi-mcp
Example Usage with Custom Configuration
# Using a custom Ed-Fi instance
ED_FI_CUSTOM_BASE_URL=https://my-ed-fi.org/v7.3 npx ed-fi-sdk-mcp
# Custom cache directory
ED_FI_CACHE_DIR=/opt/cache/ed-fi npx ed-fi-sdk-mcp
# Both options together
ED_FI_CUSTOM_BASE_URL=https://my-ed-fi.org/v7.3 ED_FI_CACHE_DIR=/opt/cache/ed-fi npx ed-fi-sdk-mcp
Supported Ed-Fi Data Standard Versions
Example Workflow
Start by listing available versions: Use
list_available_versionsto see all supported Ed-Fi Data Standard versions.Select a version or custom URL:
- Use
set_data_standard_versionwith your desired version (e.g., "5.2") for standard Ed-Fi API. - Use
set_custom_data_standard_urlto load from a custom Ed-Fi implementation.
- Use
Explore endpoints: Use
search_endpointsto find API endpoints related to your needs (e.g., search for "student").Get endpoint details: Use
get_endpoint_detailsto learn about request/response formats for specific endpoints.Explore data models: Use
search_schemasandget_schema_detailsto understand the data structures.🆕 Visualize entity relationships: Use
generate_entity_diagramto create visual representations of the data model.🆕 Analyze entity domains: Use
get_entities_by_domainto understand how entities are organized by functional areas.🆕 Export diagrams: Use
export_diagram_as_textto save diagrams for documentation or further analysis.
Custom Ed-Fi Instance Example
If you're working with a custom Ed-Fi implementation, you can load specifications directly:
Use set_custom_data_standard_url with:
url: "https://your-ed-fi.org/api/metadata/data/v3/resources/swagger.json"name: "My Custom Ed-Fi Instance"
Continue with normal workflow (search_endpoints, etc.)
Running against saved swagger.json files (no ODS/API required)
When the Data Standard / API combination you need isn't hosted on api.ed-fi.org — for example DS 4.0 served by API v7.3.2 — you can capture the swagger.json files from a one-time local install and share them. Others can then point the MCP server at the saved files without standing up their own ODS/API instance.
Place both swagger files in a directory:
swagger/resources-swagger_ODS7.3.2_DS4.0.0.json swagger/descriptors-swagger_ODS7.3.2_DS4.0.0.jsonStart a static file server in that directory and leave the terminal open while using the MCP server:
cd swagger npx serve -p 8000Verify in a browser:
http://localhost:8000/resources-swagger_ODS7.3.2_DS4.0.0.jsonshould return JSON.In an MCP-aware chat (Agent mode), call:
set_custom_data_standard_url url: http://localhost:8000/resources-swagger_ODS7.3.2_DS4.0.0.json name: Ed-Fi 7.3.2 / DS 4.0 (from JSON file)Use the normal tools —
search_endpoints,get_schema_details edFi_student,generate_entity_diagram, etc.
[!NOTE] The MCP server fetches the spec over HTTP, so a
file://path or raw filesystem path will not work — the static server step is required. To switch from resources to descriptors, callset_custom_data_standard_urlagain with the other file's URL; the previous spec is replaced.
Visualization Workflow Example
For data architects working with Ed-Fi schemas:
Load the specification:
set_data_standard_version("5.2")Explore domain structure:
get_entities_by_domain()Generate a student-focused diagram:
generate_entity_diagram({ "format": "mermaid", "filterDomains": ["student", "school"], "maxEntities": 15 })Examine specific relationships:
list_entity_relationships({ "entityName": "edfi_student" })Export for documentation:
export_diagram_as_text({ "format": "plantuml", "filename": "student-entities.puml", "filterDomains": ["student"] })
The generated diagrams can be used in:
- GitHub/GitLab documentation (Mermaid)
- Technical documentation (PlantUML)
- System architecture documents (Graphviz)
- Presentation materials (exported as images)
License
Copyright (c) 2025, Ed-Fi Alliance, LLC. All rights reserved.
This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.
from github.com/Ed-Fi-Exchange-OSS/Ed-Fi-SDK-for-AI-Assistants
Установить Ed Fi SDK в Claude Desktop, Claude Code, Cursor
unyly install ed-fi-sdk-mcpСтавит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.
Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh
Или настроить вручную
Выполни в терминале:
claude mcp add ed-fi-sdk-mcp -- npx -y ed-fi-sdk-mcpFAQ
Ed Fi SDK MCP бесплатный?
Да, Ed Fi SDK MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Ed Fi SDK?
Нет, Ed Fi SDK работает без API-ключей и переменных окружения.
Ed Fi SDK — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Ed Fi SDK в Claude Desktop, Claude Code или Cursor?
Открой Ed Fi SDK на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare Ed Fi SDK with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
