Medialyst MCP
Medialyst exposes a remote MCP server for agents that need to search news, create media lists, inspect media-list tables, update rows and columns, and create share links.
The site docs are for setup. The MCP server is the source of truth for agents while they work.
Endpoint
Production:
https://medialyst.ai/api/mcpLocal development:
http://localhost:3000/api/mcpThe server uses MCP Streamable HTTP with API-key auth:
Authorization: Bearer <MEDIALYST_API_KEY>OAuth is not required for v1.
Required Scopes
Use the smallest key that covers the workflow:
| Scope | Needed for |
|---|---|
news:search | Searching recent news coverage |
media_lists:read | Listing, reading, and inspecting media lists |
media_lists:write | Creating lists, mutating tables, deleting lists, and creating share links |
Keep keys out of prompts
Store API keys in environment variables or your agent client's secret storage. Do not paste raw keys into a chat thread or commit them to a repo.
Runtime Docs Tools
Agents should not rely on stale copied schemas. After connecting, they should ask the MCP server how to use the current contract.
| Tool | Purpose |
|---|---|
get_usage_guide | Current workflow guidance by topic |
get_tool_reference | Current tool examples, scope requirements, and optional generated schemas |
Recommended first calls:
{
"topic": "getting_started",
"detail": "short"
}Then, before a mutation:
{
"tool_name": "apply_table_action",
"detail": "full"
}Use include_schema: true only when examples are not enough. Some table-action schemas are large.
Tool Surface
| Tool | Scope | Use it for |
|---|---|---|
get_usage_guide | API key only | Read current operating guidance |
get_tool_reference | API key only | Read examples and optional schemas |
search_news | news:search | Find fresh articles and bylines |
create_media_list | media_lists:write | Create a list from articles, URLs, keywords, or empty state |
list_media_lists | media_lists:read | Find existing lists |
get_media_list | media_lists:read | Read metadata, columns, settings, and optional rows |
inspect_table | media_lists:read | Read bounded previews or enrichment health |
read_full_values | media_lists:read | Read exact values for a small row/column slice |
preview_column_render | media_lists:read | Preview formula, AI, send, or template-bearing columns |
apply_table_action | media_lists:write | Mutate columns, cells, rows, views, run state, and article imports |
create_share_link | media_lists:write | Create public read-only share links |
delete_media_list | media_lists:write | Delete a list after explicit user intent |
Agent Operating Model
Media lists are workflow tables. The table is the deliverable.
Good agents follow this pattern:
- Call
get_usage_guide. - Search or list existing media lists.
- Create or select a list.
- Inspect the table before edits.
- Use returned IDs from tool responses.
- Preview template-bearing columns before applying them.
- Apply one focused table action at a time.
- Verify with
get_media_listorinspect_table. - Share only when the user asks for a public link.
Fewer, better, evidence-backed
The agent should curate article results before creating rows. More rows are not automatically better. The goal is a focused list of journalists who actually cover the story.
Codex
Add this to ~/.codex/config.toml:
[mcp_servers.medialyst]
url = "https://medialyst.ai/api/mcp"
bearer_token_env_var = "MEDIALYST_API_KEY"Then verify inside Codex:
/mcpClaude Code
Claude Code can connect to HTTP MCP servers. A user-scoped setup looks like:
claude mcp add-json medialyst '{
"type": "http",
"url": "https://medialyst.ai/api/mcp",
"headers": {
"Authorization": "Bearer ${MEDIALYST_API_KEY}"
}
}' --scope userFor rotating keys, use your client's dynamic header helper instead of hardcoding a header value.
Stdio-Only Clients
For OpenClaw and other MCP-compatible agents, use their remote HTTP MCP configuration when they can send custom headers. If an agent cannot connect to remote HTTP MCP servers or cannot send custom headers, bridge through mcp-remote:
{
"mcpServers": {
"medialyst": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://medialyst.ai/api/mcp",
"--header",
"Authorization: Bearer ${MEDIALYST_API_KEY}"
]
}
}
}Example Workflow
Ask your agent:
Search recent AI infrastructure coverage, create a media list from the best articles, add a Notes column, and share the list.Expected sequence:
get_usage_guidesearch_newscreate_media_listinspect_tableget_tool_referenceforapply_table_actionapply_table_actionwithcreate_columnapply_table_actionwithpatch_cellsif notes are knowncreate_share_linkafter the user asks to share
Troubleshooting
| Symptom | What to check |
|---|---|
401 Unauthorized | The key is missing, malformed, revoked, or not sent on every request |
403 Forbidden | The key is valid but lacks the required scope or fails an IP allowlist |
402 Payment Required | Credits or plan limits block the operation |
| Validation errors | Call get_tool_reference for the failing tool |
| Stale IDs | Call get_media_list or inspect_table again |
| Client cannot attach headers | Use the mcp-remote stdio bridge |
Agent Skill
For open-source agents, use a small bootstrap skill that tells the agent how to connect and when to call the runtime docs tools. Keep detailed schemas on the server.