Zed是當前新流行的一種編輯器,支持MCP(模型上下文協議)
Mac下安裝Zed比較簡單,直接有安裝包,在這里:
brew install --cask zed
Mac Monterey下是可以安裝上的,親測有效。
配置
使用Ctrl+Shift+P調出AI,然后設置使用的模型
可以使用deepseek,但是沒有找到使用自建服務器的設置方法,有些遺憾。
附加學習
關于Zed里面的MCP部分,手冊:Model Context Protocol - Zed?
也就是有個Postgres數據庫的MCP Server的擴展,代碼在:https://github.com/zed-extensions/postgres-context-server
配置和使用,見后面
Zed Postgres Context Server
This extension provides a Model Context Server for Postgres, for use with the Zed AI assistant.
It adds a?/pg-schema
?slash command to the Assistant Panel.
Configuration
To use the extension, you will need to point the context server at a Postgres database by setting the?database_url
?in your Zed?settings.json
:
{"context_servers": {"postgres-context-server": {"settings": {"database_url": "postgresql://myuser:mypassword@localhost:5432/mydatabase"}}} }
Usage
/pg-schema <table-name>
: Retrieve the schema for the table with the given name./pg-schema all-tables
: Retrieve the schemas for all tables in the database.
?
設置參考這里:Context Server Extensions - Zed?
?
Model Context Protocol
Zed uses the?Model Context Protocol?to interact with?context servers:
The Model Context Protocol (MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools. Whether you're building an AI-powered IDE, enhancing a chat interface, or creating custom AI workflows,?MCP?provides a standardized way to connect LLMs with the context they need.
Check out the?Anthropic news post?and the?Zed blog post?for an introduction to?MCP.
Try it out
Want to try it for yourself?
The following context servers are available today as Zed extensions:
- Postgres Context Server
Bring your own context server
If there's an existing context server you'd like to bring to Zed, check out the?context server extension docs?for how to make it available as an extension.
If you are interested in building your own context server, check out the?Model Context Protocol docs?to get started.
Context Servers
Extensions may provide?context servers?for use in the Assistant.
Example extension
To see a working example of an extension that provides context servers, check out the?postgres-context-server?extension.
This extension can be?installed as a dev extension?if you want to try it out for yourself.
Defining context servers
A given extension may provide one or more context servers. Each context server must be registered in the?extension.toml
:
[context_servers.my-context-server]
Then, in the Rust code for your extension, implement the?context_server_command
?method on your extension:
impl zed::Extension for MyExtension { fn context_server_command( &mut self, context_server_id: &ContextServerId, project: &zed::Project, ) -> Result<zed::Command> { Ok(zed::Command { command: get_path_to_context_server_executable()?, args: get_args_for_context_server()?, env: get_env_for_context_server()?, }) } }
This method should return the command to start up a context server, along with any arguments or environment variables necessary for it to function.
If you need to download the context server from an external source—like GitHub Releases or npm—you can also do this here.
?