{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_cz99hjytepe3","handle":"origingrid","url":"https://wellknown.network/agents/origingrid","links":{"self":"https://wellknown.network/agents/origingrid/record.json","html":"https://wellknown.network/agents/origingrid","markdown":"https://wellknown.network/agents/origingrid/record.md","api":"https://wellknown.network/api/v1/agents/origingrid","status":"https://wellknown.network/api/v1/agents/origingrid/status","claim":"https://wellknown.network/agents/origingrid/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/origingrid/claim.json","badge":"https://wellknown.network/agents/origingrid/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/origingrid/history","tools":"https://wellknown.network/api/v1/agents/origingrid/tools"},"ard":{"identifier":"urn:air:www.origingrid.net:server:origingrid","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"OriginGrid","summary":"AI Agent Source Registry. 288K+ curated sources for agentic search and discovery.","description":"AI Agent Source Registry. 288K+ curated sources for agentic search and discovery.","publisher":{"name":"net.origingrid","url":null},"homepage":null,"repository":"https://github.com/ZHIJAC/origingrid","version":"1.0.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://www.origingrid.net/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-07-30T07:41:09.074249Z","publishedAt":"2026-07-30T07:41:09.074249Z","registryName":"net.origingrid/origingrid-mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"data.web-search","name":"Web Search","confidence":0.583,"provenance":"derived"},{"slug":"research.academic","name":"Academic Research","confidence":0.525,"provenance":"derived"}],"categories":["data","research"],"language":"en"},"observed":{"status":"recently_observed","statusReason":"Responded 33h ago; 2 recent checks failed (latest 13h ago).","lastOkAt":"2026-10-08T19:23:16.547Z","lastProbedAt":"2026-10-09T15:31:19.440Z","statusComputedAt":"2026-10-09T15:33:58.765Z","reliability30d":{"probes":107,"successRate":0.9813,"p50Ms":158,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":106,"ok":104,"authBoundaryOk":0,"serviceOk":104,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T15:31:19.440Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"fetch failed","detail":null},{"at":"2026-10-09T01:26:35.938Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"fetch failed","detail":null},{"at":"2026-10-08T19:23:16.547Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":152,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-08T13:22:45.688Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":166,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-08T07:25:58.566Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":151,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-08T01:22:02.148Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":153,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-07T18:26:12.795Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":151,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-07T12:29:44.282Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":292,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-07T05:25:55.828Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":151,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}},{"at":"2026-10-06T23:26:41.958Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":161,"error":null,"detail":{"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"toolCount":19,"toolsHash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","serverName":"origingrid","capabilities":["tools"],"serverVersion":"0.3.0","protocolVersion":"2025-11-25"}}],"tools":[{"name":"origingrid_search","description":"Search for AI agent information sources. Returns `structuredContent.sources[]` with {source_id, name, url, region, difficulty, score}. Read the array directly —"},{"name":"origingrid_get_source","description":"Get details for a single information source by its source_id"},{"name":"origingrid_list","description":"List available information sources, optionally filtered by topic and/or region. Supports `limit`/`offset` pagination; the response reports the **total** number "},{"name":"origingrid_contribute","description":"Submit a new URL as a source-card candidate (anonymous, pending review). [ASRP: Use AFTER finding a URL that is useful but not yet in the registry.]"},{"name":"origingrid_fetch","description":"Fetch first-hand content from a URL. Returns `structuredContent.data` with {title, content, url, cache_hit, fetched_at}. Read `.data.content` directly — the met"},{"name":"origingrid_stats","description":"Get OriginGrid registry statistics"},{"name":"origingrid_search_similar","description":"Find sources similar to a known source. [ASRP: Use AFTER finding a relevant source to expand your search scope before calling origingrid_plan.]"},{"name":"origingrid_search_by_region","description":"Search sources filtered by region (cn/global/academic/etc) and optionally by query. [ASRP: Use for region-specific discovery. Narrower than origingrid_search, u"},{"name":"origingrid_approve_contribution","description":"Approve a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set)"},{"name":"origingrid_reject_contribution","description":"Reject a pending source-card contribution (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Optionally pass `reason`. Review loop: list pen"},{"name":"origingrid_pending_contributions","description":"List pending source-card contributions awaiting admin review (admin only; requires admin_token when ORIGINGRID_ADMIN_TOKEN is set). Review loop: list pending → "},{"name":"origingrid_discover","description":"Discover first-hand information sources for a topic from the OriginGrid local registry — no external search engine involved. Optionally narrow by topic and/or r"},{"name":"origingrid_resolve","description":"Resolve a natural-language query into directly executable first-hand source URLs. Returns structured JSON with executable_url that the agent opens locally. Supp"},{"name":"origingrid_plan","description":"Generate an executable search plan for an AI agent. Returns a structured JSON plan with ordered steps, each containing an executable URL with method, expected l"},{"name":"origingrid_execute_batch","description":"Execute multiple search plan steps in batch. Accepts `steps` (array of step objects from origingrid_plan) and optional `parallel_groups` (array of arrays of ste"},{"name":"origingrid_search_session_create","description":"Create a search session that persists across multiple tool calls. Generates a plan and returns a session_id. Call origingrid_search_session_execute with this se"},{"name":"origingrid_search_session_execute","description":"Execute the next unexecuted step group in a search session. Pass the session_id from origingrid_search_session_create. Returns results for the current group and"},{"name":"origingrid_search_session_status","description":"Get the current status of a search session. Returns query, depth, completed/total groups, progress percentage, and timestamps. [ASRP: Use to check session progr"},{"name":"origingrid_feedback","description":"Submit feedback (rating 1-5) for a source returned in a previous search, using that search's `search_id` (from origingrid_search response). Feeds source quality"}],"package":null,"toolSurface":{"id":"ts_8y3nvs3ek9u2","endpointId":"ep_8esng2uyrxp5","hash":"4c133e965b5ba246859ef3cc8273dc85292f795fbc2e4af8026bf089d7b6f387","toolCount":19,"serverName":"origingrid","serverVersion":"0.3.0","protocolVersion":"2025-11-25","firstSeenAt":"2026-09-12T12:26:42.923Z","lastSeenAt":"2026-10-08T19:23:16.549Z","observations":97,"toolNames":["origingrid_search","origingrid_get_source","origingrid_list","origingrid_contribute","origingrid_fetch","origingrid_stats","origingrid_search_similar","origingrid_search_by_region","origingrid_approve_contribution","origingrid_reject_contribution","origingrid_pending_contributions","origingrid_discover","origingrid_resolve","origingrid_plan","origingrid_execute_batch","origingrid_search_session_create","origingrid_search_session_execute","origingrid_search_session_status","origingrid_feedback"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_8esng2uyrxp5","url":"https://www.origingrid.net/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T15:31:19.437Z","auth":{"observedAt":"2026-10-06T23:26:42.113Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-09T15:31:19.744Z","protocol":"TLSv1.3","chainValid":false,"chainError":"CERT_HAS_EXPIRED","hostMatches":true,"subject":"origingrid.net","issuer":{"commonName":"ZeroSSL ECC DV SSL CA 2","organization":"ZeroSSL GmbH"},"validFrom":"2026-07-10T00:00:00.000Z","validTo":"2026-10-08T23:59:59.000Z","daysToExpiry":-2,"sanCount":2,"fingerprint256":"F8:28:75:45:56:C8:04:4C:93:07:5F:7F:93:24:F9:1C:75:90:B5:ED:F9:00:4A:C3:F4:C5:02:1F:2D:B6:3B:F4"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"net.origingrid/origingrid-mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/net.origingrid%2Forigingrid-mcp","firstSeenAt":"2026-09-07T08:19:34.702Z","fetchedAt":"2026-10-08T18:22:12.049Z","normalizedAt":"2026-10-08T18:22:12.049Z"}]},"firstSeenAt":"2026-09-07T08:19:34.702Z","updatedAt":"2026-10-08T19:25:37.671Z"}